Widrow-Hoff神經(jīng)網(wǎng)絡(luò )學(xué)習規則的應用研究
摘要:基于線(xiàn)性神經(jīng)網(wǎng)絡(luò )原理,提出線(xiàn)性神經(jīng)網(wǎng)絡(luò )的模型,并利用Matlab實(shí)現Widrow-Hoff神經(jīng)網(wǎng)絡(luò )算法。分析Matlab人工神經(jīng)網(wǎng)絡(luò )工具箱中有關(guān)線(xiàn)性神經(jīng)網(wǎng)絡(luò )的工具函數,最后給出線(xiàn)性神經(jīng)網(wǎng)絡(luò )在系統辨識中的實(shí)際應用。通過(guò)對線(xiàn)性神經(jīng)網(wǎng)絡(luò )的訓練,進(jìn)一步驗證Widrow-Hoff神經(jīng)網(wǎng)絡(luò )算法的有效性,以及用其進(jìn)行系統辨識的高精度擬合性。
關(guān)鍵詞:Widrow-Hoff學(xué)習規則;線(xiàn)性神經(jīng)網(wǎng)絡(luò );Matlab;系統辨識
1 引言
利用神經(jīng)網(wǎng)絡(luò )解決實(shí)際問(wèn)題時(shí),必定涉及大量數值計算。為了解決數值計算與計算機仿真間的矛盾。美國MathWorks公司推出的集數學(xué)計算、圖形計算、語(yǔ)言設計、計算機仿真于一體的Matlab具有非線(xiàn)性適應性信息處理功能,克服傳統人工智能方法對于直覺(jué),如模式、語(yǔ)言識別、非結構化信息處理方面的缺陷,使之在神經(jīng)專(zhuān)家系統、模式識別、智能控制、組合優(yōu)化、預測等領(lǐng)域獲得成功,具有極高的編程效率。神經(jīng)網(wǎng)絡(luò )工具箱是以神經(jīng)網(wǎng)絡(luò )理論為基礎,用Matlab語(yǔ)言構造的典型神經(jīng)網(wǎng)絡(luò )工具函數。Matlab中大量有關(guān)線(xiàn)性神經(jīng)網(wǎng)絡(luò )的工具函數可為線(xiàn)性神經(jīng)網(wǎng)絡(luò )研究和應用提供強有力的工具。
2 線(xiàn)性神經(jīng)網(wǎng)絡(luò )原理
2.1 線(xiàn)性神經(jīng)網(wǎng)絡(luò )的模型
圖1是具有R個(gè)輸入的單層(有S個(gè)神經(jīng)元)線(xiàn)性神經(jīng)網(wǎng)絡(luò )結構,其權值矩陣為w,閾值向量為b,這種網(wǎng)絡(luò )也稱(chēng)為Madaline網(wǎng)絡(luò )。
2.2 線(xiàn)性神經(jīng)網(wǎng)絡(luò )的學(xué)習規則
線(xiàn)性神經(jīng)網(wǎng)絡(luò )是基于線(xiàn)性神經(jīng)網(wǎng)絡(luò )算法。線(xiàn)性神經(jīng)網(wǎng)絡(luò )采用Widrow-Hoff學(xué)習規則,利用learnwh()函數修正網(wǎng)絡(luò )的權值和閾值。使用Widrow-Hoff學(xué)習規則訓練網(wǎng)絡(luò )某一層的權值和閾值,使其線(xiàn)性逼近一個(gè)函數式。
首先定義一個(gè)線(xiàn)性網(wǎng)絡(luò )的誤差函數:
通過(guò)式(1)可知,線(xiàn)性網(wǎng)絡(luò )具有拋物面型的誤差曲面,因此只有一個(gè)誤差最小值。由于該值取決于網(wǎng)絡(luò )的權值和目標矢量,于是可通過(guò)調整權值使誤差達到最小。Widrow-Hoff學(xué)習規則是通過(guò)沿著(zhù)相對于誤差平方和的最速下降方向,連續調整網(wǎng)絡(luò )的權值和閾值,根據梯度下降法,權值矢量的修正正比于當前位置上的e(w,b)的梯度,對于第i個(gè)輸出節點(diǎn):
式中,η是學(xué)習率。
當η較大時(shí),學(xué)習過(guò)程加速,網(wǎng)絡(luò )收斂較快,但η過(guò)大時(shí),學(xué)習過(guò)程變得不穩定,且誤差增大;δ(i)=t(i)-a(i)。
以上各式為Widrow-Hoff學(xué)習規則最小均方誤差算法(LMS)。Widrow-Hoff學(xué)習規則的權值變化量正比于網(wǎng)絡(luò )的輸出誤差及網(wǎng)絡(luò )的輸入矢量。該算法無(wú)需求導,因此較簡(jiǎn)單,并具有收斂速度快和精度高的優(yōu)點(diǎn)。由于學(xué)習率與學(xué)習過(guò)程比較密切,因此學(xué)習率的取值非常關(guān)鍵。
采用Widrow-Hoff規則訓練的線(xiàn)性網(wǎng)絡(luò ),該網(wǎng)絡(luò )能夠收斂的必要條件是被訓練的輸入矢量必須是線(xiàn)性獨立的,且應適當選擇學(xué)習率。
3 線(xiàn)性神經(jīng)網(wǎng)絡(luò )設計
Matlab神經(jīng)網(wǎng)絡(luò )工具箱中含有易于構建的神經(jīng)網(wǎng)絡(luò )函數。以下詳細說(shuō)明線(xiàn)性神經(jīng)網(wǎng)絡(luò )設計。
3.1 線(xiàn)性神經(jīng)網(wǎng)絡(luò )的Matlab設計
3.1.1 線(xiàn)性神經(jīng)網(wǎng)絡(luò )初始化
初始化是對連接權值和閾值進(jìn)行初始化。initwb()初始化函數是對網(wǎng)絡(luò )的某一層的權值和閾值進(jìn)行初始化,其格式為:net=initwb(net,i)。其中,i表示網(wǎng)絡(luò )的第i層。函數返回為第i層的權值和閾值都更新的網(wǎng)絡(luò )。
3.1.2 訓練網(wǎng)絡(luò )
線(xiàn)性神經(jīng)網(wǎng)絡(luò )初始化后,就可對其訓練。設置參數,諸如學(xué)習步長(cháng)、誤差目標等,同時(shí)在網(wǎng)絡(luò )訓練過(guò)程中,圖形顯示網(wǎng)絡(luò )誤差隨學(xué)習次數的變化而變化。
其格式為:
式中,Pd為延遲輸入;T為每一層的目標向量;Ai為初始輸入條件;Q為輸入向量個(gè)數;TS為時(shí)間步長(cháng);VV為空矩陣或確定的向量結構。
3.1.3 網(wǎng)絡(luò )仿真
仿真甬數sim()用來(lái)網(wǎng)絡(luò )仿真。其格式為:[Y,Pf,Af]=sim(net,{Q TS},Pi,Ai)。其中,Y為訓練好的線(xiàn)性神經(jīng)網(wǎng)絡(luò )的實(shí)際輸出;Pf為最終輸出延遲;Af為最終的層延遲。
3.2 訓練步驟
(1)根據給定的輸入矢量計算網(wǎng)絡(luò )的輸出矢量a=wxp+b,并計算與期望輸出之間的誤差e=t-a;
(2)將網(wǎng)絡(luò )輸出誤差的平方和與期望誤差相比較,如果其值小于期望誤差,或訓練以達到事先設定的最大訓練次數,則終止訓練;否則,繼續訓練;
(3)采用Widfrow-Hoff學(xué)習規則計算新的權值和閾值,并返回至(1)。
4 線(xiàn)性神經(jīng)網(wǎng)絡(luò )在系統辨識中的應用
4.1 工作原理
線(xiàn)性神經(jīng)網(wǎng)絡(luò )用于線(xiàn)性系統辨識必須遵循系統辨識的3個(gè)基本構成原則:(1)選擇在滿(mǎn)足給定的誤差準則下逼近系統的最簡(jiǎn)單模型;(2)輸入信號的頻譜必須足以覆蓋系統的頻譜;(3)誤差準則由誤差的泛函表示。
對于一個(gè)具有m個(gè)輸入和n個(gè)輸出的r階離散線(xiàn)性系統,可由n個(gè)差分方程來(lái)描述,其中第l個(gè)差分方程的一般形式表示為:
式中,aij和bij是方程右邊各項系數,如果某項系數為零,則該項與y1(k)無(wú)關(guān),去掉該項。
從式(5)可以看出,線(xiàn)性系統k時(shí)刻的輸出可以由前面時(shí)刻有關(guān)輸入輸出線(xiàn)性表示,這種關(guān)系類(lèi)似于單層線(xiàn)性神經(jīng)網(wǎng)絡(luò )輸入輸出之間的關(guān)系。根據上述原則(1),建立線(xiàn)性神經(jīng)網(wǎng)絡(luò )以辨識線(xiàn)性系統,神經(jīng)網(wǎng)絡(luò )的輸入由系統輸入輸出信號的時(shí)延序列組成,網(wǎng)絡(luò )的輸入個(gè)數與系統階數有關(guān),神經(jīng)網(wǎng)絡(luò )的輸出代表系統輸出的估計值,網(wǎng)絡(luò )的輸出個(gè)數等于系統輸出個(gè)數。網(wǎng)絡(luò )建立后,根據基本構成原則(2),運用Widrow-Hoff學(xué)習規則訓練神經(jīng)網(wǎng)絡(luò ),反復調節網(wǎng)絡(luò )的權值和閾值,使網(wǎng)絡(luò )輸出y(k)和系統輸出Y(k)之間的輸出誤差不斷減小,直至達到規定精度要求。
4.2 應用實(shí)例
設系統傳遞甬數為用線(xiàn)性神經(jīng)網(wǎng)絡(luò )辨識其脈沖響應。設置如果迭代次數大于10 000或誤差小于0.001時(shí),訓練結束。
采用其工作原理及Widrow-Hoff規則訓練給定系統。訓練過(guò)程中,當迭代的次數大于10 000或誤差小于目標誤差時(shí),訓練結束。圖2為訓練后的訓練誤差及步數曲線(xiàn),由圖2看出,經(jīng)過(guò)7 766步訓練后誤差達到0.000 999 252小于誤差目標e=0.001,訓練結束。
圖3為訓練后的結果與期望結果的比較,圖中,“?”表示訓練值,連續曲線(xiàn)表示理論值。由圖3可見(jiàn),訓練值和理論值基本擬合。
需要注意的是,在訓練過(guò)程中發(fā)現,由于權值的初始值是隨機的,經(jīng)多次訓練,每次的訓練結果都不一樣,有時(shí)訓練到10 000步時(shí)仍然收斂不到0.001。由此可見(jiàn),初始權值的選取對訓練是有一定影響的。選取初始值時(shí)應要根據具體要求而定,不能隨意而定。
5 結語(yǔ)
論述的Widrow-Hoff學(xué)習規則算法可實(shí)現,仿真結果表明Widrow-Hoff學(xué)習規則無(wú)需求導,算法比較簡(jiǎn)單,收斂速度快。采用線(xiàn)性神經(jīng)網(wǎng)絡(luò )辨識系統,無(wú)需建立實(shí)際系統的辨識模式,因為線(xiàn)性神經(jīng)網(wǎng)絡(luò )本身已作為一種辨識模型,可達到很高的辨識速度且擬合精度較高。該方法還可推廣至其他本質(zhì)非線(xiàn)性系統。
評論