先來回顧一下梯度下降法的引數更新公式:
(其中,α是學習速率,
是梯度)
這個公式是怎麼來的呢?下面進行推導:
首先,如果乙個函式 n 階可導,那麼我們可以用多項式仿造乙個相似的函式,這就是泰勒展開式。其在a點處的表示式如下:
可以看出,隨著式子的展開,這個展開式越來越接近於原函式。
如果用一階泰勒展開式,得到的函式近似表示式就是:
。想像梯度下降就是站在山坡上往下走,
是原點,
是往下走一步後所處的點。
我們知道梯度下降每走一步都是朝著最快下山的方向,因此應該最小化
。我們使用乙個向量來表示:,
也是乙個向量,那麼上式可寫成:
。既然我們要使
最小,那麼只有當
等於-1,也就是
和這兩個向量反方向時,
才會最小。當和
反方向時,我們可以用
向量來表示
:。(其中
表示長度大小)
因為:,代入可得:
。這樣就可以得到引數更新公式:
。(其中
是步長,
是函式在
時的梯度)
因為我們使用的是一階泰勒展開式,因此
要非常小,式子才成立。也就是說學習速率要非常小才行。所以如果你要讓你的損失函式越來越小的話,梯度下降的學習速率就要非常小。如果學習速率沒有設好,有可能更新引數的時候,函式近似表示式是不成立的,這樣就會導致損失函式沒有越變越小。
梯度下降法推導總結
在傳統人工神經網路ann的訓練過程中,每次迭代的目的就是不斷地調整權值w1,w2,w3,wn,使訓練樣本經過神經網路的實際輸出值與目標輸出盡可能地接近。實際輸出和目標輸出之間的誤差度量通常採用如下平方誤差準則 注 word的向量表示式佔多了乙個空格的空間,如對排版不滿,請多多包涵 其中,d是訓練樣本...
梯度下降演算法 梯度下降演算法公式推導
場景假設 梯度下降法的基本思想可以模擬為乙個下山的過程。假設這樣乙個場景 乙個人被困在山上,需要從山上下來 找到山的最低點 但此時山上的濃霧很大,導致可視度很低 因此,下山的路徑就無法確定,必須利用自己周圍的資訊一步一步地找到下山的路。這個時候,便可利用梯度下降演算法來幫助自己下山。怎麼做呢,首先以...
梯度下降演算法公式推導
梯度下降法的基本思想可以模擬為乙個下山的過程。假設這樣乙個場景 乙個人被困在山上,需要從山上下來 找到山的最低點 但此時山上的濃霧很大,導致可視度很低 因此,下山的路徑就無法確定,必須利用自己周圍的資訊一步一步地找到下山的路。這個時候,便可利用梯度下降演算法來幫助自己下山。怎麼做呢,首先以他當前的所...