資源描述:
《BP人工神經(jīng)網(wǎng)絡(luò)及matlab實現(xiàn)課件.ppt》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、BP人工神經(jīng)網(wǎng)絡(luò)本章的基本內(nèi)容BP網(wǎng)絡(luò)結(jié)構(gòu)與模型BP網(wǎng)絡(luò)的學(xué)習(xí)算法BP神經(jīng)網(wǎng)絡(luò)的重要函數(shù)和基本功能一個簡單的例子BP網(wǎng)絡(luò)的幾個問題改進(jìn)的BP網(wǎng)絡(luò)的學(xué)習(xí)算法BP網(wǎng)絡(luò)的應(yīng)用示例Rumelhart,McClelland于1985年提出了BP網(wǎng)絡(luò)的誤差反向后傳BP(BackPropagation)學(xué)習(xí)算法BP算法基本原理利用輸出后的誤差來估計輸出層的直接前導(dǎo)層的誤差,再用這個誤差估計更前一層的誤差,如此一層一層的反傳下去,就獲得了所有其他各層的誤差估計。J.McClellandDavidRumelhart概述BP網(wǎng)絡(luò)是一種前向映射網(wǎng)絡(luò)。網(wǎng)絡(luò)的結(jié)構(gòu)見下一頁的圖形。其中:u是網(wǎng)絡(luò)的輸入向量,y是網(wǎng)絡(luò)的輸出
2、向量。神經(jīng)元用節(jié)點表示,網(wǎng)絡(luò)由輸入層、隱層和輸出層節(jié)點組成,隱層可一層,也可多層(圖中是單隱層)。前層節(jié)點至后層節(jié)點通過權(quán)聯(lián)接。由于這種網(wǎng)絡(luò)常常用BP學(xué)習(xí)算法后的網(wǎng)絡(luò)權(quán)值,所以常稱BP人工神經(jīng)網(wǎng)絡(luò)。5-1網(wǎng)絡(luò)結(jié)構(gòu)和模型5-1網(wǎng)絡(luò)結(jié)構(gòu)和模型5-1網(wǎng)絡(luò)結(jié)構(gòu)與模型5-1網(wǎng)絡(luò)結(jié)構(gòu)和模型BP網(wǎng)絡(luò)的神經(jīng)元模型是改進(jìn)了感知器神經(jīng)元模型得到的。輸入層:隱層:輸出層:fxex()=+-11fxeexx()=-+--11fxeexx()=-+--11fxex()=+-115-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法多層前饋網(wǎng)絡(luò)的反向傳播(BP)學(xué)習(xí)算法,簡稱BP學(xué)習(xí)算法,這是一種有導(dǎo)師的學(xué)習(xí)算法,是梯度下降法在多層前饋網(wǎng)中的應(yīng)用。B
3、P學(xué)習(xí)算法可以看成是線性自適應(yīng)神經(jīng)元學(xué)習(xí)算法的進(jìn)一步推廣。BP學(xué)習(xí)算法=前向計算過程+誤差反向傳播過程前向計算過程:也是網(wǎng)絡(luò)應(yīng)用時的實現(xiàn)過程。誤差反向傳播過程:是BP網(wǎng)絡(luò)權(quán)值的學(xué)習(xí)和訓(xùn)練過程。5-2-1BP學(xué)習(xí)算法概述學(xué)習(xí)的類型:有導(dǎo)師學(xué)習(xí)核心思想:將輸出誤差以某種形式通過隱層向輸入層逐層反傳學(xué)習(xí)的過程:信號的正向傳播誤差的反向傳播將誤差分?jǐn)偨o各層的所有單元---各層單元的誤差信號修正各單元權(quán)值5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-1BP學(xué)習(xí)算法概述正向傳播:輸入樣本---輸入層---各隱層---輸出層判斷是否轉(zhuǎn)入反向傳播階段:若輸出層的實際輸出與期望的輸出(教師信號)不符誤差反傳誤差以某種形式在各
4、層表示----修正各層單元的權(quán)值網(wǎng)絡(luò)輸出的誤差減少到可接受的程度或者進(jìn)行到預(yù)先設(shè)定的學(xué)習(xí)次數(shù)為止5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-1BP學(xué)習(xí)算法概述網(wǎng)絡(luò)結(jié)構(gòu)輸入層有n個神經(jīng)元,隱含層有p個神經(jīng)元,輸出層有q個神經(jīng)元。變量定義輸入向量;隱含層輸入向量;隱含層輸出向量;輸出層輸入向量;輸出層輸出向量;期望輸出向量;5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述輸入層與中間層的連接權(quán)值:隱含層與輸出層的連接權(quán)值:隱含層各神經(jīng)元的閾值:輸出層各神經(jīng)元的閾值:樣本數(shù)據(jù)個數(shù):激活函數(shù):誤差函數(shù):5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第一步,網(wǎng)絡(luò)初始化給各連接權(quán)值分別賦一個區(qū)間(-1,1)
5、內(nèi)的隨機(jī)數(shù),設(shè)定誤差函數(shù)e,給定計算精度值和最大學(xué)習(xí)次數(shù)M。第二步,隨機(jī)選取第個輸入樣本及對應(yīng)期望輸出5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第三步,計算隱含層各神經(jīng)元的輸入和輸出5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第四步,利用網(wǎng)絡(luò)期望輸出和實際輸出,計算誤差函數(shù)對輸出層的各神經(jīng)元的偏導(dǎo)數(shù)。5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第五步,利用隱含層到輸出層的連接權(quán)值、輸出層的和隱含層的輸出計算誤差函數(shù)對隱含層各神經(jīng)元的偏導(dǎo)數(shù)。5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第六步,利用輸出層各神經(jīng)元
6、的和隱含層各神經(jīng)元的輸出來修正連接權(quán)值。第七步,利用隱含層各神經(jīng)元的和輸入層各神經(jīng)元的輸入修正連接權(quán)。5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述第八步,計算全局誤差第九步,判斷網(wǎng)絡(luò)誤差是否滿足要求。當(dāng)誤差達(dá)到預(yù)設(shè)精度或?qū)W習(xí)次數(shù)大于設(shè)定的最大次數(shù),則結(jié)束算法。否則,選取下一個學(xué)習(xí)樣本及對應(yīng)的期望輸出,返回到第三步,進(jìn)入下一輪學(xué)習(xí)。5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-2BP學(xué)習(xí)算法的描述情況一的直觀表達(dá)當(dāng)誤差對權(quán)值的偏導(dǎo)數(shù)大于零時,權(quán)值調(diào)整量為負(fù),實際輸出大于期望輸出,權(quán)值向減少方向調(diào)整,使得實際輸出與期望輸出的差減少。whoe>0,此時Δwho<05-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-3BP學(xué)習(xí)
7、算法的直觀解釋情況二的直觀表達(dá)當(dāng)誤差對權(quán)值的偏導(dǎo)數(shù)小于零時,權(quán)值調(diào)整量為正,實際輸出少于期望輸出,權(quán)值向增大方向調(diào)整,使得實際輸出與期望輸出的差減少。e<0,此時Δwho>0who5-2BP網(wǎng)絡(luò)的學(xué)習(xí)算法5-2-3BP學(xué)習(xí)算法的直觀解釋BP算法手控演示函數(shù)名功能newff()生成一個前饋BP網(wǎng)絡(luò)tansig()雙曲正切S型(Tan-Sigmoid)傳輸函數(shù)logsig()對數(shù)S型(Log-Sigm