BP神經網路的基本理解

2021-07-25 14:42:29 字數 906 閱讀 1764

誤差反向傳播(error back propagation, bp)演算法

1、bp演算法的基本思想是,學習過程由訊號的正向傳播與誤差的反向傳播兩個過程組成。

1)正向傳播:輸入樣本->輸入層->各隱層(處理)->輸出層

注1:若輸出層實際輸出與期望輸出(教師訊號)不符,則轉入2)(誤差反向傳播過程)

2)誤差反向傳播:輸出誤差(某種形式)->隱層(逐層)->輸入層

其主要目的是通過將輸出誤差反傳,將誤差分攤給各層所有單元,從而獲得各層單元的誤差訊號,進而修正各單元的權值(其過程,是乙個權值調整的過程)。

注2:權值調整的過程,也就是網路的學習訓練過程(學習也就是這麼的由來,權值調整)。

2、bp演算法實現步驟(軟體):

1)初始化

2)輸入訓練樣本對,計算各層輸出

3)計算網路輸出誤差

4)計算各層誤差訊號

5)調整各層權值

6)檢查網路總誤差是否達到精度要求

滿足,則訓練結束;不滿足,則返回步驟2)

3、多層感知器(基於bp演算法)的主要能力:

1)非線性對映:足夠多樣本->學習訓練

能學習和儲存大量輸入-輸出模式對映關係。只要能提供足夠多的樣本模式對供bp網路進行學習訓練,它便能完成由n維輸入空間到m維輸出空間的非線性對映。

2)泛化:輸入新樣本(訓練時未有)->完成正確的輸入、輸出對映

3)容錯:個別樣本誤差不能左右對權矩陣的調整

4、標準bp演算法的缺陷:

1)易形成區域性極小(屬貪婪演算法,區域性最優)而得不到全域性最優;

2)訓練次數多使得學習效率低下,收斂速度慢(需做大量運算);

3)隱節點的選取缺乏理論支援;

4)訓練時學習新樣本有遺忘舊樣本趨勢。

注3:改進演算法—增加動量項、自適應調整學習速率(這個似乎不錯)及引入陡度因子

BP神經網路快速理解

理解bp神經網路,這裡不討論那些複雜的生物學和神經科學。其實很簡單,從下面三個例子裡面可以了解。比如你是乙個備考高三數學的學生。你本身就會2 2 4,你把這個訓練一萬遍有用麼?沒用。你要做的就是找到自己不行的地方,找到自己的漏洞,有針對性的去突破和訓練。這就是用誤差來學習。人類的過程也是一樣的。學習...

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