一、bp神經網路的概念
誤差逆傳播簡稱bp演算法,bp神經網路是一種多層的前饋神經網路,其主要特點是:訊號前向傳播,誤差反向傳播。如下圖為只含一層的隱含層的卷積神經網路。
其大致工作流程為:
第一階段是訊號的前向傳播,從輸入層經過隱含層,最後達到輸出層;第二階段是誤差(各邊權重w和閾值)的反向傳播,從輸出層到隱含層,最後到輸入層,依次調節各層相連邊的權重的閾值。
二、bp神經網路流程
神經網路的基本組成單元為神經元。具體模型如下圖:
其中常見啟用函式有:sigmoid函式、relu函式、tanh函式等。
神經元的輸出為:
其中w代表各邊的權值,初始值一般為隨機給出,後續根據反饋慢慢調節。
bp神經網路模型中,為了便於討論,假設只有一層隱含層,即有輸入層、隱含層、輸出層三層結構。設輸入層到隱含層的權重為vih,隱含層第h個神經元的閾值為yh。隱含層到輸出層的權值為w
hj,輸出層第j個神經元的閾值用 θj表示。在如下圖中,有d個輸入神經元,q個隱含層神經元,對應q個隱含神經元閾值,l個輸出神經元,l個對應的輸出神經元閾值。
其中βj中的b
h= f (α
h − γh
) 。即也為隱含層的輸出結果。同理得出輸出層的輸出結果為y
j = f(b
j - θj
) ,其中f函式為相應的啟用函式。
計算出輸出結果和實際結果的方差得到誤差率
然後進行反向傳播減小誤差。減小誤差的方法為梯度下降法。此處引入另一概念學習率。
學習率是為了控制演算法每一輪迭代的更新步長。若太大則容易振盪,若太小則訓練速度過慢。
根據周志華西瓜書p103書上的推導,得出各層權重和閾值的更新公式。
最後總體流程總結如下:
輸入:訓練集d
學習率初始值
過程:1、在(0,1)之間隨機初始化網路中所有的權重和閾值
2、repeat
3、 for all (xk,yk) 屬於 d do
4、 根據當前引數計算輸出層最終輸出y;
5、 根據p103中公式(5.10)計算輸出層神經元的梯度項;
6、 根據p104中公式(5.15)計算隱含層神經元的梯度項;
7、 根據p103中公式(5.10)到(5.14)更新各權值w和閾值。
8、 end for
9、until 達到停止條件
上述停止條件一般為**值和實際值之間的誤差。
BP神經網路詳解
一,什麼是bp bp back propagation 網路是1986年由rumelhart和mccelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。bp網路能學習和存貯大量的輸入 輸出模式對映關係,而無需事前揭示描述這種對映關係的數學...
BP神經網路
基本bp神經網路演算法包括 訊號的前向傳播 誤差的反向傳播 也即計算實際輸出時按照輸入到輸出的方向進行,權值閾值調整則相反。bp是一種多層前饋神經網路,由輸入層 隱含層和輸出層組成。層與層之間有兩種訊號在流動 一種是從輸入流向輸出的工作訊號,是輸入和權值的函式 另一種是輸入流向輸出的訊號,即誤差。隱...
BP神經網路
x 為輸入向量,y為隱藏層的神經元,z 為輸出層,d為目標真實值,本文預設 z 不經過sigmod處理。x y的權重為 w,y z的權重為 v yj ix iwij 1 oyi f y j 2 其中激勵函式f x 1 1 e x f x f x 1 f x 3 z k j f yj vjk 此時系統...