第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法_第1頁(yè)
第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法_第2頁(yè)
第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法_第3頁(yè)
第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法_第4頁(yè)
第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第2章單層前向網(wǎng)絡(luò)及LMS學(xué)習(xí)算法在眾多人工神經(jīng)網(wǎng)絡(luò)模型中,最為簡(jiǎn)單的就是所謂的單層前向網(wǎng)絡(luò),它是指擁有的計(jì)算節(jié)點(diǎn)(神經(jīng)元)是“單層”的。本章所要介紹的單層感知器(Perceptron)和自適應(yīng)線(xiàn)性元件(Adaptive Linear Element,Adaline )模型均屬于典型單層前向網(wǎng)絡(luò)。感知器是由美國(guó)學(xué)者Rosenblatt在1958年首次提出的作為有導(dǎo)師學(xué)習(xí)(也即是有監(jiān)督學(xué)習(xí))的模型。單層感知器是指包含一個(gè)突觸權(quán)值可調(diào)的神經(jīng)元的感知器模型,它的訓(xùn)練算法是Rosenblatt在1958年和1962年提出的。感知器是神經(jīng)網(wǎng)絡(luò)用來(lái)進(jìn)行模式識(shí)別的一種最簡(jiǎn)單模型,但是由單個(gè)神經(jīng)元組成的單層感

2、知器只能用來(lái)實(shí)現(xiàn)線(xiàn)性可分的兩類(lèi)模式的識(shí)別。在信號(hào)處理領(lǐng)域,單個(gè)神經(jīng)元也用來(lái)作為自適應(yīng)線(xiàn)性元件進(jìn)行自適應(yīng)濾波,Widrow和Hoff在1960年提出了易實(shí)現(xiàn)但效率高的自適應(yīng)濾波的LMS算法(Least-Mean-Square algorithm, LMS),可稱(chēng)之為最小均方誤差規(guī)則或梯度算法,也稱(chēng)規(guī)則(Delta rule)。感知器和LMS算法在歷史上幾乎同時(shí)提出的,并且兩者在對(duì)權(quán)值的調(diào)整的算法非常相似,它們都是基于糾錯(cuò)學(xué)習(xí)規(guī)則的學(xué)習(xí)算法。LMS算法由于其容易實(shí)現(xiàn)而很快得到了廣泛的應(yīng)用,成為自適應(yīng)濾波的標(biāo)準(zhǔn)算法。本章將首先介紹單層感知器及其學(xué)習(xí)算法,然后介紹自適應(yīng)線(xiàn)性元件以及LMS算法,最后結(jié)合

3、討論的問(wèn)題給出典型算法的仿真實(shí)例。2.1單層感知器 感知器模型是由美國(guó)學(xué)者F. Rosenblatt于1958年提出的。它與MP模型的不同之處是假定神經(jīng)元的突觸權(quán)值是可變的,這樣就可以進(jìn)行學(xué)習(xí)。感知器模型在神經(jīng)網(wǎng)絡(luò)研究中有著重要的意義和地位,因?yàn)楦兄髂P桶俗越M織、自學(xué)習(xí)的思想。2.1.1單層感知器模型單層感知器模型如圖2.1所示,它包括一個(gè)線(xiàn)性的累加器和一個(gè)二值閾值元件,同時(shí)還有一個(gè)外部偏差b。線(xiàn)性累加器的輸出作為二值閾值元件的輸入,這樣當(dāng)二值閾值元件的輸入是正數(shù),神經(jīng)元就產(chǎn)生輸出+1,反之,若其輸入是負(fù)數(shù),則產(chǎn)生輸出-1。即: (2.1) (2.2)圖2.1 單層感知器使用單層感知器的

4、目的就是讓其對(duì)外部輸入x1, x2, , xm進(jìn)行識(shí)別分類(lèi),單層感知器可將外部輸入分為兩類(lèi)l1和l2。當(dāng)感知器的輸出為+1時(shí),我們認(rèn)為輸入x1, x2, , xm屬于l1類(lèi),當(dāng)感知器的輸出為-1時(shí),認(rèn)為輸入x1, x2, , xm屬于l2類(lèi),從而實(shí)現(xiàn)兩類(lèi)目標(biāo)的識(shí)別。在m維信號(hào)空間,單層感知器進(jìn)行模式識(shí)別的判決超平面有下式?jīng)Q定: (2.3)在圖2.2中我們給出了一種只有兩個(gè)輸入x1和x2的判決超平面的情況,它的判決邊界是直線(xiàn):。圖2.2兩類(lèi)模式識(shí)別的判定問(wèn)題決定判決邊界是直線(xiàn)的主要參數(shù)是權(quán)值向量w1和w2,通過(guò)合適的學(xué)習(xí)算法可訓(xùn)練出滿(mǎn)意的w1和w2。2.1.2單層感知器的學(xué)習(xí)算法單層感知器對(duì)權(quán)值

5、向量的學(xué)習(xí)算法是基于迭代的思想,通常是采用糾錯(cuò)學(xué)習(xí)規(guī)則的學(xué)習(xí)算法。為方便起見(jiàn),將偏差b作為神經(jīng)元突觸權(quán)值向量的第一個(gè)分量加到權(quán)值向量中去,那么對(duì)應(yīng)的輸入向量也應(yīng)增加一項(xiàng),可設(shè)輸入向量的第一個(gè)分量固定為+1,這樣輸入向量和權(quán)值向量可分別寫(xiě)成如下的形式: (2.4) (2.5)其中的變量n表示迭代次數(shù),其中的b(n)可用w0(n) 表示,則二值閾值元件的輸入可重新寫(xiě)為: (2.6)令(2.6)式等于零,即可得在m維信號(hào)空間的單層感知器的判決超平面。學(xué)習(xí)算法如下:第一步:設(shè)置變量和參量:X(n)= 1, x1(n), x2(n), , xm(n)為輸入向量,或稱(chēng)訓(xùn)練樣本;W(n)= b(n), w1

6、(n), w2(n), , wm(n)為權(quán)值向量;b(n) 為偏差;y(n)為實(shí)際輸出;d(n)為期望輸出;為學(xué)習(xí)速率;n為迭代次數(shù)。第二步:初始化,賦給Wj(0)各一個(gè)較小的隨機(jī)非零值, n = 0;第三步:對(duì)于一組輸入樣本X(n)= 1, x1(n), x2(n), , xm(n),指定它的期望輸出(亦稱(chēng)之為導(dǎo)師信號(hào))。,。第四步:計(jì)算實(shí)際輸出: (2.7)第五步:調(diào)整感知器的權(quán)值向量: (2.8)第六步:判斷是否滿(mǎn)足條件,若滿(mǎn)足算法結(jié)束,若不滿(mǎn)足將n值增加1,轉(zhuǎn)到第三步重新執(zhí)行。注意:在以上學(xué)習(xí)算法的第六步需要判斷是否滿(mǎn)足條件,這里的條件可以是:誤差小于我們?cè)O(shè)定的值,即:;或者是權(quán)值的變

7、化已很小,即。另外,在實(shí)現(xiàn)過(guò)程中還應(yīng)設(shè)定最大的迭代次數(shù),以防止算法不收斂時(shí),程序進(jìn)入死循環(huán)。在感知器學(xué)習(xí)算法中,重要的是引入了一個(gè)量化的期望輸出d(n),其定義為: (2.9)這樣,就可以采用糾錯(cuò)學(xué)習(xí)規(guī)則對(duì)權(quán)值向量進(jìn)行逐步修正。對(duì)于線(xiàn)性可分的兩類(lèi)模式,可以證明單層感知器的學(xué)習(xí)算法是收斂的,即通過(guò)學(xué)習(xí)調(diào)整突觸權(quán)值可以得到合適的判決邊界,正確區(qū)分兩類(lèi)模式。如圖2.3(a)所示。而對(duì)于線(xiàn)性不可分的兩類(lèi)模式,如圖2.3(b)所示,無(wú)法用一條直線(xiàn)區(qū)分兩類(lèi)模式。因而單層感知器的學(xué)習(xí)算法是不收斂的,即單層感知器無(wú)法正確區(qū)分線(xiàn)性不可分的兩類(lèi)模式。 (a) (b)圖2.3 線(xiàn)性可分與不可分的問(wèn)題對(duì)于以上所述的問(wèn)

8、題可用單層感知器實(shí)現(xiàn)邏輯函數(shù)來(lái)進(jìn)一步說(shuō)明。x1x2 x1 x2Y=w1·x1w2·x2b=0條件“與” 000Y=w1·0w2·0b<0b>0010Y=w1·0w2·1b<0b>w2100Y=w1·1w2·0b<0b>w1111Y=w1·1w2·1b0bw1w2 可解。比如取w1=1,w2=1,b=1.5。 “或”000Y=w1·0w2·0b<0b>0011Y=w1·0w2·1b0bw2101Y=w1

9、3;1w2·0b0bw1111Y=w1·1w2·1b0bw1w2 可解。比如取w1=1,w2=1,b=0.5。“異或”000Y=w1·0w2·0b<0b>0011Y=w1·0w2·1b0bw2101Y=w1·1w2·0b0bw1110Y=w1·1w2·1b<0b>w1w2 無(wú)解,即無(wú)法得到w1、w2和b滿(mǎn)足條件。如圖2.4所示,邏輯運(yùn)算的結(jié)果“0”代表 l1類(lèi),用空心小圓表示;邏輯運(yùn)算的結(jié)果“1”代表 l2類(lèi),用實(shí)心小圓表示??梢?jiàn)單層感知器可實(shí)現(xiàn)邏輯“與”運(yùn)算、

10、邏輯“或”運(yùn)算,即總可以得到一條直線(xiàn)將“0”和“1”區(qū)分開(kāi)來(lái),但單層感知器不可實(shí)現(xiàn)邏輯“異或”運(yùn)算,即無(wú)法用一條直線(xiàn)將“0”和“1”區(qū)分開(kāi)。 “與”“或” “異或” 圖2.4 邏輯運(yùn)算問(wèn)題圖示單層感知器無(wú)法解決線(xiàn)性不可分的兩類(lèi)模式識(shí)別問(wèn)題,采用多層感知器可解決此類(lèi)問(wèn)題。關(guān)于多層感知器將在第3章詳細(xì)介紹。2.2自適應(yīng)線(xiàn)性元件自適應(yīng)線(xiàn)性元件(Adaptive Linear Element,Adaline )模型是由美國(guó)斯坦福大學(xué)的Widrow和Hoff于1961年提出的。自適應(yīng)線(xiàn)性元件模型如圖2.5所示。神經(jīng)元i的輸入信號(hào)向量:。突觸權(quán)值向量:w0i常接有單位輸入,用以控制閾值電平。模擬輸出:二值

11、輸出:圖2.5自適應(yīng)線(xiàn)性元件單個(gè)神經(jīng)元具有m個(gè)二進(jìn)制輸入,共有2m個(gè)可能的輸入模式,單個(gè)神經(jīng)元具有一個(gè)模擬輸出和一個(gè)二值輸出。自適應(yīng)線(xiàn)性元件的學(xué)習(xí)算法采用LMS算法。單個(gè)神經(jīng)元只能實(shí)現(xiàn)線(xiàn)性可分函數(shù)。假定只有兩個(gè)輸入x1和x2,則自適應(yīng)線(xiàn)性元件的模擬輸出為: 調(diào)整臨界閾值條件,可令模擬輸出為零,即 該方程為直線(xiàn)方程,即單個(gè)自適應(yīng)線(xiàn)性元件實(shí)現(xiàn)線(xiàn)性可分函數(shù)。如圖2.6所示,通過(guò)學(xué)習(xí)總是可以得到一條直線(xiàn)將空心小圓和實(shí)心小圓劃分開(kāi)來(lái)。圖2.6 自適應(yīng)線(xiàn)性元件的線(xiàn)性可分性圖示用自適應(yīng)線(xiàn)性元件實(shí)現(xiàn)非線(xiàn)性可分函數(shù)的方法有兩種,一是對(duì)神經(jīng)元施加非線(xiàn)性輸入函數(shù),如圖2.7所示。圖2.7自適應(yīng)非線(xiàn)性元件 若令y =

12、 0 ,上式為曲線(xiàn)方程,即通過(guò)選擇W,可實(shí)現(xiàn)非線(xiàn)性函數(shù),使得自適應(yīng)線(xiàn)性元件具有非線(xiàn)性可分性。如圖2.8所示,虛線(xiàn)表示的曲線(xiàn)將分別用空心小圓和實(shí)心小圓所表示的兩類(lèi)區(qū)分開(kāi)了。圖2.8自適應(yīng)線(xiàn)性元件的非線(xiàn)性可分性另一種實(shí)現(xiàn)非線(xiàn)性可分函數(shù)的方法是由多個(gè)自適應(yīng)線(xiàn)性元件和AND邏輯器件構(gòu)成的,所謂MADALINES 網(wǎng)絡(luò)。如圖2.9所示。圖2.9 MADALINES 網(wǎng)絡(luò)其原理是實(shí)現(xiàn)多個(gè)線(xiàn)性函數(shù),對(duì)線(xiàn)性不可分區(qū)域進(jìn)行劃分。如圖2.10所示,兩條虛直線(xiàn)將分別用空心小圓和實(shí)心小圓所表示的兩類(lèi)區(qū)分開(kāi)了。圖2.10 MADALINES 網(wǎng)絡(luò)實(shí)現(xiàn)線(xiàn)性不可分區(qū)域的劃分自適應(yīng)線(xiàn)性元件的學(xué)習(xí)算法采用LMS算法。2.3 L

13、MS學(xué)習(xí)算法感知器和自適應(yīng)線(xiàn)性元件在歷史上幾乎是同時(shí)提出的,并且兩者在對(duì)權(quán)值的調(diào)整的算法非常相似,它們都是基于糾錯(cuò)學(xué)習(xí)規(guī)則的學(xué)習(xí)算法。感知器算法存在如下問(wèn)題:(1)不能推廣到一般的前向網(wǎng)絡(luò)中去;(2)函數(shù)不是線(xiàn)性可分時(shí),得不出任何結(jié)果。而由美國(guó)斯坦福大學(xué)的Widrow和Hoff在研究自適應(yīng)理論時(shí)提出的LMS算法,由于其容易實(shí)現(xiàn)而很快得到了廣泛的應(yīng)用,成為自適應(yīng)濾波的標(biāo)準(zhǔn)算法。設(shè)e(n)為在時(shí)刻n時(shí)的誤差信號(hào): (2.10)其中參數(shù)的含義如前所述。用采用“瞬時(shí)”值均方誤差作為代價(jià)函數(shù): (2.11)對(duì)(2.10)和(2.11)式兩邊求關(guān)于權(quán)值向量W的導(dǎo)數(shù)可得: (2.12) (2.13)從(2.

14、12)和(2.13)式又可得: (2.14)為使誤差盡快減小,令權(quán)值沿著誤差函數(shù)負(fù)梯度方向改變,即: (2.15)這樣就可以得到LMS算法調(diào)整突觸權(quán)值的公式: (2.16)其中是學(xué)習(xí)速率因子,表示單位矩陣。LMS算法第一步:設(shè)置變量和參量:X(n)= 1, x1(n), x2(n), , xm(n)為輸入向量,或稱(chēng)訓(xùn)練樣本;W(n)= b(n), w1(n), w2(n), , wm(n)為權(quán)值向量;b(n) 為偏差;y(n)為實(shí)際輸出;d(n)為期望輸出;為學(xué)習(xí)速率;n為迭代次數(shù)。第二步:初始化,賦給Wj(0)各一個(gè)較小的隨機(jī)非零值, n = 0;第三步:對(duì)于一組輸入樣本X(n)= 1, x

15、1(n), x2(n), , xm(n)和對(duì)應(yīng)的期望輸出,計(jì)算:第四步:判斷是否滿(mǎn)足條件,若滿(mǎn)足算法結(jié)束,若不滿(mǎn)足將n值增加1,轉(zhuǎn)到第三步重新執(zhí)行。注意:在以上學(xué)習(xí)算法的第四步需要判斷是否滿(mǎn)足條件,這里的條件可以是:誤差小于我們?cè)O(shè)定的值,即: ;或者是權(quán)值的變化已很小,即。另外,在實(shí)現(xiàn)過(guò)程中還應(yīng)設(shè)定最大的迭代次數(shù),以防止算法萬(wàn)一不收斂時(shí),程序進(jìn)入死循環(huán)。LMS算法中的學(xué)習(xí)速率因子對(duì)LMS算法影響較大。當(dāng)取比較小的值時(shí),LMS算法的自適應(yīng)過(guò)程就比較慢,LMS算法就記憶了更多的過(guò)去數(shù)據(jù),從而LMS算法的結(jié)果就更加精確。也就是說(shuō),LMS算法的運(yùn)行時(shí)間和學(xué)習(xí)速率因子成反比,或者說(shuō),學(xué)習(xí)速率因子的倒數(shù)就

16、表示了LMS算法的記憶容量。從LMS算法公式(2.16)可見(jiàn),LMS算法的穩(wěn)定性是受輸入向量X(n)的統(tǒng)計(jì)特性和學(xué)習(xí)速率因子的值影響的。若X(n)是來(lái)自確知統(tǒng)計(jì)特性環(huán)境的輸入向量,則LMS算法的穩(wěn)定性就取決于學(xué)習(xí)速率因子。判斷LMS算法的收斂性是比較復(fù)雜的。為了能從數(shù)學(xué)上分析LMS算法的收斂性,Widrow于1976年提出了所謂的“不相關(guān)理論”(Independence Theory),為此作出以下四點(diǎn)假設(shè):(1) 相繼的輸入向量X(1), X(2),是相互不相關(guān)的;(2) 在抽樣時(shí)刻n,輸入向量X(n)與所有的在n以前的期望輸出d(1), d(2), ,d(n-1)是不相關(guān)的;(3) 在抽樣

17、時(shí)刻n,期望輸出d(n)與輸入向量X(n)有關(guān),但與所有的在n以前的期望輸出d(1), d(2), ,d(n-1)是不相關(guān)的;(4) 輸入向量X(n)與預(yù)期響應(yīng)d(n)均來(lái)自符合高斯分布的環(huán)境。根據(jù)“不相關(guān)理論”和假定學(xué)習(xí)速率因子取值足夠小,Haykin在1996年說(shuō)明了LMS算法是按方差收斂的,只要學(xué)習(xí)速率因子滿(mǎn)足下式: (2.17)其中max是輸入向量X(n)自相關(guān)矩陣Rx的最大特征值。在LMS算法的實(shí)際應(yīng)用的場(chǎng)合,max并不可知,為此通常使用自相關(guān)矩陣Rx的跡trRx作為max的估計(jì)值,trRx是自相關(guān)矩陣Rx的對(duì)角線(xiàn)元素之和,根據(jù)數(shù)學(xué)知識(shí)可知,由于trRx>max,可取為: (2

18、.18)而輸入向量的自相關(guān)矩陣Rx的每個(gè)對(duì)角元素就是相應(yīng)讀出輸入的均方值,所以(2.18)又可以寫(xiě)成如下形式: (2.19)因此,當(dāng)學(xué)習(xí)速率因子滿(mǎn)足(2.19)式時(shí),我們便可判定LMS算法收斂。另外,一種非正規(guī)但簡(jiǎn)單實(shí)用判定LMS算法收斂的方法就是:以迭代次數(shù)n為橫坐標(biāo),以誤差信號(hào)的均方差E(n)為縱坐標(biāo),畫(huà)出學(xué)習(xí)曲線(xiàn),從學(xué)習(xí)曲線(xiàn)的單調(diào)性來(lái)判定LMS算法是否收斂。標(biāo)準(zhǔn)的LMS算法學(xué)習(xí)曲線(xiàn)如圖2.11所示。圖2.11 LMS算法的理想學(xué)習(xí)曲線(xiàn)對(duì)一個(gè)收斂的LMS算法,學(xué)習(xí)曲線(xiàn)從一個(gè)大的E(0)值開(kāi)始,E(0)由初始條件決定的;然后按某種速率下降,最終收斂到一個(gè)穩(wěn)定的值E()。通過(guò)學(xué)習(xí)曲線(xiàn)我們可以定

19、義LMS算法的收斂速率為E(0)下降到某個(gè)預(yù)設(shè)的值,如初始值E(0)的10%時(shí)所需的迭代次數(shù)n。學(xué)習(xí)速率因子對(duì)收斂速率和學(xué)習(xí)精度有很大的影響,最簡(jiǎn)單的方法是按公式(2.19)取為常數(shù)。即: (2.20)在隨機(jī)近似過(guò)程中,可將學(xué)習(xí)速率因子看成是時(shí)變的,即: (2.21)其中c是一個(gè)不能太大常量。綜合考慮收斂速率和學(xué)習(xí)精度,學(xué)習(xí)速率因子應(yīng)先取較大的值,保證收斂速率,隨著迭代次數(shù)的增加的值也應(yīng)該較小以保證精度。Darken和Moody于1992年結(jié)合(2.20)和(2.21)兩式,提出了所謂的搜索-收斂的方案(Search-then-Converge Schedule),即學(xué)習(xí)速率的退火算法。其定義

20、如下: (2.22)其中,和是預(yù)設(shè)的常量。分析上式可知,在自適應(yīng)的迭代開(kāi)始時(shí),迭代次數(shù)n小于搜索時(shí)間常量,此時(shí)約等于,隨著迭代次數(shù)n增大并大于搜索時(shí)間常量時(shí),學(xué)習(xí)速率因子就近似于,其中,此時(shí)算法如同一個(gè)傳統(tǒng)的隨機(jī)近似算法,從而權(quán)值向量將收斂到一組最優(yōu)值的集合。這說(shuō)明了學(xué)習(xí)速率因子的搜索-收斂計(jì)劃可以同時(shí)具備了標(biāo)準(zhǔn)LMS算法和傳統(tǒng)隨機(jī)近似算法的特性。如圖2.12所示。圖2.12 學(xué)習(xí)速率的退火算法以上討論了LMS算法及其收斂性。從中可以看出LMS算法的主要優(yōu)點(diǎn)就是它容易實(shí)現(xiàn),另外,LMS算法是模型無(wú)關(guān)的,從而魯棒性比較好。所謂魯棒性好是指小的模型不確定性和小能量的干擾只能引起小的誤差信號(hào)。Has

21、sibi等人在1993和1996年提出了LMS算法按準(zhǔn)則是最優(yōu)的。準(zhǔn)則的基本意思是指如果不知道要面對(duì)是什么,那么就按最壞的打算并進(jìn)行優(yōu)化處理。準(zhǔn)則的提出為L(zhǎng)MS算法的廣泛應(yīng)用奠定了堅(jiān)實(shí)的基礎(chǔ),特別準(zhǔn)則可以解釋LMS算法不僅可以適用于平穩(wěn)過(guò)程,而且適用于非平穩(wěn)過(guò)程,這里非平穩(wěn)過(guò)程是指其中的統(tǒng)計(jì)量隨時(shí)間變化。LMS算法的一個(gè)主要缺點(diǎn)就是它的收斂速度慢以及它對(duì)輸入向量的特征值結(jié)構(gòu)的敏感性。LMS算法的收斂速度慢主要體現(xiàn)在它需要迭代相當(dāng)于輸入向量空間維數(shù)的10倍次數(shù)才能收斂到一個(gè)穩(wěn)定狀態(tài);LMS算法對(duì)環(huán)境條件改變的敏感性主要是它對(duì)輸入向量X(n)的自相關(guān)矩陣Rx的條件數(shù)的改變敏感,當(dāng)條件數(shù)是個(gè)大的數(shù)時(shí)

22、,我們就稱(chēng)環(huán)境是病態(tài)的。當(dāng)訓(xùn)練用的輸入向量X(n)來(lái)自病態(tài)的環(huán)境時(shí),LMS算法對(duì)條件數(shù)的敏感就更加突出。 2.4 仿真實(shí)例【例2.1】試用單層感知器,實(shí)現(xiàn)邏輯“與”和“或”運(yùn)算。解:先考慮邏輯“與”運(yùn)算的實(shí)現(xiàn)。對(duì)于“與”運(yùn)算,即可將問(wèn)題轉(zhuǎn)化為:輸入矢量為:P=0 0 1 1;0 1 0 1;目標(biāo)矢量為:T=0 0 0 1。于是,可以按要求列出如下不等式組:x1x2 x1 x2Y=w1·x1w2·x2b=0條件000Y=w1·0w2·0b<0b>0010Y=w1·0w2·1b<0b>w2100Y=w1·

23、1w2·0b<0b>w1111Y=w1·1w2·1b0bw1w2在Matlab中,對(duì)于本例可以在二維平面坐標(biāo)中給出仿真過(guò)程的圖形表示。如圖2.13所示,根據(jù)輸入矢量和目標(biāo)矢量關(guān)系,將它們繪制于坐標(biāo)平面中。目標(biāo)矢量為1輸出的輸入矢量用“+”表示,而目標(biāo)矢量為0輸出的輸入矢量用“o”表示。圖2.14給出了Matlab中所設(shè)計(jì)的單層感知器在某次訓(xùn)練過(guò)程中,由權(quán)值形成的劃分直線(xiàn)。虛線(xiàn)表示前幾次的訓(xùn)練劃分結(jié)果,實(shí)線(xiàn)則表示訓(xùn)練結(jié)束后的最終劃分結(jié)果。顯然,前幾次目標(biāo)未能正確的劃分開(kāi),而訓(xùn)練結(jié)束后最終劃分結(jié)果是正確的。驗(yàn)證了單層感知器可以實(shí)現(xiàn)邏輯“與”運(yùn)算,而事實(shí)上,

24、上述不等式組也是有解的。圖2.13 輸入矢量位置圖圖2.14 單層感知器訓(xùn)練過(guò)程在Matlab中,只要用下述命令即可對(duì)訓(xùn)練好的單層感知器網(wǎng)絡(luò)輸出結(jié)果進(jìn)行驗(yàn)證:>> A=hardlim(W*P,B)A = 0 0 0 1其中hardlim()函數(shù)是單層感知器的二值閾值函數(shù)。設(shè)計(jì)的感知器對(duì)不同的初始化條件可能得到不同的結(jié)果,即分類(lèi)線(xiàn)不同,但都可以解決問(wèn)題。對(duì)于邏輯“或”運(yùn)算,只需改變上面設(shè)計(jì)時(shí)的輸入輸出,即可類(lèi)似的實(shí)現(xiàn)。【例2.2】用單層感知器解決一個(gè)簡(jiǎn)單的分類(lèi)問(wèn)題。設(shè)計(jì)一個(gè)感知器,將二維的四組輸入矢量分成兩類(lèi)。輸入矢量為:P=-0.5 -0.5 0.3 0;-0.5 0.5 -0.5

25、 1; 目標(biāo)矢量為:T=1 1 0 0。解: 對(duì)感知器的圖解分析可知,感知器對(duì)輸入矢量的分類(lèi)實(shí)質(zhì)是在輸入矢量空間,用w*x+b=0的分割線(xiàn)對(duì)輸入矢量進(jìn)行切割而達(dá)到分類(lèi)的目的。根據(jù)這個(gè)原理,對(duì)此例中二維四組輸入矢量的分類(lèi)問(wèn)題,可以用下述不等式組來(lái)等價(jià)的表式出:實(shí)際上,可以用代數(shù)求解法來(lái)求出上面不等式中的參數(shù)。其解的范圍為: 一組可能解為:本例的分類(lèi)問(wèn)題是線(xiàn)性可分的,可以用單層感知器解決。所要設(shè)計(jì)的單層感知器的網(wǎng)絡(luò)結(jié)構(gòu)如圖2.15所示: 圖2.15 例2.2中單層感知器的網(wǎng)絡(luò)結(jié)構(gòu)與上例類(lèi)似,在Matlab中仿真過(guò)程的圖形表示如圖2.16和圖2.17所示。圖2.16 輸入矢量位置圖圖2.17 單層感

26、知器訓(xùn)練過(guò)程同樣可以用函數(shù)hardlim()來(lái)驗(yàn)證網(wǎng)絡(luò)的結(jié)果。另外,我們可以將非訓(xùn)練樣本輸入網(wǎng)絡(luò),看看網(wǎng)絡(luò)的分類(lèi)結(jié)果。比如,對(duì)向量1.5;0.5:>> A=simup(1.5;0.5,W,B)A =0網(wǎng)絡(luò)能夠合理的響應(yīng)被訓(xùn)練以外的輸入,這個(gè)性質(zhì)稱(chēng)為泛化性能。【例2.3】用單層感知器實(shí)現(xiàn)多個(gè)神經(jīng)元的分類(lèi)。若將例2.2的輸入矢量和目標(biāo)矢量增加為10組的二元矩陣,即輸入矢量為:P=0.1 0.7 0.8 0.8 1.0 0.3 0.0 -0.3 -0.5 -1.5;1.2 1.8 1.6 0.6 0.8 0.5 0.2 0.8 -1.5 -1.3;所對(duì)應(yīng)的10組二元目標(biāo)矢量為:T=1 1

27、 1 0 0 1 1 1 0 0;0 0 0 0 0 1 1 1 1 1;解:由于增加了矢量數(shù)組,必然增加了解決問(wèn)題的復(fù)雜程度。這個(gè)問(wèn)題要是用一般的方法來(lái)解決是相當(dāng)困難和費(fèi)時(shí)的,它需要解一個(gè)具有6個(gè)變量的20個(gè)約束不等式。而通過(guò)單層感知器來(lái)解決此問(wèn)題就顯示出它的優(yōu)越性。和例2.2程序相同,只要輸入新的P和T,重新訓(xùn)練感知器,即可得出訓(xùn)練的結(jié)果。根據(jù)輸入矢量和目標(biāo)矢量可得:網(wǎng)絡(luò)的源節(jié)點(diǎn)數(shù)為2,輸出層節(jié)點(diǎn)數(shù)也為2,由此可以畫(huà)出本例中所要設(shè)計(jì)的單層感知器的網(wǎng)絡(luò)結(jié)構(gòu)如圖2.18所示。圖2.18 例2.3中單層感知器的網(wǎng)絡(luò)結(jié)構(gòu)圖2.19給出了所設(shè)計(jì)的單層感知器的劃分結(jié)果。其中虛線(xiàn)表示初始劃分線(xiàn),實(shí)線(xiàn)表示

28、最終劃分線(xiàn)。圖2.19 單層感知器的劃分結(jié)果【例2.4】線(xiàn)性不可分輸入矢量。由于單層感知器對(duì)輸入矢量空間只能線(xiàn)性的進(jìn)行輸出0或1的分類(lèi),它們只能劃分具有線(xiàn)性可分的輸入矢量組。如果在輸入矢量組和它所對(duì)應(yīng)的0,1目標(biāo)之間不能用直線(xiàn)進(jìn)行劃分,那么單層感知器就不能正確的分類(lèi)出輸入矢量。在例2.2中,加入一個(gè)新的輸入矢量,使之成為:輸入矢量為:P=-0.5 -0.5 0.3 0 -0.8;-0.5 0.5 -0.5 1 0; 目標(biāo)矢量為:T=1 1 0 0 0??梢灾貜?fù)使用前面的仿真程序,但是網(wǎng)絡(luò)并沒(méi)有解決問(wèn)題。如圖2.20所示,根據(jù)輸入矢量和目標(biāo)矢量關(guān)系,將它們繪制于坐標(biāo)平面中。顯然,一條直線(xiàn)無(wú)法將它

29、們分開(kāi)。在感知器的應(yīng)用中,這類(lèi)線(xiàn)性不可分問(wèn)題都可歸結(jié)為“異或”問(wèn)題。可用多層網(wǎng)絡(luò)結(jié)構(gòu)解決。圖2.20 輸入矢量位置圖【例2.5】設(shè)計(jì)自適應(yīng)線(xiàn)性元件,實(shí)現(xiàn)從輸入矢量到輸出矢量的變換關(guān)系,其輸入矢量和輸出矢量分別為:P=1.0 -1.2;T=0.5 1.0。解:用自適應(yīng)線(xiàn)性元件求解問(wèn)題時(shí),首先要確定期望誤差值,以及最大循環(huán)次數(shù)。對(duì)該例題可選err_goal=0.001;max_epoch=20。如圖2.21所示是在Matlab中設(shè)計(jì)的自適應(yīng)線(xiàn)性元件進(jìn)行仿真求解時(shí),網(wǎng)絡(luò)的學(xué)習(xí)曲線(xiàn)。用線(xiàn)性層仿真函數(shù)simulin( )來(lái)檢測(cè)訓(xùn)練好的網(wǎng)絡(luò):>> A=simulin(P,W,B)A = 0.4

30、775 0.9901由結(jié)果可以看出,對(duì)于特別簡(jiǎn)單的問(wèn)題,采用自適應(yīng)線(xiàn)性元件的訓(xùn)練不一定能夠得到足夠精確的解。因?yàn)楫?dāng)訓(xùn)練誤差達(dá)到期望誤差值后,訓(xùn)練即被終止。對(duì)于具有零誤差的自適應(yīng)線(xiàn)性元件,即輸入/輸出矢量對(duì)存在著嚴(yán)格的線(xiàn)性關(guān)系,網(wǎng)絡(luò)的設(shè)計(jì)也可以通過(guò)采用神經(jīng)網(wǎng)絡(luò)工具箱中相對(duì)應(yīng)的函數(shù)來(lái)完成。圖2.21 網(wǎng)絡(luò)的學(xué)習(xí)曲線(xiàn)【例2.6】用自適應(yīng)線(xiàn)性元件解決一個(gè)較大的多神經(jīng)元網(wǎng)絡(luò)的模式聯(lián)想的設(shè)計(jì)問(wèn)題。輸入矢量和目標(biāo)矢量分別為: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.

31、4;-1 0.1 -1.0 0.6 解:由輸入矢量和目標(biāo)矢量可得:網(wǎng)絡(luò)的源節(jié)點(diǎn)數(shù)為3,輸出層節(jié)點(diǎn)數(shù)為4。若用解方程組方法來(lái)求解該例,將要解16個(gè)方程,需要花費(fèi)大量的時(shí)間,甚至不太容易。對(duì)于一些實(shí)際問(wèn)題,常常并不需要求出其完美的零誤差的解,允許一定的誤差存在。這時(shí)采用自適應(yīng)線(xiàn)性元件求解就顯示出它的優(yōu)越性??梢酝ㄟ^(guò)選定期望誤差和加長(zhǎng)訓(xùn)練次數(shù)來(lái)獲得趨于完美的解。如圖2.22所示是在Matlab中設(shè)計(jì)的自適應(yīng)線(xiàn)性元件進(jìn)行仿真求解時(shí),網(wǎng)絡(luò)的學(xué)習(xí)曲線(xiàn)。圖2.22 網(wǎng)絡(luò)的學(xué)習(xí)曲線(xiàn)可用simulin( )函數(shù)來(lái)檢測(cè)訓(xùn)練好的網(wǎng)絡(luò):>> A=simulin(P,W,B)A = 0.5149 2.986

32、9 -2.1903 1.3908 1.0892 -1.1906 1.6930 -0.3933 2.9949 0.2044 -1.8033 -0.3968 -0.9960 0.0965 -0.9974 0.5975【例2.7】研究學(xué)習(xí)速率因子取值不同對(duì)LMS學(xué)習(xí)算法的影響。在例2.5和例2.6的自適應(yīng)線(xiàn)性元件的仿真過(guò)程中,對(duì)學(xué)習(xí)速率因子的取值,我們是通過(guò)神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)maxlinlr(P),對(duì)輸入P來(lái)求合適的學(xué)習(xí)速率因子值的。根據(jù)2.4節(jié)的討論可知,學(xué)習(xí)速率因子的取值對(duì)LMS算法的影響較大。下面我們針對(duì)例2.6,研究學(xué)習(xí)速率因子取不同值時(shí),LMS算法的收斂情況(也即網(wǎng)絡(luò)的收斂情況)。網(wǎng)絡(luò)的期望誤差定為err_goal=0.001,最大訓(xùn)練步數(shù)為max_epoch=400,保持不變。圖2.22是=0.9*maxlinlr(P)時(shí),網(wǎng)絡(luò)的學(xué)習(xí)曲線(xiàn)。顯然,網(wǎng)絡(luò)在290步左右收斂。圖2.23是=0

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論