BP神經網絡(算法整體思路及原理+手寫公式推導)


1. 簡介

BP(back propagation)神經網絡是1986年由Rumelhart和McClelland為首的科學家提出的概念,是一種按照誤差逆向傳播算法訓練的多層前饋神經網絡,是應用最廣泛的神經網絡。
BP網絡是在輸入層與輸出層之間增加若干層(一層或多層)神經元,這些神經元稱為隱單元,它們與外界沒有直接的聯系,但其狀態的改變,則能影響輸入與輸出之間的關系,每一層可以有若干個節點。

2. 計算過程

首先,我們先來了解一下神經網絡圖示基本含義:
在這里插入圖片描述
上圖為神經網絡的一部分,x1,x2,x3為外部輸入,w1,w2,w3為這些輸入的權重(表示這些輸入的重要程度)。后面的大⚪相當與一個神經元,其中∑ = x1w1 + x2w2 + x3w2 - β ( β為偏置) ,y = f(∑) ,f為激活函數,最常見激活函數是Sigmoid函數,其圖像及表達式如下圖所示(本文后面所有激活函數都為Sigmoid函數)
在這里插入圖片描述

了解了神經元圖示的基本含義,現在來說一下BP神經網絡的整體流程如下:

在這里插入圖片描述
我們以下圖為例講述BP神經網絡實現流程:
首先神經網絡一共有三部分組成:輸入層、隱藏層、輸出層(其中隱藏層可以有多層,本圖中只有一層)。圖中輸入層有兩個神經元、隱藏層有三個神經元、輸出層有一個神經元。我們通過計算可以得出ŷ的值(后文會有詳細計算過程),這就是我們根據所給數據得到的輸出結果,我們需要和輸出的預期結果進行比較,如果發現兩個結果十分符合,那么表示我們所設置的期望和偏置是較優的,不需要進行修改(注:圖中的期望w、v、β、λ都是我們自己事先設置的數值);如果發現兩個結果相差較大,這表面我們事先設置的參數不合適(w、v、β、λ),需要進行修改。這時候我們需要從后往前的算出這些參數的的變化量,然后更新參數的數值,重新計算輸出,直到得到的輸入結果和預期相符停止。

在這里插入圖片描述

3. 權重偏置更新公式推導

同樣的,我們以這張圖為例來推導權重(w、v)偏置(β、λ)更新公式。
在這里插入圖片描述

在這里插入圖片描述
在這里插入圖片描述

在這里插入圖片描述
下圖為三部分整體圖片(方便閱讀)
在這里插入圖片描述

4. BP神經網絡優劣勢

BP神經網絡無論在網絡理論還是在性能方面已比較成熟。其突出優點就是具有很強的非線性映射能力和柔性的網絡結構。網絡的中間層數、各層的神經元個數可根據具體情況任意設定,並且隨着結構的差異其性能也有所不同。但是BP神經網絡也存在以下的一些主要缺陷。
①學習速度慢,即使是一個簡單的問題,一般也需要幾百次甚至上千次的學習才能收斂。
②容易陷入局部極小值。
③網絡層數、神經元個數的選擇沒有相應的理論指導。
④網絡推廣能力有限。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM