作為剛開始接觸機器學習的小白,想把每一次學習的收穫都記錄在部落格裡,成為自己的筆記隨時複習,以及為日後學習這領域的朋友當成參考的資料。文中若有錯誤請各位大牛幫忙訂正。
bp(back propagation)從字面上翻譯就是反向傳播,傳播誤差,期望輸出值與真實輸出值的差異就是誤差,因此bp神經網路就是一種演算法根據誤差反向傳播訓練的多層前饋神經網路。
在此有個疑問,什麼是多層前饋神經網路?
神經網路粗略分有兩種型別:前饋網路以及反饋網路
前饋網路: o=f(w*x+b)
}o=f(w*x+b)
每一層的輸出只與前一層輸入乘上權重加上偏置項有關
反饋網路: ot=f(w*x
+ot-1*v+b)}
ot=f(w*x + ot-1*v+ b)
每一層的輸出與前一次狀態輸出有關
我假設 x = [ 0.5 , 0.4 , 0.3 ] 為 一組輸入,且期望輸出值為 y = 0.8
bp神經網路前向傳播與感知機模型計算一樣,例如隱含層 h
1h_1
h1 輸出是 f(w
∗x+b
)f(w*x+b)
f(w∗x+
b),其中f()
f( )
f()是啟用函式11+
e−x\frac}
1+e−x1
,因此 w∗x
+bw*x+b
w∗x+
b = 0.5
∗0.4
+0.4
∗0.5
+0.3
∗0.2+1
∗0.2
0.5*0.4 + 0.4*0.5 + 0.3*0.2 + 1*0.2
0.5∗0.
4+0.
4∗0.
5+0.
3∗0.
2+1∗
0.2 = 0.66
0.66
0.66
,代入11+
e−(w
∗x+b
)\frac}
1+e−(w
∗x+b
)1 = 11+
e−(0.66
)\frac}
1+e−(0
.66)
1= 0.659
機器學習 BP神經網路模型
bp back propagation 網路是1986年由rumelhart和mccelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。bp網路能學習和存貯大量的輸入 輸出模式對映關係,而無需事前揭示描述這種對映關係的數學方程。它的學習規...
機器學習 BP神經網路模型
bp back propagation 網路是1986年由rumelhart和mccelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。bp網路能學習和存貯大量的輸入 輸出模式對映關係,而無需事前揭示描述這種對映關係的數學方程。它的學習規...
bp神經網路學習
import numpy as np 使用邏輯回歸進行分類 defnonlin x,deriv false if deriv true return x 1 x return 1 1 np.exp x 待分類的資料 x np.array 0,0,1 0,1,1 1,0,1 1,1,1 print x...