神經(jīng)網(wǎng)絡(luò)-(5)自適應(yīng)線性元件.ppt_第1頁(yè)
神經(jīng)網(wǎng)絡(luò)-(5)自適應(yīng)線性元件.ppt_第2頁(yè)
神經(jīng)網(wǎng)絡(luò)-(5)自適應(yīng)線性元件.ppt_第3頁(yè)
神經(jīng)網(wǎng)絡(luò)-(5)自適應(yīng)線性元件.ppt_第4頁(yè)
神經(jīng)網(wǎng)絡(luò)-(5)自適應(yīng)線性元件.ppt_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第05章 自適應(yīng)線性元件,自適應(yīng)線性元件(Adaptive Linear Element,簡(jiǎn)稱Adaline) 由威德羅(Widrow)和霍夫(Hoff)首先提出的 它與感知器的主要不同之處在于其神經(jīng)元有一個(gè)線性激活函數(shù),這允許輸出可以是任意值,而不僅僅只是像感知器中那樣只能取0或1。 它采用的是WH學(xué)習(xí)法則,也稱最小均方差(LMS)規(guī)則對(duì)權(quán)值進(jìn)行訓(xùn)練 自適應(yīng)線性元件的主要用途是線性逼近一個(gè)函數(shù)式而進(jìn)行模式聯(lián)想。,51自適應(yīng)線性神經(jīng)元模型和結(jié)構(gòu),圖5. 1 自適應(yīng)線性神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),52 WH學(xué)習(xí)規(guī)則,WH學(xué)習(xí)規(guī)則是由威德羅和霍夫提出的用來(lái)修正權(quán)矢量的學(xué)習(xí)規(guī)則 采用WH學(xué)習(xí)規(guī)則可以用來(lái)訓(xùn)練一定

2、網(wǎng)絡(luò)的權(quán)值和偏差使之線性地逼近一個(gè)函數(shù)式而進(jìn)行模式聯(lián)想(Pattern Association)。,定義一個(gè)線性網(wǎng)絡(luò)的輸出誤差函數(shù)為:,我們的目的是通過(guò)調(diào)節(jié)權(quán)矢量,使E(W,B)達(dá)到最小值。 所以在給定E(W,B)后,利用WH學(xué)習(xí)規(guī)則修正權(quán)矢量和偏差矢量,使E(W,B)從誤差空間的某一點(diǎn)開(kāi)始,沿著E(W,B)的斜面向下滑行。,ftp:/M Zed_0203_ex1.m,根據(jù)梯度下降法,權(quán)矢量的修正值正比于當(dāng)前位置上E(W,B)的梯度,對(duì)于第i個(gè)輸出節(jié)點(diǎn)有:,或表示為:,(5. 3),為學(xué)習(xí)速率。在一般的實(shí)際運(yùn)用中,實(shí)踐表明,通常取一接近1的數(shù),或取值為:,(5.5),學(xué)習(xí)速率的這一取法在神經(jīng)網(wǎng)

3、絡(luò)工具箱中用函數(shù)maxlinlr.m來(lái)實(shí)現(xiàn)。(55)式可實(shí)現(xiàn)為:,WH學(xué)習(xí)規(guī)則的函數(shù)為:learnwh.m來(lái)實(shí)現(xiàn),加上線性自適應(yīng)網(wǎng)絡(luò)輸出函數(shù)purelin.m,可以寫(xiě)出WH學(xué)習(xí)規(guī)則的計(jì)算公式為: Apurelin(W*P); ETA; dW,dBlearnwh(P,E,h); WW十dW; BB十dB; 采用WH規(guī)則訓(xùn)練自適應(yīng)線性元件使其能夠得以收斂的必要條件是被訓(xùn)練的輸入矢量必須是線性獨(dú)立的,且應(yīng)適當(dāng)?shù)剡x擇學(xué)習(xí)速率以防止產(chǎn)生振蕩現(xiàn)象。,53 網(wǎng)絡(luò)訓(xùn)練,自適應(yīng)線性元件的網(wǎng)絡(luò)訓(xùn)練過(guò)程可以歸納為以下三個(gè)步驟: 1)表達(dá):計(jì)算訓(xùn)練的輸出矢量AW*P十B,以及與期望輸出之間的誤差ETA; 2)檢查:將

4、網(wǎng)絡(luò)輸出誤差的平方和與期望誤差相比較,如果其值小于期望誤差,或訓(xùn)練已達(dá)到事先設(shè)定的最大訓(xùn)練次數(shù),則停止訓(xùn)練;否則繼續(xù); 3)學(xué)習(xí):采用WH學(xué)習(xí)規(guī)則計(jì)算新的權(quán)值和偏差,并返回到1)。,采用Matlab進(jìn)行自適應(yīng)線性元件網(wǎng)絡(luò)的訓(xùn)練過(guò)程如下:trainwh.m 表達(dá)式 A=purelin(W*P,B); E=T-A; SSEsumsqr(E);求誤差平方和 for epoch1: max_epoch循環(huán)訓(xùn)練 if SSEerr_goal比較誤差 epochepoch1; break若滿足期望誤差要求,結(jié)束訓(xùn)練 end dW,dB1earnwh(P,E,lr);修正權(quán)值 WW十dW; BB十dB; A

5、purelin(W*P,B);網(wǎng)絡(luò)輸出 ET-A; SSEsumsqr(E);計(jì)算網(wǎng)絡(luò)誤差平方和 end,54例題與分析,例51設(shè)計(jì)自適應(yīng)線性網(wǎng)絡(luò)實(shí)現(xiàn)從輸入矢量到輸出矢量的變換關(guān)系。其輸入矢量和輸出矢量分別為: P1.0 -1.2 T0.5 1.0,wf1.m P1 -1.2; T0.5 1; R,Qsize(P); S,Qsize(T); W,Brands(S,R); max_epoch20;最大循環(huán)次數(shù) err_goal0.001;期望誤差 1r0.4*maxlinlr(P);最佳學(xué)習(xí)速率 disp_freq1;設(shè)置顯示頻率 TPdisp_freq max_epoch err_goal l

6、r;設(shè)置參數(shù)變量TP W,B,epochs,errortrainwh(W,B,P,T,TP) 進(jìn)行線性網(wǎng)絡(luò)權(quán)值訓(xùn)練,在隨機(jī)初始值為:W00.9309;B00.8931的情況下,經(jīng)過(guò)12次循環(huán)訓(xùn)練后,網(wǎng)絡(luò)的輸出誤差平方和達(dá)到0.000949,網(wǎng)絡(luò)的最終權(quán)值為: W-0.2354;B0.7066 實(shí)際上,對(duì)于例5.1這個(gè)簡(jiǎn)單的例題,它存在一個(gè)精確解,且可以用解二元一次方程的方式將P和T值分別對(duì)應(yīng)地代入方程TW*P十B得:,可解出eT-A0的解為: W-0.2273;B0.7273 由此看出,對(duì)于特別簡(jiǎn)單的問(wèn)題,采用自適應(yīng)線性網(wǎng)絡(luò)的訓(xùn)練不一定能夠得到足夠精確的解。因?yàn)楫?dāng)訓(xùn)練誤差達(dá)到期望誤差值后,訓(xùn)練

7、即被終止。,對(duì)于具有零誤差的自適應(yīng)線性網(wǎng)絡(luò),即輸入/輸出矢量對(duì)存在著嚴(yán)格的線性關(guān)系,此時(shí)的自適應(yīng)線性網(wǎng)絡(luò)的設(shè)計(jì)可以采用工具箱中另外一個(gè)名為solvelin.m的函數(shù)。 W,Bsolvelin(P,T) 然后可用simulin.m函數(shù)來(lái)檢測(cè)所設(shè)計(jì)的網(wǎng)絡(luò): Asimulin(P,W,B) 還可以用sumsqr.m函數(shù)來(lái)求出誤差平方和: SSEsumsqr(T-A),例52現(xiàn)在來(lái)考慮一個(gè)較大的多神經(jīng)元網(wǎng)絡(luò)的模式聯(lián)想的設(shè)計(jì)問(wèn)題。輸入矢量和目標(biāo)矢量分別為:,解: 由輸入矢量和目標(biāo)輸出矢量可得:r3,s4,q4。所以網(wǎng)絡(luò)的結(jié)構(gòu)如圖52所示。,這個(gè)問(wèn)題的求解同樣可以采用線性方程組求出,即對(duì)每一個(gè)輸出節(jié)點(diǎn)寫(xiě)出

8、輸入和輸出之間的關(guān)系等式。,實(shí)際上要求出這16個(gè)方程的解是需要花費(fèi)一定的時(shí)間的,甚至是不太容易的。 對(duì)于一些實(shí)際問(wèn)題,常常并不需要求出其完美的零誤差時(shí)的解。也就是說(shuō)允許存在一定的誤差。 在這種情況下,采用自適應(yīng)線性網(wǎng)絡(luò)求解就顯示出它的優(yōu)越性:因?yàn)樗梢院芸斓赜?xùn)練出滿足一定要求的網(wǎng)絡(luò)權(quán)值。,wf2.m P=1 1.5 1.2 0.3; -1 2 3 0.5; 2 1 1.6 0.9; T=0.5 3 2.2 1.4; 1.1 1.2 1.7 0.4; 3 0.2 1.8 0.4; -1 0.1 1.0 0.6; disp_freq=400;中間不顯示結(jié)果 max_epoch=400; err_g

9、oal=0.001; lr=0.9*maxlinlr(P); W=1.9978 0.5959 0.3517; 1.5543 0.05331 1.3660;%初始權(quán)值 1.0672 0.3645 0.9227; -0.7747 1.3839 0.3384; B=0.0746; -0.0642; -0.4256; -0.6433; SSEsumsqr(T-purelin(W*P,B);%未訓(xùn)練前誤差 fprintf(Before trainihg, sum squared error=g. n, SSE),訓(xùn)練網(wǎng)絡(luò) flops(0) tpdisp_freq max_epoch err_goal l

10、r;%設(shè)置參數(shù)變量tp W, B, epochs,errorstrainwh(W, B, P, T, tp); %進(jìn)行線性網(wǎng)絡(luò)權(quán)值訓(xùn)練 W顯示最終訓(xùn)練權(quán)矢量 B顯示最終訓(xùn)練偏差矢量 SSEsumsqr(T-purelin(W*P, B);最終誤差 顯示結(jié)果并給出結(jié)論 ploterr(errors), fprintf (n After.0f epochs,sum squared e errorg. nn, SSE), fprintf (Training took .0f flops. n, flops), fprintf ( Trained network operates:); if SSEe

11、rr_goal disp(Adequately.) else disp(Inadequately.) end end,訓(xùn)練后的網(wǎng)絡(luò)權(quán)值為:,網(wǎng)絡(luò)訓(xùn)練過(guò)程中的誤差記錄,對(duì)于存在零誤差的精確權(quán)值網(wǎng)絡(luò),若用函數(shù)solvelin.m來(lái)求解,則更加簡(jiǎn)單如下: wf3.m P1 1.5 1.2 0.3; -1 2 3 0.5; 2 1 1.6 0.9; T0.5 3 2.2 1.4; 1.1 1.2 1.7 0.4; 3 0.2 1.8 -0.4; -1 0.1 1.0 0.6; W,Bsolvelin(P,T); Asimulin (P, W, B); SSEsumsqr (T-A) W B end,由

12、此可得零誤差的唯一精確解為:,例53設(shè)計(jì)訓(xùn)練一個(gè)線性網(wǎng)絡(luò)實(shí)現(xiàn)下列從輸人矢量到目標(biāo)矢量的變換:,所給出的輸入矢量元素之間是線性相關(guān)的:第三組元素等于第二組元素的兩倍減去第一組:P32P2P1。,由于輸入矢量的奇異性,用函數(shù)solvelin.m來(lái)設(shè)計(jì)時(shí)網(wǎng)絡(luò)會(huì)產(chǎn)生問(wèn)題。只有在能夠線性地解出問(wèn)題的情況下,用函數(shù)solvelin.m才比較準(zhǔn)確。,只要將前面已編寫(xiě)的wf2.m程序中的輸入與目標(biāo)矢量改變一下,并給出(l,1)之間的隨機(jī)初始值,即可運(yùn)行看到本例的結(jié)果。 其最終誤差在1.04左右,這就是本例題下的最小誤差平方和, 而當(dāng)采用完全線性函數(shù)的設(shè)計(jì)solvelin.m去求解網(wǎng)絡(luò)權(quán)值時(shí),所得到的誤差是4.

13、25。 采用WH算法訓(xùn)練出的誤差是它的14,由此可見(jiàn)其算法的優(yōu)越性。,例54現(xiàn)在假定在例51的輸入輸出矢量中增加兩組元素,使其變?yōu)?P1.0 1.5 3.0 -1.2 T0.5 1.1 3.0 -1.0 本例題的目的是在于了解自適應(yīng)線性網(wǎng)絡(luò)的線性逼近求解的能力。,圖54給出了輸入輸出對(duì)的位置以及網(wǎng)絡(luò)求解的結(jié)果。對(duì)于所設(shè)置的err_goal0.001, 在循環(huán)訓(xùn)練了50次后所得的誤差平方和仍然為:SSE0.289。這個(gè)值即是本題所能達(dá)到的最小誤差平方和的值。 當(dāng)采用線性自適應(yīng)線性網(wǎng)絡(luò)求解問(wèn)題所得到的誤差特別大時(shí),可以認(rèn)為此問(wèn)題不適宜用線性網(wǎng)絡(luò)來(lái)解決。,圖5. 4網(wǎng)絡(luò)訓(xùn)練結(jié)果圖,自適應(yīng)線性網(wǎng)絡(luò)還有

14、另一個(gè)潛在的困難,當(dāng)學(xué)習(xí)速率取得較大時(shí),可導(dǎo)致訓(xùn)練過(guò)程的不穩(wěn)定。,例55輸入/目標(biāo)矢量與例51相同。我們將以不同的學(xué)習(xí)速率訓(xùn)練兩次網(wǎng)絡(luò)以展現(xiàn)兩種不希望的學(xué)習(xí)速率帶來(lái)的影響。 以例5.1 為樣本, 1)對(duì)于第一個(gè)嘗試,學(xué)習(xí)速率lr取: 1r1.7*maxlinlr(P); 2)第二個(gè)嘗試是選用更大學(xué)習(xí)速率: 1r2.5*maxlinlr(P);,55對(duì)比與分析,感知器和自適應(yīng)線性網(wǎng)絡(luò) (1)網(wǎng)絡(luò)模型結(jié)構(gòu)上 感知器和自適應(yīng)線性網(wǎng)絡(luò)而言,結(jié)構(gòu)上的主要區(qū)別在于激活函數(shù):一個(gè)是二值型的,一個(gè)線性的。 當(dāng)把偏差與權(quán)值考慮成一體時(shí),自適應(yīng)線性網(wǎng)絡(luò)的輸入與輸出之間的關(guān)系可以寫(xiě)成AW*P。如果P是滿秩的話,則可

15、以寫(xiě)成AP-1W,或W=A/P。,(2)學(xué)習(xí)算法 感知器的算法是最早提出的可收斂的算法,它的自適應(yīng)思想被威德羅和霍夫發(fā)展成使其誤差最小的梯度下降法。最后又在BP算法中得到進(jìn)一步的推廣,它們屬于同一類算法。,(3)適用性與局限性 感知器僅能夠進(jìn)行簡(jiǎn)單的分類。從前面的例題中已經(jīng)看出,感知器可以將輸入分成兩類或四類等。它的局限性是僅能對(duì)線性可分的輸入進(jìn)行分類。 自適應(yīng)線性網(wǎng)絡(luò)除了像感知器一樣可以進(jìn)行線性分類外,又多了線性逼近,這僅是由于其激活函數(shù)可以連續(xù)取值而不同于感知器的僅能取0或1的緣故。,作業(yè) ,設(shè)計(jì)一個(gè)有三個(gè)輸入的單層線性網(wǎng)絡(luò): P=2 3 2.4 -0.6; -2 4 6 -1; 4 2 -3.2 1.8 T=1 6 -4.4 2.8; 2.2-2.4

溫馨提示

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

評(píng)論

0/150

提交評(píng)論