2.4bp神經網絡模型與學習算法_第1頁
已閱讀1頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2.4 BP神經網絡模型與學習算法,概述,Rumelhart,McClelland于1985年提出了BP網絡的誤差反向后傳BP(Back Propagation)學習算法BP算法基本原理利用輸出后的誤差來估計輸出層的直接前導層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層的反傳下去,就獲得了所有其他各層的誤差估計。,J. McClelland,David Rumelhart,2.4.1 BP神經網絡模型,三層BP

2、網絡,,2.4.1 BP神經網絡模型,激活函數必須處處可導一般都使用S型函數 使用S型激活函數時BP網絡輸入與輸出關系輸入輸出,,,2.4.1 BP神經網絡模型,輸出的導數,,根據S型激活函數的圖形可知,對神經網絡進行訓練,應該將net的值盡量控制在收斂比較快的范圍內,2.4.2 BP網絡的標準學習算法,學習的過程:神經網絡在外界輸入樣本的刺激下不斷改變網絡的連接權值,以使網絡的輸出不斷地接近期望的輸出。學習的本質:

3、對各連接權值的動態(tài)調整學習規(guī)則:權值調整規(guī)則,即在學習過程中網絡中各神經元的連接權變化所依據的一定的調整規(guī)則。,2.4.2 BP網絡的標準學習算法-算法思想,學習的類型:有導師學習核心思想:將輸出誤差以某種形式通過隱層向輸入層逐層反傳學習的過程:信號的正向傳播 誤差的反向傳播,將誤差分攤給各層的所有單元---各層單元的誤差信號,修正各單元權值,,,,2.4.2 BP網絡的標準學習算法-學習過程,正向傳播

4、:輸入樣本---輸入層---各隱層---輸出層判斷是否轉入反向傳播階段:若輸出層的實際輸出與期望的輸出(教師信號)不符誤差反傳誤差以某種形式在各層表示----修正各層單元的權值網絡輸出的誤差減少到可接受的程度進行到預先設定的學習次數為止,,,,,,2.4.2 BP網絡的標準學習算法,網絡結構輸入層有n個神經元,隱含層有p個神經元, 輸出層有q個神經元變量定義輸入向量;隱含層輸入向量;隱含層輸出向量;輸出層

5、輸入向量;輸出層輸出向量;期望輸出向量;,2.4.2 BP網絡的標準學習算法,輸入層與中間層的連接權值:隱含層與輸出層的連接權值:隱含層各神經元的閾值:輸出層各神經元的閾值:樣本數據個數:激活函數: 誤差函數:,,,,,,,,2.4.2 BP網絡的標準學習算法,第一步,網絡初始化 給各連接權值分別賦一個區(qū)間(-1,1)內的隨機數,設定誤差函數e,給定計算精度值 和最大學習次數M。第二步,隨機選取第 個輸入樣本及對

6、應期望輸出,2.4.2 BP網絡的標準學習算法,第三步,計算隱含層各神經元的輸入和輸出,2.4.2 BP網絡的標準學習算法,第四步,利用網絡期望輸出和實際輸出,計算誤差函數對輸出層的各神經元的偏導數 。,2.4.2 BP網絡的標準學習算法,第五步,利用隱含層到輸出層的連接權值、輸出層的 和隱含層的輸出計算誤差函數對隱含層各神經元的偏導數 。,2.4.2 BP網絡的標準學習算法,2.4.2 BP網絡的標準學習算

7、法,第六步,利用輸出層各神經元的 和隱含層各神經元的輸出來修正連接權值 。,2.4.2 BP網絡的標準學習算法,第七步,利用隱含層各神經元的 和輸入層各神經元的輸入修正連接權。,2.4.2 BP網絡的標準學習算法,第八步,計算全局誤差第九步,判斷網絡誤差是否滿足要求。當誤差達到預設精度或學習次數大于設定的最大次數,則結束算法。否則,選取下一個學習樣本及對應的期望輸出,返回到第三步,進入下一輪學習。,2.4

8、.2 BP網絡的標準學習算法,BP算法直觀解釋情況一直觀表達 當誤差對權值的偏導數大于零時,權值調整量為負,實際輸出大于期望輸出,權值向減少方向調整,使得實際輸出與期望輸出的差減少。,2.4.2 BP網絡的標準學習算法,BP算法直解釋情況二直觀表達當誤差對權值的偏導數小于零時,權值調整量為正,實際輸出少于期望輸出,權值向增大方向調整,使得實際輸出與期望輸出的差減少。,2.4.3 BP神經網絡學習算法

9、的MATLAB實現,MATLAB中BP神經網絡的重要函數和基本功能,2.4.3 BP神經網絡學習算法的MATLAB實現,MATLAB中BP神經網絡的重要函數和基本功能newff()功能 建立一個前向BP網絡格式 net = newff(PR,[S1 S2...SN1],{TF1 TF2...TFN1},BTF,BLF,PF)說明 net為創(chuàng)建的新BP神經網絡;PR為網絡輸入取向量取值范圍的矩陣;[S1 S2…SNl]表示

10、網絡隱含層和輸出層神經元的個數;{TFl TF2…TFN1}表示網絡隱含層和輸出層的傳輸函數,默認為‘tansig’;BTF表示網絡的訓練函數,默認為‘trainlm’;BLF表示網絡的權值學習函數,默認為‘learngdm’;PF表示性能數,默認為‘mse’。,2.4.3 BP神經網絡學習算法的MATLAB實現,MATLAB中BP神經網絡的重要函數和基本功能tansig()功能 正切sigmoid激活函數格式 a = ta

11、nsig(n)說明 雙曲正切Sigmoid函數把神經元的輸入范圍從(-∞,+∞)映射到(-1,1)。它是可導函數,適用于BP訓練的神經元。logsig()功能 對數Sigmoid激活函數格式 a = logsig(N)說明對數Sigmoid函數把神經元的輸入范圍從(-∞,+∞)映射到(0,1)。它是可導函數,適用于BP訓練的神經元。,2.4.3 BP神經網絡學習算法的MATLAB實現,例2-3,下表為某藥品的銷售情況,

12、現構建一個如下的三層BP神經網絡對藥品的銷售進行預測:輸入層有三個結點,隱含層結點數為5,隱含層的激活函數為tansig;輸出層結點數為1個,輸出層的激活函數為logsig,并利用此網絡對藥品的銷售量進行預測,預測方法采用滾動預測方式,即用前三個月的銷售量來預測第四個月的銷售量,如用1、2、3月的銷售量為輸入預測第4個月的銷售量,用2、3、4月的銷售量為輸入預測第5個月的銷售量.如此反復直至滿足預測精度要求為止。,2.4.3 BP神經

13、網絡學習算法的MATLAB實現,%以每三個月的銷售量經歸一化處理后作為輸入P=[0.51520.81731.0000 ; 0.81731.00000.7308; 1.00000.73080.1390; 0.73080.13900.1087; 0.13900.10870.3520; 0.10870.35200.0000;]';%以第四個月的銷售量歸一化處

14、理后作為目標向量T=[0.7308 0.1390 0.1087 0.3520 0.0000 0.3761];%創(chuàng)建一個BP神經網絡,每一個輸入向量的取值范圍為[0 ,1],隱含層有5個神經%元,輸出層有一個神經元,隱含層的激活函數為tansig,輸出層的激活函數為%logsig,訓練函數為梯度下降函數,即2.3.2節(jié)中所描述的標準學習算法net=newff([0 1;0 1;0 1],[5,1],{'tansig'

15、,'logsig'},'traingd');net.trainParam.epochs=15000;net.trainParam.goal=0.01;%設置學習速率為0.1LP.lr=0.1;net=train(net,P,T);,2.4.3 BP神經網絡學習算法的MATLAB實現,BP網絡應用于藥品預測對比圖由對比圖可以看出預測效果與實際存在一定誤差,此誤差可以通過增加

16、運行步數和提高預設誤差精度業(yè)進一步縮小,BP神經網絡的特點,非線性映射能力能學習和存貯大量輸入-輸出模式映射關系,而無需事先了解描述這種映射關系的數學方程。只要能提供足夠多的樣本模式對供網絡進行學習訓練,它便能完成由n維輸入空間到m維輸出空間的非線性映射。泛化能力當向網絡輸入訓練時未曾見過的非樣本數據時,網絡也能完成由輸入空間向輸出空間的正確映射。這種能力稱為泛化能力。容錯能力輸入樣本中帶有較大的誤差甚至個別錯誤對網絡的輸入輸

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論