為什麼說BP神經網路就是人工神經網路的一種?

shenmanli發表於2017-08-30
BP( Back Propagation)網路是由Rinehart等於1986年提出的,是一種按誤差逆傳播演算法訓練的,多層前饋網路,是目前應用最廣泛的神經網路模型之一。


–BP網路能學習和儲存大量的輸入、輸出模式對映關係,而無須事前揭示描述這種對映關係的數學方程。


–其學習規則是使用梯度下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。


BP神經網路模型拓撲結構包括:


輸入層(Input),這一區域相當於外界的刺激,是刺激的來源並且將刺激傳遞給神經元。


隱藏層( Hide layer),這一區域表示神經元相互之間傳遞刺激,相當於人腦裡面。


輸出層(Output layer),這一區域表示神經元經過多層次相互傳遞後,對外界的反應。





BP反饋機制


簡單的描述就是,輸入層將刺激傳遞給隱藏層,隱藏層通過神經元之間,聯絡的權重和啟用函式,將刺激傳到輸出層,輸出層整理隱藏層處理後的刺激,產生最終結果。


若有正確的結果,那麼將正確的結果和產生的結果進行比較,得到誤差,再逆推對神經網中的連結權重進行反饋修正,從而來完成學習的過程。


這就是BP (Back Propagation)神經網的反饋機制,也是名字的來源,即運用向後反饋的學習機制,來修正神經網中的權重,最終達到輸出正確結果的目的。


雙向訊號傳播


BP演算法由資料流的前向(正向)傳播和誤差訊號的反向傳播兩個過程構成。


–正向傳播時,傳播方向為輸入層-隱層-輸出層,每層神經元的狀態隻影響下一層神經元。


–若在輸出層得不到期望的輸出,則轉向誤差訊號的反向傳播流程。


這兩個過程的交替進行


–在權向量空間,執行誤差函式梯度下降策略,動態迭代搜尋一組權向量。


–使網路誤差函式達到最小值,從而完成資訊提取,和記憶過程。






正向傳播


設BP神經網路的輸入層有n個節點,隱層有q個節點,輸出層有m個節點,輸入層與隱層之間有權值為vki,隱層與輸出層之間的權值為wjk,三層神經網路的拓撲結構,如下圖所示。





隱層傳遞函式為ƒ1(•),輸出層的傳遞函式為ƒ2(•),則隱層節點的輸出為(將閾值寫入求和項中,k=1,2,…q)





•輸出層節點的輸出為(j=l,2,…,m):





•至此BP網路完成n維空間向量對m維空間的近似對映






反向傳播


反向傳播,目的是傳遞誤差訊號


–所以要進行定義誤差函式、輸出層權值變化、以及隱層權值變化等操作。


–以上作用可分別以資料公式表達出來:





–式中x1,x2,…,xq為輸入訊號,wj1,wj2,…,wji,…,wjn為神經元k之權值,uk為線性組合結果,θk為閾值,f (•)為啟用函式,yk為神經元k的輸出。





–若把輸入的維數增加一維,則可把閾值θk包括進去。




相關文章