1、BP神經網絡背景簡介:
BP(Error Back Propagation Network)神經網絡是目前應用最爲廣泛和成功的神經網絡之一,它於1986年由Rumelhant和McClelland提出。是一種多層網絡“逆推”學習算 法。
2、BP神經網絡基本思想:
BP神經網絡基本思想由兩部分組成:輸入樣本前向傳播並輸出結果、誤差的反向傳播更新網絡權值。
樣本數據前向傳播時,輸入樣本由輸入層傳入,經隱含層處理後傳到輸出層,若輸出層的實際輸出與期望輸出不符,則進入誤差反向傳播更新網絡權值階段。
誤差的反向傳播更新網絡權值是將輸出誤差以某種形式通過隱含層向輸入層逐層反轉,並將誤差分配給各層神經元各個神經單元。
這種信號正向傳播與誤差反向傳播的各層權值調整過程循環進行,權值也不斷調整,也就是網絡的學習過程。此過程一直進行到網絡輸出的誤差減少到可以接受的程度,或 進行到預先設定的學習次數爲止。
3、BP網絡結構與數據處理過程
圖2-1
如圖2-1,爲三層神經網絡,Layer L1爲輸入層,Layer L2爲隱含層,Layer L3爲輸出層。其中隱含層可以是一層或多層,輸出層也可以有多個神經元。
下面的推導過程中,我們用X(i)表示神經網絡輸入;Y(i)表示神經網絡實際輸出;d(i)表示神經網絡期望輸出;W(ijk)表示神經網絡第i層第j個神經元到第i+1層第k個神經元的連接權值;O(ij)表示第i層第j個神經元輸出;Θ(ij)表示第i層第j個神經元閾值;net(ij)表示第i層第j個神經元總輸入;Ni表示第i層神經元節點數。
(1):樣本前向傳輸過程。
(2):誤差反向傳播更新網絡權值
如果神經元 j 在輸出層,則O(ij)就是網絡的實際計算輸出,記爲Y(j),通過Y(j)與所期望值的輸出d(j)之間的誤差反向傳播來修改各權值。
誤差函數定義爲:
網絡權值沿E函數梯度下降的方向修正:
其中n是步長因子。
經數學推導BP算法的權值調整公式爲:
其中: