BP神經網路詳解

2022-07-01 23:45:13 字數 1474 閱讀 4059

一、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 此時系統...