完整地神經網絡講解_第1頁
完整地神經網絡講解_第2頁
完整地神經網絡講解_第3頁
完整地神經網絡講解_第4頁
完整地神經網絡講解_第5頁
免費預覽已結束,剩余21頁可下載查看

下載本文檔

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

文檔簡介

1、實用標準文案學習是神經網絡一種最重要也最令人注目的特點。在神經網絡的發(fā)展進程中, 學習算法的研究有著十分重要的地位。目前,人們所提岀的神經網絡模型都是和學習算法相應的。所以,有時人們并不去祈求對模型和算法進行嚴格的定義或區(qū)分。有的模型可以有多種算法.而有的算法可能可用于多種模型。不過,有時人們也稱算法為模型。自從40年代Hebb提岀的學習規(guī)則以來,人們相繼提岀了各種各樣的學習算法。其中以在1986年RUmeIhart 等提岀的誤差反向傳播法,即BP(error BaCkProPagatiOn)法影響最為廣泛。直到今天,BP算法仍然是自動控制上最重要、應用最多的有效算法。1 . 2 . 1神經網

2、絡的學習機理和機構在神經網絡中,對外部環(huán)境提供的模式樣本進行學習訓練,并能存儲這種模式,則稱為感知器; 對外部環(huán)境有適應能力,能自動提取外部環(huán)境變化特征,則稱為認知器。神經網絡在學習中,一般分為有教師和無教師學習兩種。感知器采用有教師信號進行學習,而認知器則采用無教師信號學習的。在主要神經網絡如BP網 絡,HOPfieId 網絡,ART網絡和Kohonen 網絡中;BP網絡和HOPfieId 網絡是需要教師信號才能進行學習的;而 ART網絡和 Koho nen網絡則無需教師信號就可以學習。所謂教師信號,就是在神經網絡學習中由外部提供 的模式樣本信號。一、感知器的學習結構感知器的學習是神經網絡最

3、典型的學習。目前,在控制上應用的是多層前饋網絡,這是一種感知器模型,學習算法是BP法,故是有教師學習算法。一個有教師的學習系統(tǒng)可以用圖1 7表示。這種學習系統(tǒng)分成三個部分:輸入部,訓練部和輸神經網絡的學習一般需要多次重復訓練,使誤差值逐漸向零趨近,最后到達零。則這時才會使輸岀與期望一致。故而神經網絡的學習是消耗一定時期的,有的學習過程要重復很多次,甚至達萬次級。原因在于神經網絡的權系數W有很多分量Wl,W2,-W n ;也即是一個多參數修改系統(tǒng)。系統(tǒng)的參數的調整就必定耗時耗量。目前,提高神經網絡的學習速度,減少學習重復次數是十分重要的研究課題,也是實時控制中的關鍵問題。二、感知器的學習算法感知

4、器是有單層計算單元的神經網絡,由線性元件及閥值元件組成。感知器如圖1-9所示。精彩文檔感知器的數學模型:圖1-9感知器結構ILY = fwixi-i=l(1-12)其中:f.是階躍函數,并且有(1-13)Ii-ITl,u = WiXi-0<O“1是閥值感知器的最大作用就是可以對輸入的樣本分類,故它可作分類器,感知器對輸入信號的分類如下:B(I-14)即是,當感知器的輸出為1時,輸入樣本稱為 A類;輸岀為-1時,輸入樣本稱為 B類。從上可知感知器的分類邊界是:IL(1-15兀 WiXd-B二Oi 1、在輸入樣本只有兩個分量X1,X2時,則有分類邊界條件:即W1 X1 +W 2 X2 - =

5、0(1-17)也可寫成這時的分類情況如固 1 10所示。感知器的學習算法目的在于找尋恰當的權系數W = (w1 . w2 ,,Wn),使系統(tǒng)對一個特定的樣本X = (Xt , x2 ,,Xn)熊產生期望值d。當X分類為A類時,期望值d = 1 ; X為B類 時, d=-1。為了方便說明感知器學習算法,把閥值并人權系數W中,同時,樣本 X也相應增加一個分量Xn+1。故令:Wn+1 =- , Xn+1 =1(1-19)則感知器的輸出可表示為:Y=fwixi (1-20)感知器學習算法步驟如下:1 對權系數W置初值對權系數 W = (W1 W2 ,,Wn , Wn+1 )的各個分量置一個較小的零隨機

6、值,但Wn+1 =g。并記為 Wi (O) , W2 (0) , Wn (0),同時有 Wn+1(0)= - 。這里 Wi (t)為 t 時刻從第 i個輸入上的權系數,i= 1 , 2 ,,n。Wn+1 (t)為t時刻時的閥值。圖1-10感知器的分類例子2 輸入一樣本 X = (Xi , X2 ,,Xn+1 )以及它的期望輸岀 d。期望輸岀值d在樣本的類屬不同時取值不同。如果X是A類,則取d = 1,如果X是B類,則取-1。期望輸岀d也即是教師信號。3 計算實際輸岀值 Y* 1(t) = fLwi(t)xiI= 14 根據實際輸出求誤差 ee = d Y(t) (1-21)5 用誤差e去修改權

7、系數Wi(t* 1) = Wi(t + eXii=1,2,n,n+1(1-22)其中,稱為權重變化率,OV 1在式(1 22)中,的取值不能太大.如果1取值太大則會影響 Wi (t)的穩(wěn)定;的取值也不能太小, 太小則會使Wi (t)的求取過程收斂速度太慢。當實際輸岀和期望值 d相同時有:Wi (t+1)=W i (t)6轉到第2點,一直執(zhí)行到一切樣本均穩(wěn)定為止。從上面式(1 14)可知,感知器實質是一個分類器,它的這種分類是和二值邏輯相應的。因此,感知器可以用于實現(xiàn)邏輯函數。下面對感知器實現(xiàn)邏輯函數的情況作一些介紹。例:用感知器實現(xiàn)邏輯函數Xi VX 2的真值:X10011X20101X1 V

8、 X20111以X1VX2 = 1為A類,以X1VX2=0 為B類,則有方程組Wl0 十 W2-0-fl<0(1-23)W1O÷W2l-0W1l+W2*0-fl0LWrl + Wrl-fl0即有:>0w1LWL ÷ WjS(1-24)從式(1 24)有:Wi ,W2 令 Wi =1,W 2 =2則有: 1取 =0.5則有:X1+X2-0.5=0, 分類情況如圖1 11所示。圖1-11邏輯函數Xi VX 2的分類1. 2 . 2神經網絡學習的梯度算法使到網絡對于所輸入的模式權系數就反映了同類輸人由于權系數是分散存在的,故前面一節(jié)所講的感知器學習算從感如器的學習算法

9、可知, 學習的目的是在于修改網絡中的權系數, 樣本能正確分類。當學習結束時,也即神經網絡能正確分類時,顯然 模式樣本的共同特征。換句話講,權系數就是存儲了的輸人模式。神經網絡自然而然就有分布存儲的特點。前面的感知器的傳遞函數是階躍函數,所以,它可以用作分類器。法因其傳遞函數的簡單而存在局限性。感知器學習算法相當簡單,并且當函數線性可分時保證收斂。但它也存在問題:即函數不是線性可分時,則求不岀結果;另外,不能推廣到一般前饋網絡中。為了克服存在的問題,所以人們提岀另一種算法梯度算法他即是LMS法)。為了能實現(xiàn)梯度算法,故把神經元的激發(fā)函數改為可微分函數,例如Sigmoid 函數,非對稱Sigmoi

10、d 函數為 f(X)=1(1+e-X),對稱 SigmOid 函數 f(X)=(1-e -x )(1+e -x );而不采用式(1 13)的階躍函數。對于給定的樣本集 Xi (i = 1,2,n),梯度法的目的是尋找權系數W* ,使得fW * Xi 與期望輸出Yi盡可能接近。設誤差e采用下式表示:其中,Yi = f W* Xi是對應第i個樣本Xi的實時輸岀Yi是對應第i個樣本Xi的期望輸岀。要使誤差e最小,可先求取 e的梯度:=SfW(I-26)其中:1C(1-27)令 Uk =W Xk ,則有:即有:憲一(Y久卜 F(UJxfc(1-29)最后有按負梯度方向修改權系數W的修改規(guī)則:(1-30

11、)1 =7 I也可寫成:Wk+1-Wk + (-aw> TeWl (I-31)在上式(1 30),式(1 31)中,是權重變化率,它視情況不同而取值不同,一般取0-1之間的小數。很明顯,梯度法比原來感知器的學習算法進了一大步。其關鍵在于兩點:1 神經元的傳遞函數采用連續(xù)的S型函數,而不是階躍函數;2 對權系數的修改采用誤差的梯度去控制,而不是采用誤差去控制。故而有更好的動態(tài)特能,即加強了收斂進程。但是梯度法對于實際學習來說,仍然是感覺太慢;所以,這種算法仍然是不理想的。1 . 2 3反向傳播學習的 BP算法反向傳播算法也稱 BP算法。由于這種算法在本質上是一種神經網絡學習的數學模型,所以

12、,有時也稱為BP模型。BP算法是為了解決多層前向神經網絡的權系數優(yōu)化而提岀來的;所以,BP算法也通常暗示著神經網絡的拓撲結構是一種無反饋的多層前向網絡。故而有時也稱無反饋多層前向網絡為BP模型。在這里,并不要求過于嚴格去爭論和區(qū)分算法和模型兩者的有關異同。感知機學習算法是一種單層網絡的學習算法。在多層網絡中它只能改變最后權系數。因此,感知機學習算法不能用于多層神經網絡的學習。1986 年, RUmelhart 提岀了反向傳播學習算法,即 BP(backpropagatiOn)算法。這 種算法可以對網絡中各層的權系數進行修正,故適用于多層網絡的學習。BP算法是目前最廣泛用的神經網絡學習算法之一,

13、在自動控制中是最有用的學習算法。、BP算法的原理BP算法是用于前饋多層網絡的學習算法,前饋多層網絡的結構一般如圖1 12所示信號圖1-12 網絡學習結構它含有輸人層、輸岀層以及處于輸入輸岀層之間的中間層。中間層有單層或多層,由于它們和外界沒有直接的聯(lián)系, 故也稱為隱層。在隱層中的神經元也稱隱單元。隱層雖然和外界不連接.但是,它們的狀態(tài)則影響輸入輸岀之間的關系。這也是說,改變隱層的權系數,可以改變整個多層神經網絡的性能。設有一個m層的神經網絡,并在輸入層加有樣本 X;設第k層的i神經元的輸入總和表示為Uik,輸岀Xi k ;從第k 1層的第j個神經元到第k層的第i個神經元的權系數為 Wij各個神

14、經元的 激發(fā)函數為f ,則各個變量的關系可用下面有關數學式表示:Xi k =f(U i k )(1-32)姑二孕 WiiXFl(1-33)反向傳播算法分二步進行,即正向傳播和反向傳播。這兩個過程的工作簡述如下。1 正向傳播輸入的樣本從輸入層經過隱單元一層一層進行處理,通過所有的隱層之后,則傳向輸出層;在逐層處理的過程中,每一層神經元的狀態(tài)只對下一層神經元的狀態(tài)產生影響。在輸岀層把現(xiàn)行輸岀和期望輸出進行比較,如果現(xiàn)行輸出不等于期望輸出,則進入反向傳播過程。2 反向傳播反向傳播時,把誤差信號按原來正向傳播的通路反向傳回,并對每個隱層的各個神經元的權系數進行修改,以望誤差信號趨向最小。二、BP算法的

15、數學表達BP算法實質是求取誤差函數的最小值問題。這種算法采用非線性規(guī)劃中的最速下降方法,按誤 差函數的負梯度方向修改權系數。為了說明BP算法,首先定義誤差函數 e。取期望輸岀和實際輸岀之差的平方和為誤差函數,則 有:E=舟莘(XF-Y滬(1-34)其中:Yi是輸出單元的期望值;它也在這里用作教師信號;Xi m是實際輸岀;因為第 m層是輸岀層。由于BP算法按誤差函數 e的負梯度方向修改權系數,故權系數Wij的修改量AW j ,和e(1-35)也可寫成(1-36)其中:為學習速率,即步長。很明顯,根據 BP算法原則,求 ae/aW j最關鍵的。下面求 ae/aW j ;有eeiC NUiIt 1H

16、m c3wij auik 叫(1-37)由于3U刃耳X】j)I3W呷f IUj(1-38)故而(1-39)從而有W - - F衛(wèi)皂I)3Wlj% I二-噸Cjk-I(1-40)令 auLk(1-41)則有學習公式: Wj = - d,cX(1-42)其中:為學習速率,即步長,一般取 0-1間的數。從上面可知,d ik實際仍末給岀明顯的算法公式,下面求 di k的計算公式。de 3XiiE(1-43)從式(1-32)可知在式(1-43)中,有(1-44)為了方便進行求導,取 f為連續(xù)函數。一般取非線性連續(xù)函數,例如Sigmoid 函數。當取f為非對稱SigmOid 函數時,有:f(Uik)ST則

17、有:f'(U i k )=f'(U i k )(1-f(U i k )=X i k (1-X i k )(1-45)再考慮式(1 43)中的偏微分項ae /aXi k ,有兩種情況需考慮的:如果k = m ,則是輸岀層,這時有Yi是輸岀期望值,它是常數。從式(1-34)有% %3Xit _ 旳= CXim-Yi)(1-46)從而有 di m =X i m (1-X i m )(X i m -Yi )(1-47)2 如果k<m ,則該層是隱層這時應考慮上一層對它的作用,故有:-.才型T JXjk TaUlk+l ax?(1-48)從式(1 41)中,可知有:k+l(1-49

18、)從式(1 33)中,可知有:aikaxjtILlj=I(1-50)故而有 = w11-d,k(1-51)最后有:4lC=XiiC(I -X>vwi÷1(1-52)從上述過程可知:多層網絡的訓練方法是把一個樣本加到輸入層,并根據向前傳播的規(guī)則:Xi k =f(U i k )不斷一層一層向輸出層傳遞,最終在輸出層可以得到輸出Xi m。把Xim和期望輸岀Yi進行比較如果兩者不等,則產生誤差信號e,接著則按下面公式反向傳播修改權系數:AWij= -dit(1-53)其中di m =Xim (1-X i m )(Xim-Yi)dik = Xit(l-Xik)id1k+1上面公式中,求取

19、本層dik時,要用到高一層的 dik+1 ;可見,誤差函數的求取是從輸岀層開始, 到輸入層的反向傳播過程。在這個過程中不斷進行遞歸求誤差。通過多個樣本的反復訓練,同時向誤差漸漸減小的方向對權系數進行修正,以達最終消除誤差。從上面公式也可以知道,如果網絡的層數較多時,所用的計算量就相當可觀,故而收斂速度不快。為了加快收斂速度,一般考慮上一次的權系數,并以它作為本次修正的依據之一,故而有修正公式:wit+l)= -dik-Xjk-I+<tWt)(1-54)其中:為學習速率,即步長,n = 0. 1 0 . 4左右為權系數修正常數,取O . 7 0 . 9左右。在上面,式(1 53)也稱為一般化的 Delta法則。對于沒有隱層的神經網絡,可取 WijYj-Xj)- Xi (1-55)其中:,Yi為期望輸出;Xj為輸出層的實際輸出;Xi為輸入層的輸入。這顯然是一種十分簡單的情況,式(1 55)也稱為簡單 Delta法則。在實際應用中,只有一般化的 Delta法則式(1 53)或式(1 54)才有意義。簡單Delta法則式(1 55)只在理論推導上有用。三、BP算法的執(zhí)行步驟在反向傳播算法應用于前饋多層網絡時,采用Sigmoid為激發(fā)面數時,可用下列步驟對網絡的權系數 Wij進行遞歸求取。注意對于每層有 n個神經元的時候

溫馨提示

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

評論

0/150

提交評論