1. 程式人生 > >機器學習之神經網路bp演算法推導

機器學習之神經網路bp演算法推導

這是一篇學習UFLDL反向傳導演算法的筆記,按自己的思路捋了一遍,有不對的地方請大家指點。

首先說明一下神經網路的符號:
1. nl 表示神經網路的層數。
2. sl 表示第 l 層神經元個數,不包含偏置單元。
3. z(l)i 表示第 l 層第 i 個神經元的輸入;a(l)i 表示第 l 層第 i 個神經元的輸出。
4. W(l)ij 表示第 l 層第 j 個神經元連線到第 l+1 層第 i 個神經元的權重,因此權值矩陣 W 的維數為 sl+1 x sl
圖中給出第2層第1個神經元的傳導計算方法
第二層各神經元的計算方法如下:

a(2)1a(2)2a(2)3a(2)4=f(W(1)11x1+W(1)12x2+W(1
)
13
x3+b(1)1)
=f(W(1)21x1+W(1)22x2+W(1)23x3+b(1)2)=f(W(1)31x1+W(1)32x2+W(1)33x3+b(1)3)=f(W(1)41x1+W(1)42x2+W(1)43x3+b(1)4)

我們可以將其向量化表示:
z(2)a(2)=W(1)x+b(1)=f(z(2))
這裡的矩陣W的具體形式為:
W4×3=W(1)11W(1)21W(1)