2015-12-14 81 views
2

如果我們有一個近似函數y = f(W,X),其中x是輸入,y是輸出,並且w是重。根據梯度下降法則,我們應該根據w = w - df/dw更新權重。但是,我們是否可以根據w = w - w * df/dw更新權重?有沒有人見過這個?我想這樣做的原因是因爲在我的算法中這樣做更容易。更新方程梯度下降

+0

簡而言之 - 不,這不是一個有效的漸變,你不能只是構成方程式並插入它們:-) – lejlot

回答

1

回想一下,梯度下降是基於f的泰勒展開(W,X)中的瓦特的緊密附近,且有其目的---在上下文中---反覆修改所述重量在小步驟。根據函數f(w,x)的本地知識,反梯度方向僅僅是一個搜索方向。

一般迭代重量的包括步長,得到其中步長nu_j的值是通過使用線路搜索找到的表達

w_(i+1) = w_(i) - nu_j df/dw, 

,參見例如https://en.wikipedia.org/wiki/Line_search

因此,基於上面的討論,回答你的問題:沒有,這是不是一個好主意根據

w_(i+1) = w_(i) - w_(i) df/dw. 

爲什麼要更新?如果w_(i)很大(在上下文中),我們將根據非常本地的信息採取一個巨大的步驟,並且我們將使用與精細梯度下降方法非常不同的東西。另外,正如lejlot在下面的評論中指出的那樣,w(i)的負值意味着你在梯度的(正)方向上進行遍歷,即在函數增長最快的方向上,這在當地是最糟糕的可能搜索方向(用於最小化問題)。

+1

還有一個(甚至更大)的問題 - 如果w_(i)'是負數?你會**反對**梯度 – lejlot

+0

事實上,對於那個lejlot,+1我會編輯包含在答案中。 – dfri

+0

非常感謝您的回答。我現在知道了。 – Nan