最新神經(jīng)網(wǎng)絡——BP算法精品課件ppt教學文案_第1頁
最新神經(jīng)網(wǎng)絡——BP算法精品課件ppt教學文案_第2頁
最新神經(jīng)網(wǎng)絡——BP算法精品課件ppt教學文案_第3頁
最新神經(jīng)網(wǎng)絡——BP算法精品課件ppt教學文案_第4頁
最新神經(jīng)網(wǎng)絡——BP算法精品課件ppt教學文案_第5頁
已閱讀5頁,還剩75頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、神經(jīng)網(wǎng)絡BP算法反向傳播網(wǎng)絡反向傳播網(wǎng)絡 BackPropagation Network,由于其權值的調整采用反向傳播由于其權值的調整采用反向傳播(Backpropagation)的學習算法,的學習算法,因此被稱為因此被稱為BP網(wǎng)絡。網(wǎng)絡。7.2.2 BP網(wǎng)絡結構 BP神經(jīng)網(wǎng)絡模型結構神經(jīng)網(wǎng)絡模型結構 輸入層輸入層隱層隱層輸出層輸出層輸輸 入入輸輸 出出BP網(wǎng)絡是一種多層前向神經(jīng)網(wǎng)絡網(wǎng)絡是一種多層前向神經(jīng)網(wǎng)絡v一般分三層:輸入層,隱層,輸出層,也可以一般分三層:輸入層,隱層,輸出層,也可以有有2層或更多個隱層。層或更多個隱層。v層與層之間采用全互聯(lián)方式,同一層單元之層與層之間采用全互聯(lián)方式,同

2、一層單元之間不存在相互連接。間不存在相互連接。1)輸入層單元無轉換函數(shù),直接接收信號傳給)輸入層單元無轉換函數(shù),直接接收信號傳給下一層,所以有些書不認為輸入層是一個網(wǎng)絡層。下一層,所以有些書不認為輸入層是一個網(wǎng)絡層。2)在一般情況下,均是在隱含層采用)在一般情況下,均是在隱含層采用 S 型激活型激活函數(shù),而輸出層采用線性激活函數(shù)。函數(shù),而輸出層采用線性激活函數(shù)。x1x2xny1yp只有當希望對網(wǎng)只有當希望對網(wǎng)絡的輸出進行限絡的輸出進行限制,如限制在制,如限制在0和和1之間,那么則在之間,那么則在輸出層包含輸出層包含 S 型型激活函數(shù)激活函數(shù)BP網(wǎng)絡特點網(wǎng)絡特點是多層網(wǎng)絡,包括輸入層、隱層和輸出

3、層是多層網(wǎng)絡,包括輸入層、隱層和輸出層層與層之間采用全互連方式,同一層神經(jīng)層與層之間采用全互連方式,同一層神經(jīng)元之間不連接元之間不連接權值通過學習算法進行調節(jié)權值通過學習算法進行調節(jié)神經(jīng)元激發(fā)函數(shù)為神經(jīng)元激發(fā)函數(shù)為S函數(shù)函數(shù)層與層的連接是單向的,信息傳播是雙向層與層的連接是單向的,信息傳播是雙向的的感知機網(wǎng)絡利用輸出誤差只能感知機網(wǎng)絡利用輸出誤差只能修改最后一層的權值修改最后一層的權值而而BP網(wǎng)絡實現(xiàn)了多層學習,每網(wǎng)絡實現(xiàn)了多層學習,每一層的權值均可訓練學習修改。一層的權值均可訓練學習修改。BP學習規(guī)則學習規(guī)則 BP算法屬于算法屬于算法,是一種算法,是一種監(jiān)督式的學習算法。監(jiān)督式的學習算法。

4、其主要思想為:其主要思想為:對于對于q個輸入學習樣本:個輸入學習樣本: P1,P2,Pq,已知與其對應的輸出樣本為:已知與其對應的輸出樣本為: T1,T2,Tq。學習的目的:學習的目的: 是用網(wǎng)絡的實際輸出是用網(wǎng)絡的實際輸出A1,A2,Aq與目標與目標矢量矢量T1,T2,Tq之間的誤差來修改其權值之間的誤差來修改其權值 使使Al (ll,2,q)與期望的與期望的Tl盡可能地接近;盡可能地接近;即:即: 使網(wǎng)絡輸出層的誤差平方和達到最小。使網(wǎng)絡輸出層的誤差平方和達到最小。 BP算法的學習過程由算法的學習過程由 正向傳播正向傳播和和反向傳播反向傳播組成組成 BP算法是由兩部分組成:信息算法是由兩部

5、分組成:信息的正向傳遞與誤差的反向傳播。的正向傳遞與誤差的反向傳播。 在正向傳播過程中,輸入信息在正向傳播過程中,輸入信息從輸入經(jīng)隱含層逐層計算傳向輸從輸入經(jīng)隱含層逐層計算傳向輸出層,每一層神經(jīng)元的狀態(tài)只影出層,每一層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài)。響下一層神經(jīng)元的狀態(tài)。 如果在輸出層沒有得到期望如果在輸出層沒有得到期望的輸出,則計算輸出層的誤的輸出,則計算輸出層的誤差變化值,然后轉向反向傳差變化值,然后轉向反向傳播,通過網(wǎng)絡將誤差信號沿播,通過網(wǎng)絡將誤差信號沿原來的連接通路反傳回來修原來的連接通路反傳回來修改各層神經(jīng)元的權值直至達改各層神經(jīng)元的權值直至達到期望目標。到期望目標。BP網(wǎng)絡

6、用途網(wǎng)絡用途1)函數(shù)逼近:用輸入矢量和相應的輸出矢函數(shù)逼近:用輸入矢量和相應的輸出矢量訓練一個網(wǎng)絡逼近量訓練一個網(wǎng)絡逼近個函數(shù);個函數(shù);2)模式識別:用一個特定的輸出矢量將它模式識別:用一個特定的輸出矢量將它與輸入矢量聯(lián)系起來;與輸入矢量聯(lián)系起來;3)分類:把輸入矢量以所定義的合適方式分類:把輸入矢量以所定義的合適方式進行分類;進行分類;4)數(shù)據(jù)壓縮:減少輸出矢量維數(shù)以便于傳數(shù)據(jù)壓縮:減少輸出矢量維數(shù)以便于傳輸或存儲。輸或存儲。 BP網(wǎng)絡的逼近用于逼近的BP網(wǎng)絡前向傳播:計算網(wǎng)絡輸出前向傳播:計算網(wǎng)絡輸出iiijjxxjxjjexfx11輸出層輸出輸出層輸出 jjjnxky2隱層輸出采用隱層輸

7、出采用S函數(shù)函數(shù)隱層輸入:隱層輸入: 112222kkxkekkjjjjj 1122222kkkkjjjjj 11kkkkijijijijij 1)1 (112kkxxxkekkkkkijijijjjijijijijijijBP網(wǎng)絡逼近仿真Chap7_1.m 23111kykykuky 2311kykykuky ) t6sin(5 . 0ku5 . 0 05. 0 設計的網(wǎng)絡結構為設計的網(wǎng)絡結構為2-6-1;權值權值w1,w2的初值取的初值取-1,+1之間的隨機值,之間的隨機值,取取 初始化 加輸入和期望輸出計算隱層和輸出層的輸出迭代次數(shù)加1調節(jié)輸出層和隱層的連接權值pjopjhjihkjkp

8、jopkokjokjxtwtwOtwtw)()1()()1( 改變訓練樣板訓練樣終止?迭代終止?BP算法的基本流程NoNoyyBP網(wǎng)絡模式識別一、一、由于神經(jīng)網(wǎng)絡具有自學習、自組織和并行處理由于神經(jīng)網(wǎng)絡具有自學習、自組織和并行處理等特征,并具有很強的容錯能力和聯(lián)想能力,等特征,并具有很強的容錯能力和聯(lián)想能力,因此,神經(jīng)網(wǎng)絡具有模式識別能力。因此,神經(jīng)網(wǎng)絡具有模式識別能力。在神經(jīng)網(wǎng)絡識別中,根據(jù)標準的輸入輸出模式在神經(jīng)網(wǎng)絡識別中,根據(jù)標準的輸入輸出模式對,采用神經(jīng)網(wǎng)絡學習算法,以標準的模式作對,采用神經(jīng)網(wǎng)絡學習算法,以標準的模式作為學習樣本進行訓練,通過學習調整神經(jīng)網(wǎng)絡為學習樣本進行訓練,通過學

9、習調整神經(jīng)網(wǎng)絡的連接權值。的連接權值。當訓練滿足要求后,得到知識庫,利用神經(jīng)網(wǎng)當訓練滿足要求后,得到知識庫,利用神經(jīng)網(wǎng)絡并行推理算法便可對所需的輸入模式進行識絡并行推理算法便可對所需的輸入模式進行識別。別。BP網(wǎng)絡的訓練過程 為了訓練一個為了訓練一個BP網(wǎng)絡,需要計算網(wǎng)絡加權網(wǎng)絡,需要計算網(wǎng)絡加權輸入矢量以及網(wǎng)絡輸出和誤差矢量,然后求得輸入矢量以及網(wǎng)絡輸出和誤差矢量,然后求得誤差平方和。誤差平方和。 當所訓練矢量的誤差平方和小于誤差目標,當所訓練矢量的誤差平方和小于誤差目標,訓練則停止,否則在輸出層計算誤差變化,且訓練則停止,否則在輸出層計算誤差變化,且采用反向傳播學習規(guī)則來調整權值,并重復此

10、采用反向傳播學習規(guī)則來調整權值,并重復此過程。過程。 當網(wǎng)絡完成訓練后,對網(wǎng)絡輸入一個不是當網(wǎng)絡完成訓練后,對網(wǎng)絡輸入一個不是訓練集合中的矢量,網(wǎng)絡將給出輸出結果。訓練集合中的矢量,網(wǎng)絡將給出輸出結果。 為了能夠較好地掌握為了能夠較好地掌握BP網(wǎng)絡的訓練網(wǎng)絡的訓練過程,我們再用兩層網(wǎng)絡為例來敘述過程,我們再用兩層網(wǎng)絡為例來敘述BP網(wǎng)絡的訓練步驟。網(wǎng)絡的訓練步驟。 1)用小的隨機數(shù)對每一層的權值用小的隨機數(shù)對每一層的權值W初始化,初始化,以保證網(wǎng)絡不被大的加權輸入飽和;以保證網(wǎng)絡不被大的加權輸入飽和;2)計算網(wǎng)絡各層輸出矢量計算網(wǎng)絡各層輸出矢量A1和和A2以及網(wǎng)絡以及網(wǎng)絡誤差誤差E3)計算各層反

11、傳的誤差變化并計算各層權值計算各層反傳的誤差變化并計算各層權值的修正值以及新權值的修正值以及新權值4)再次計算權值修正后誤差平方和:再次計算權值修正后誤差平方和:5)檢查誤差是否小于給定誤差,若是,訓練檢查誤差是否小于給定誤差,若是,訓練結束;否則繼續(xù)。結束;否則繼續(xù)。以上所有的學習規(guī)則與訓練的全過程,仍然可以用以上所有的學習規(guī)則與訓練的全過程,仍然可以用函數(shù)函數(shù)trainbp.m來完成。它的使用同樣只需要定義來完成。它的使用同樣只需要定義有關參數(shù):顯示間隔次數(shù),最大循環(huán)次數(shù),目標誤有關參數(shù):顯示間隔次數(shù),最大循環(huán)次數(shù),目標誤差,以及學習速率,而調用后返回訓練后權值,循差,以及學習速率,而調用

12、后返回訓練后權值,循環(huán)總數(shù)和最終誤差:環(huán)總數(shù)和最終誤差: TPdisp_freq max_epoch err_goal 1r;W,B,epochs,errorstrainbp(W,B,F(xiàn),P,T,TP); 基于基于BP算法的多層前饋網(wǎng)絡用圖像壓縮編碼算法的多層前饋網(wǎng)絡用圖像壓縮編碼Ackley和和Hinton等人等人1985年提出了利用多層前饋年提出了利用多層前饋神經(jīng)網(wǎng)絡的模式變換能力實現(xiàn)數(shù)據(jù)編碼的基本思神經(jīng)網(wǎng)絡的模式變換能力實現(xiàn)數(shù)據(jù)編碼的基本思想。想。其原理是,把一組輸入模式通過少量的隱層節(jié)點其原理是,把一組輸入模式通過少量的隱層節(jié)點映射到一組輸出模式,并使輸出模式等同于輸入映射到一組輸出模

13、式,并使輸出模式等同于輸入模式。當中間隱層的節(jié)點數(shù)比輸入模式維數(shù)少時,模式。當中間隱層的節(jié)點數(shù)比輸入模式維數(shù)少時,就意味著隱層能更有效的表現(xiàn)輸入模式,并把這就意味著隱層能更有效的表現(xiàn)輸入模式,并把這種表現(xiàn)傳給輸出層。在這個過程中,輸入層和隱種表現(xiàn)傳給輸出層。在這個過程中,輸入層和隱層的變換可以看成是壓縮編碼的過程;而隱層和層的變換可以看成是壓縮編碼的過程;而隱層和輸出層的變換可以看成是解碼過程。輸出層的變換可以看成是解碼過程。用多層前饋網(wǎng)實現(xiàn)圖像數(shù)據(jù)壓縮時,只需一個隱層,如圖用多層前饋網(wǎng)實現(xiàn)圖像數(shù)據(jù)壓縮時,只需一個隱層,如圖原圖像原圖像nn重建圖像重建圖像nn輸入層和輸出層均含有輸入層和輸出層

14、均含有n*n個神經(jīng)元,每個神經(jīng)元個神經(jīng)元,每個神經(jīng)元對應于對應于n*n圖像分塊中的一個像素。隱層神經(jīng)元的圖像分塊中的一個像素。隱層神經(jīng)元的數(shù)量由圖像壓縮比決定,如數(shù)量由圖像壓縮比決定,如n=16時,取隱層神經(jīng)時,取隱層神經(jīng)元數(shù)為元數(shù)為m=8,則可將則可將256像素的圖像塊壓縮為像素的圖像塊壓縮為像素。像素。通過調整權值使訓練集圖像的重建誤差達到最小。通過調整權值使訓練集圖像的重建誤差達到最小。訓練后的網(wǎng)絡就可以用來執(zhí)行圖像的數(shù)據(jù)壓縮任訓練后的網(wǎng)絡就可以用來執(zhí)行圖像的數(shù)據(jù)壓縮任務了,此時隱層輸出向量便是數(shù)據(jù)壓縮結果,而務了,此時隱層輸出向量便是數(shù)據(jù)壓縮結果,而輸出層的輸出向量便是圖像重建的結果。

15、輸出層的輸出向量便是圖像重建的結果。黑白圖像的邊緣檢測:黑白圖像的邊緣檢測:分析分析BP網(wǎng)絡結構特點:網(wǎng)絡結構特點: 1. BP網(wǎng)絡具有一層或多層網(wǎng)絡具有一層或多層隱含層,與其他網(wǎng)絡模型除隱含層,與其他網(wǎng)絡模型除了結構不同外,主要差別表了結構不同外,主要差別表現(xiàn)在激活函數(shù)上?,F(xiàn)在激活函數(shù)上。 BP網(wǎng)絡的設計網(wǎng)絡的設計 2. BP網(wǎng)絡的激活函數(shù)必須網(wǎng)絡的激活函數(shù)必須是處處可微的,所以它就不是處處可微的,所以它就不能采用二值型的閥值函數(shù)能采用二值型的閥值函數(shù)0,1或符號函數(shù)或符號函數(shù)1,1,BP網(wǎng)絡經(jīng)常使用的是網(wǎng)絡經(jīng)常使用的是S型的對數(shù)型的對數(shù)或正切激活函數(shù)和線性函數(shù)?;蛘屑せ詈瘮?shù)和線性函數(shù)。3

16、. 只有當希望對網(wǎng)絡的輸出只有當希望對網(wǎng)絡的輸出進行限制,如限制在進行限制,如限制在0和和1之之間,那么在輸出層應當包含間,那么在輸出層應當包含S型激活函數(shù),在一般情況下,型激活函數(shù),在一般情況下,均是在隱含層采用均是在隱含層采用S型激活函型激活函數(shù),而輸出層采用線性激活數(shù),而輸出層采用線性激活函數(shù)。函數(shù)。 4、輸入和輸出是并行的模擬、輸入和輸出是并行的模擬量;量;5、網(wǎng)絡的輸入輸出關系是各、網(wǎng)絡的輸入輸出關系是各層連接的權因子決定,沒有層連接的權因子決定,沒有固定的算法;固定的算法;6、權因子是通過學習信號調、權因子是通過學習信號調節(jié)的,這樣學習越多,網(wǎng)絡節(jié)的,這樣學習越多,網(wǎng)絡越聰明;越聰

17、明;7、隱含層越多,網(wǎng)絡輸出精、隱含層越多,網(wǎng)絡輸出精度越高,且個別權因子的損度越高,且個別權因子的損壞不會對網(wǎng)絡輸出產(chǎn)生大的壞不會對網(wǎng)絡輸出產(chǎn)生大的影響影響B(tài)P網(wǎng)絡的設計 1 網(wǎng)絡的層數(shù):網(wǎng)絡的層數(shù): 理論上已經(jīng)證明:具有偏差和至少一個理論上已經(jīng)證明:具有偏差和至少一個S型型隱含層加上一個線性輸出層的網(wǎng)絡,能夠逼近隱含層加上一個線性輸出層的網(wǎng)絡,能夠逼近任何有理函數(shù)。任何有理函數(shù)。 增加層數(shù)主要可以更進一步的降低誤差,提增加層數(shù)主要可以更進一步的降低誤差,提高精度,但同時也使網(wǎng)絡復雜化,從而增加了高精度,但同時也使網(wǎng)絡復雜化,從而增加了網(wǎng)絡權值的訓練時間。網(wǎng)絡權值的訓練時間。 一般情況下,應

18、優(yōu)先考慮增加隱含層中的神一般情況下,應優(yōu)先考慮增加隱含層中的神經(jīng)元數(shù)。經(jīng)元數(shù)。 能不能僅用具有非線性激活函數(shù)的單層網(wǎng)絡能不能僅用具有非線性激活函數(shù)的單層網(wǎng)絡來解決問題呢?結論是:沒有必要或效果不好。來解決問題呢?結論是:沒有必要或效果不好。 2 隱含層的神經(jīng)元數(shù)隱含層的神經(jīng)元數(shù) 網(wǎng)絡訓練精度的提高,可以通過采用網(wǎng)絡訓練精度的提高,可以通過采用一個隱含層,而增加其神經(jīng)元數(shù)的方法一個隱含層,而增加其神經(jīng)元數(shù)的方法來獲得。這在結構實現(xiàn)上,要比增加更來獲得。這在結構實現(xiàn)上,要比增加更多的隱含層要簡單得多。多的隱含層要簡單得多。 在具體設計時,比較實際的做法是通在具體設計時,比較實際的做法是通過對不同神

19、經(jīng)元數(shù)進行訓練對比,然后過對不同神經(jīng)元數(shù)進行訓練對比,然后適當?shù)丶由弦稽c余量。適當?shù)丶由弦稽c余量。 3)初始權值的選?。┏跏紮嘀档倪x取一般取初始權值在一般取初始權值在(- -1,1)之間的隨機數(shù)。之間的隨機數(shù)。在在MATLAB工具箱中可采用函數(shù)工具箱中可采用函數(shù)initff.m來初始來初始化權值閾值?;瘷嘀甸撝怠?由于每次訓練時都對權值進行隨機初始化,所由于每次訓練時都對權值進行隨機初始化,所以每次訓練得到的網(wǎng)絡權值都是不一樣的。以每次訓練得到的網(wǎng)絡權值都是不一樣的。4 學習速率學習速率 學習速率決定每一次循環(huán)訓練中所產(chǎn)學習速率決定每一次循環(huán)訓練中所產(chǎn)生的權值變化量。生的權值變化量。 大的學習

20、速率可能導致系統(tǒng)的不穩(wěn)定。大的學習速率可能導致系統(tǒng)的不穩(wěn)定。 小的學習速率導致較長的訓練時間,小的學習速率導致較長的訓練時間,可能收斂很慢,不過能保證網(wǎng)絡的誤差可能收斂很慢,不過能保證網(wǎng)絡的誤差值不跳出誤差表面的低谷而最終趨于最值不跳出誤差表面的低谷而最終趨于最小誤差值。小誤差值。 所以在一般情況下,傾向于選取較小所以在一般情況下,傾向于選取較小的學習速率以保證系統(tǒng)的穩(wěn)定性。學習的學習速率以保證系統(tǒng)的穩(wěn)定性。學習速率的選取范圍在速率的選取范圍在00108之間。之間。 5 期望誤差的選取期望誤差的選取 在設計網(wǎng)絡的訓練過程中,期望誤差值也在設計網(wǎng)絡的訓練過程中,期望誤差值也應當通過對比訓練后確定

21、一個合適的值。應當通過對比訓練后確定一個合適的值。 這個所謂的這個所謂的“合適合適”,是相對于所需要的,是相對于所需要的隱含層的節(jié)點數(shù)來確定,因為較小的期望誤差隱含層的節(jié)點數(shù)來確定,因為較小的期望誤差值是要靠增加隱含層的節(jié)點,以及訓練時間來值是要靠增加隱含層的節(jié)點,以及訓練時間來獲得的。獲得的。 一般情況下,作為對比,可以同時對兩個一般情況下,作為對比,可以同時對兩個不同期望誤差值的網(wǎng)絡進行訓練,最后通過綜不同期望誤差值的網(wǎng)絡進行訓練,最后通過綜合因素的考慮來確定采用其中一個網(wǎng)絡。合因素的考慮來確定采用其中一個網(wǎng)絡。 BP網(wǎng)絡的局限與不足網(wǎng)絡的局限與不足(1)需要較長的訓練時間需要較長的訓練時

22、間 因為涉及到求導的運算,需要的時間較長因為涉及到求導的運算,需要的時間較長(2)訓練癱瘓問題訓練癱瘓問題通常為了避免這種現(xiàn)象的發(fā)生,一是選取較小的通常為了避免這種現(xiàn)象的發(fā)生,一是選取較小的初始權值,二是采用較小的學習速率,但這又增初始權值,二是采用較小的學習速率,但這又增加了訓練時間。加了訓練時間。 (3)局部極小值局部極小值BP算法可以使網(wǎng)絡權值收斂到一個解,但它算法可以使網(wǎng)絡權值收斂到一個解,但它并不能保證所求為誤差超平面的全局最小解,并不能保證所求為誤差超平面的全局最小解,很可能是一個局部極小解。很可能是一個局部極小解。WEW初始值不合適時,初始值不合適時,可能落入局部極小值??赡苈淙?/p>

23、局部極小值。7.2.11 反向傳播法的改進方法 目標:為了加快訓練速度,避免陷入局部極小值。目標:為了加快訓練速度,避免陷入局部極小值。1 附加動量法附加動量法 附加動量法使網(wǎng)絡在修正其權值時,不僅考慮誤附加動量法使網(wǎng)絡在修正其權值時,不僅考慮誤差在梯度上的作用,而且考慮在誤差曲面上變差在梯度上的作用,而且考慮在誤差曲面上變化趨勢的影響,其作用如同一個低通濾波器,化趨勢的影響,其作用如同一個低通濾波器,它允許網(wǎng)絡忽略網(wǎng)絡上的微小變化特性。它允許網(wǎng)絡忽略網(wǎng)絡上的微小變化特性。 利用附加動量的作用則有可能滑過局部極小值。利用附加動量的作用則有可能滑過局部極小值。 該方法是在反向傳播法的基礎上在每一

24、個該方法是在反向傳播法的基礎上在每一個權值的變化上加上一項正比于前次權值變化量權值的變化上加上一項正比于前次權值變化量的值,并根據(jù)反向傳播法來產(chǎn)生新的權值變化。的值,并根據(jù)反向傳播法來產(chǎn)生新的權值變化。 附加動量法的實質是將最后一次權值變化附加動量法的實質是將最后一次權值變化的影響,通過一個動量因子來傳遞。當動量因的影響,通過一個動量因子來傳遞。當動量因子取值為零時,權值的變化僅是根據(jù)梯度下降子取值為零時,權值的變化僅是根據(jù)梯度下降法產(chǎn)生;當動量因子取值為法產(chǎn)生;當動量因子取值為1時,新的權值變時,新的權值變化則是設置為最后一次權值的變化,而依梯度化則是設置為最后一次權值的變化,而依梯度法產(chǎn)生

25、的變化部分則被忽略掉了。法產(chǎn)生的變化部分則被忽略掉了。2 誤差函數(shù)的改進誤差函數(shù)的改進 包穆包穆(Baum)等人于等人于1988年提出一種誤差函數(shù)為:年提出一種誤差函數(shù)為: 不會產(chǎn)生不能完全訓練的癱瘓現(xiàn)象。不會產(chǎn)生不能完全訓練的癱瘓現(xiàn)象。 3 自適應學習速率自適應學習速率 學習率學習率也稱步長,在標準也稱步長,在標準BP 算法中定為常數(shù),算法中定為常數(shù),然而在實際應用中,很難確定一個從始至終都然而在實際應用中,很難確定一個從始至終都合適的最佳學習率,從誤差曲面可以看出,平合適的最佳學習率,從誤差曲面可以看出,平坦區(qū)域內坦區(qū)域內太小會使訓練次數(shù)增加而希望增大太小會使訓練次數(shù)增加而希望增大值;而在

26、誤差變化劇烈的區(qū)域,值;而在誤差變化劇烈的區(qū)域,太大會因調整太大會因調整量過大而跨過較宰的量過大而跨過較宰的“坑凹坑凹”處,使訓練出現(xiàn)處,使訓練出現(xiàn)振蕩,反而使迭代次數(shù)增加。振蕩,反而使迭代次數(shù)增加。為了加速收斂過程,一個較好的思路是自適應為了加速收斂過程,一個較好的思路是自適應改變學習率,使其該大時增大,該小時減小。改變學習率,使其該大時增大,該小時減小。 通常調節(jié)學習速率的準則是:檢查權值的通常調節(jié)學習速率的準則是:檢查權值的修正值是否真正降低了誤差函數(shù),如果確實修正值是否真正降低了誤差函數(shù),如果確實如此,則說明所選取的學習速率值小了,可如此,則說明所選取的學習速率值小了,可以對其增加一個

27、量;若不是這樣,而產(chǎn)生了以對其增加一個量;若不是這樣,而產(chǎn)生了過調,那么就應該減小學習速率的值。下式過調,那么就應該減小學習速率的值。下式給出了一種自適應學習速率的調整公式:給出了一種自適應學習速率的調整公式:MATLAB工具箱中帶有自適應學習速率進行反向傳播訓工具箱中帶有自適應學習速率進行反向傳播訓練的函數(shù)為:練的函數(shù)為:trainbpa.m。它可以訓練直至三層網(wǎng)絡。它可以訓練直至三層網(wǎng)絡。使用方法為:使用方法為:W,B,epochs,TEtrainbpa(W,B,F(xiàn),P,T,TP)可以將動量法和自適應學習速率結合起來以利用可以將動量法和自適應學習速率結合起來以利用兩方面的優(yōu)點。這個技術已編

28、入了函數(shù)兩方面的優(yōu)點。這個技術已編入了函數(shù)trainbpx.m之中。這個函數(shù)的調用和其他函數(shù)一之中。這個函數(shù)的調用和其他函數(shù)一樣,只是需要更多的初始參數(shù)而已:樣,只是需要更多的初始參數(shù)而已:TPdisp_freq max_epoch error_goal lr 1r_inc 1r_dec mom_const err_ratio;W,B,epochs,error; lrtrainbpx(W,B,F(xiàn),P,T,TP)本章小結 1)反向傳播法可以用來訓練具有可微激活函數(shù)的反向傳播法可以用來訓練具有可微激活函數(shù)的多層前向網(wǎng)絡以進行函數(shù)逼近,模式分類等工多層前向網(wǎng)絡以進行函數(shù)逼近,模式分類等工作;作;2)

29、反向傳播網(wǎng)絡的結構不完全受所要解決的問題反向傳播網(wǎng)絡的結構不完全受所要解決的問題所限制。網(wǎng)絡的輸入神經(jīng)元數(shù)目及輸出層神經(jīng)所限制。網(wǎng)絡的輸入神經(jīng)元數(shù)目及輸出層神經(jīng)元的數(shù)目是由問題的要求所決定的,而輸入和元的數(shù)目是由問題的要求所決定的,而輸入和輸出層之間的隱含層數(shù)以及每層的神經(jīng)元數(shù)是輸出層之間的隱含層數(shù)以及每層的神經(jīng)元數(shù)是由設計者來決定的;由設計者來決定的;3)已證明,兩層已證明,兩層S型線性網(wǎng)絡,如果型線性網(wǎng)絡,如果S型層有足夠型層有足夠的神經(jīng)元,則能夠訓練出任意輸入和輸出之間的神經(jīng)元,則能夠訓練出任意輸入和輸出之間的有理函數(shù)關系;的有理函數(shù)關系;4)反向傳播法沿著誤差表面的梯度下降,使網(wǎng)絡反向

30、傳播法沿著誤差表面的梯度下降,使網(wǎng)絡誤差最小,網(wǎng)絡有可能陷入局部極小值;誤差最小,網(wǎng)絡有可能陷入局部極小值;5)附加動量法使反向傳播減少了網(wǎng)絡在誤差表面附加動量法使反向傳播減少了網(wǎng)絡在誤差表面陷入低谷的可能性并有助于減少訓練時間;陷入低谷的可能性并有助于減少訓練時間;6)太大的學習速率導致學習的不穩(wěn)定,太小值又太大的學習速率導致學習的不穩(wěn)定,太小值又導致極長的訓練時間。自適應學習速率通過在導致極長的訓練時間。自適應學習速率通過在保證穩(wěn)定訓練的前提下,達到了合理的高速率,保證穩(wěn)定訓練的前提下,達到了合理的高速率,可以減少訓練時間;可以減少訓練時間;7)8090的實際應用都是采用反向傳播網(wǎng)絡的實際

31、應用都是采用反向傳播網(wǎng)絡的。改進技術可以用來使反向傳播法更加容易的。改進技術可以用來使反向傳播法更加容易實現(xiàn)并需要更少的訓練時間。實現(xiàn)并需要更少的訓練時間。 1985年年 Powell提出多變量插值的徑向基函提出多變量插值的徑向基函數(shù)(數(shù)(Radial Basis Function, RBF)方法;方法; 1988年年 Broomhead&Lowe將將RBF應用應用于神經(jīng)網(wǎng)絡于神經(jīng)網(wǎng)絡7.3 RBF神經(jīng)網(wǎng)絡RBF網(wǎng)絡網(wǎng)絡徑向基函數(shù)網(wǎng)絡(徑向基函數(shù)網(wǎng)絡(Radial Basis Function ,簡稱簡稱RBFNN) x1x2xny1yp輸輸 入入輸輸 出出是一種三層前饋網(wǎng)絡是一種三層

32、前饋網(wǎng)絡網(wǎng)絡特點:網(wǎng)絡特點:)結構相對簡單)結構相對簡單)在參數(shù)(節(jié)點數(shù),)在參數(shù)(節(jié)點數(shù),, )選擇合適時,收斂選擇合適時,收斂速度快速度快三層三層輸入層輸入層隱層隱層神經(jīng)元函數(shù)多采用高斯函數(shù)神經(jīng)元函數(shù)多采用高斯函數(shù)輸出層輸出層線性神經(jīng)元函數(shù)線性神經(jīng)元函數(shù)構成構成RBF網(wǎng)絡的基本思想:網(wǎng)絡的基本思想: 1)用)用RBF作為隱單元的作為隱單元的“基基”構成隱構成隱含層空間,將輸入矢量直接映射到隱空含層空間,將輸入矢量直接映射到隱空間(不通過權連接);間(不通過權連接); 2)網(wǎng)絡輸出時隱單元輸出的線性加權)網(wǎng)絡輸出時隱單元輸出的線性加權和,(通過權連接可調參數(shù))和,(通過權連接可調參數(shù)) 輸入輸入 隱層隱層 輸出輸出 非線性非線性 線性線性 (高斯核函數(shù))(高斯核函數(shù))c該激活函數(shù)具有局部感受能力,只有輸入落該激活函數(shù)具有局部感受能力,只有輸入落入某個范圍內,才有明顯輸出,不象入某個范圍內,才有明顯輸出,不象BP,輸輸入在(入在(,)均有輸出。)均有輸出。隱含層節(jié)點核函數(shù)作用:隱含層節(jié)點核函數(shù)作用: 對輸入信號在局部產(chǎn)生響應對輸入信號在局部產(chǎn)生響應網(wǎng)絡輸出采用高斯基函數(shù)的優(yōu)點:采用高斯基函數(shù)的優(yōu)點:1)表示形式簡單)表示形式簡單2)徑向對稱)徑向對稱3)光滑性好,任意階導數(shù)存在)光滑性好,任意階導數(shù)存在4)便于進行理論分析)便于進行理論分析學習過程分為兩個階段:第一階

溫馨提示

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

評論

0/150

提交評論