BP神經網路

2021-08-09 21:19:38 字數 1880 閱讀 8754

一,什麼是bp

"bp(back propagation)網路是2023年由rumelhart和mccelland為首的科學家小組提出,是一種按誤差逆傳播演算法訓練的多層前饋網路,是目前應用最廣泛的神經網路模型之一。bp網路能學習和存貯大量的輸入-輸出模式對映關係,而無需事前揭示描述這種對映關係的數學方程。它的學習規則是使用最速下降法,通過反向傳播來不斷調整網路的權值和閾值,使網路的誤差平方和最小。bp神經網路模型拓撲結構包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。"

我們現在來分析下這些話:

bp是後向傳播的英文縮寫,那麼傳播物件是什麼?傳播的目的是什麼?傳播的方式是後向,可這又是什麼意思呢。

傳播的物件是誤差,傳播的目的是得到所有層的估計誤差,後向是說由後層誤差推導前層誤差:

即bp的思想可以總結為

利用輸出後的誤差來估計輸出層的直接前導層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層的反傳下去,就獲得了所有其他各層的誤差估計。 

我們來看乙個最簡單的三層bp:

bp利用一種稱為啟用函式來描述層與層輸出之間的關係,從而模擬各層神經元之間的互動反應。

啟用函式必須滿足處處可導的條件。那麼比較常用的是一種稱為s型函式的啟用函式:

那麼上面的函式為什麼稱為是s型函式呢:

我們來看它的形態和它導數的形態:

p.s. s型函式的導數:

神經網路的學習目的:

希望能夠學習到乙個模型,能夠對輸入輸出乙個我們期望的輸出。

學習的方式:

在外界輸入樣本的刺激下不斷改變網路的連線權值

學習的本質:

對各連線權值的動態調整

學習的核心:

權值調整規則,即在學習過程中網路中各神經元的連線權變化所依據的一定的調整規則。

二,有監督的bp模型訓練過程

1. 思想

有監督的bp模型訓練表示我們有乙個訓練集,它包括了: input x 和它被期望擁有的輸出 output y

所以對於當前的乙個bp模型,我們能夠獲得它針對於訓練集的誤差

所以bp的核心思想就是:將輸出誤差以某種形式通過隱層向輸入層逐層反傳,這裡的某種形式其實就是:

也就是一種 "訊號的正向傳播 ----> 誤差的反向傳播"的過程:

2.具體

這裡解釋下根據誤差對權值的偏導數來修訂權值:

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

BP神經網路

bp是back propagation bp神經網路主要的演算法在於誤差反向傳播error backpropagation 有三層 輸入層 input 隱含層 hidden 輸出層 output 輸入層 n個神經元 隱含層 p個神經元 輸出層 q個神經元 輸入向量 x x1,x2,x n 隱含層輸入...