概述
本節推導了一個兩層的全連接層的正向傳播公式以及反向傳播公式。雖然只是用一個兩層的全連接層舉例,各層也只取了一個參數作爲推導,但我覺得閱讀下來大家還是能對神經網絡的正向傳播、反向傳播以及參數更新產生更深刻的理解。本節只是公式推導篇,歡迎閱讀另一篇反向傳播:代碼演示篇
正文
網路構架如下圖所示,接下來給大家推導反向傳播過程以及參數是如何更新的。
該網絡包括一個輸入層,一個隱含層,一個輸出層。這裏損失函數L我們使用均方差損失函數。我們可以很快得出正向傳播公式,其中σ()指Sigmoid激活函數。
隱藏層到輸出層的參數的偏導數
這裏取中的參數作爲舉例推導。
觀察正向傳播公式,參數這一列最開始與相乘,得到,與關聯,與關聯,所以這裏求和符號可以去掉。以下是公式推導:
輸入層到隱藏層的參數的偏導數
這裏取中的參數作爲舉例推導。
觀察正向傳播公式,參數最開始與關聯,與關聯,而跟相乘後與整個關聯,整個與整個關聯,整個跟整個關聯,所以在這裏求和符號不可以去掉。以下是公式推導:
這些參數是如何更新的
現在我們有了這些參數的偏導數,我們就可以通過梯度下降法更新參數了:
α就是我們常說的學習率。
爲什麼梯度下降法是有效的?
引用知乎@老董的答案