matlab輔助神經(jīng)網(wǎng)絡(luò)設(shè)計方案_第1頁
matlab輔助神經(jīng)網(wǎng)絡(luò)設(shè)計方案_第2頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄第一節(jié) 神經(jīng)網(wǎng)絡(luò)基本理論一、人工神經(jīng)網(wǎng)絡(luò)概論二、生物神經(jīng)元模型三、Matlab的神經(jīng)網(wǎng)絡(luò)工具包第二節(jié) 感知器一、感知器神經(jīng)元模型二、感知器的網(wǎng)絡(luò)結(jié)構(gòu)三、感知器神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則四、感知器神經(jīng)網(wǎng)絡(luò)的訓(xùn)練五、重要的感知器神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法六、感知器神經(jīng)網(wǎng)絡(luò)應(yīng)用舉例第三節(jié) 線性神經(jīng)網(wǎng)絡(luò)一、線性神經(jīng)元模型二、線性神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)三、線性神經(jīng)學(xué)習(xí)網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則四、線性神經(jīng)網(wǎng)絡(luò)訓(xùn)練五、重要線性神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法六、線性神經(jīng)網(wǎng)絡(luò)的應(yīng)用舉例第四節(jié)BP網(wǎng)絡(luò)一、BP網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)二、BP網(wǎng)絡(luò)學(xué)習(xí)規(guī)則三、BP網(wǎng)絡(luò)的訓(xùn)練四、 重要BP神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法五、BP網(wǎng)絡(luò)的應(yīng)用舉例第五節(jié) 徑向基函數(shù)網(wǎng)絡(luò)一、 徑向

2、基函數(shù)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)二、 徑向基函數(shù)的學(xué)習(xí)算法三、重要徑向基函數(shù)的函數(shù)使用方法第六節(jié) 反饋網(wǎng)絡(luò)一、Hopfield網(wǎng)絡(luò)的結(jié)構(gòu)與算法二、Hopfield網(wǎng)絡(luò)運行規(guī)則三、重要的反饋網(wǎng)絡(luò)函數(shù)四、重要的自組織網(wǎng)絡(luò)函數(shù)五、反饋網(wǎng)絡(luò)應(yīng)用舉例第七節(jié) 自組織網(wǎng)絡(luò)一、自組織特征映射的網(wǎng)絡(luò)結(jié)構(gòu)二、自組織特征映射網(wǎng)絡(luò)的學(xué)習(xí)三、自組織特征映射網(wǎng)絡(luò)的訓(xùn)練四、重要的自組織網(wǎng)絡(luò)函數(shù)五、自組織網(wǎng)絡(luò)應(yīng)用舉例第一節(jié) 神經(jīng)網(wǎng)絡(luò)基本理論一、人工神經(jīng)網(wǎng)絡(luò)概論近代神經(jīng)生理學(xué)和神經(jīng)解剖學(xué)的研究結(jié)果表明,人腦是由約一千多億 個神經(jīng)元(大腦皮層約140多億,小腦皮層約1000多億)交織在一起的、 極其復(fù)雜的網(wǎng)狀結(jié)構(gòu),能完成智能、思維、情緒等高級

3、精神活動,無論是 腦科學(xué)還是智能科學(xué)的發(fā)展都促使人們對人腦(神經(jīng)網(wǎng)絡(luò))的模擬展開了 大量的工作,從而產(chǎn)生了人工神經(jīng)網(wǎng)絡(luò)這個全新的研究領(lǐng)域。人工神經(jīng)網(wǎng)絡(luò)(ANNS)常常簡稱為神經(jīng)網(wǎng)絡(luò)(NNS),是以計算機 網(wǎng)絡(luò)系統(tǒng)模擬生物神經(jīng)網(wǎng)絡(luò)的智能計算系統(tǒng), 是對人腦或自然神經(jīng)網(wǎng)絡(luò)的 若干基本特性的抽象和模擬。網(wǎng)絡(luò)上的每個結(jié)點相當(dāng)于一個神經(jīng)元,可以 記憶(存儲)、處理一定的信息,并與其它結(jié)點并行工作。神經(jīng)網(wǎng)絡(luò)的研究最早要追述到40年代心理學(xué)家Mcculloch和數(shù)學(xué)家Pitts合作提出的興奮與抑制型神經(jīng)元模型和Hebb提出的神經(jīng)元連接強度的修改規(guī)則,其成果至今仍是許多神經(jīng)網(wǎng)絡(luò)模型研究的基礎(chǔ)。5060年代的代

4、表性工作主要有Rosenblatt的感知器模型、Widrow的自適應(yīng)網(wǎng)絡(luò)元件Adaline。然而在1969年Minsky和Papert合作發(fā)表的Perceptron一書中闡 述了一種消極悲觀的論點,在當(dāng)時產(chǎn)生了極大的消極影響,加之?dāng)?shù)字計算 機正處于全盛時期并在人工智能領(lǐng)域取得顯著成就,這導(dǎo)致了70年代人工神經(jīng)網(wǎng)絡(luò)的研究處于空前的低潮階段。80年代以后,傳統(tǒng)的Von Neumann數(shù)字計算機在模擬視聽覺的人工智能方面遇到了物理上不可逾越的障礙。與此同時Rumelhart、Mcclelland和Hopfield等人在神經(jīng)網(wǎng)絡(luò)領(lǐng)域取得了突 破性進展,神經(jīng)網(wǎng)絡(luò)的熱潮再次掀起。目前較為流行的研究工作主要

5、有: 前饋網(wǎng)絡(luò)模型、反饋網(wǎng)絡(luò)模型、自組織網(wǎng)絡(luò)模型等方面的理論。人工神經(jīng) 網(wǎng)絡(luò)是在現(xiàn)代神經(jīng)科學(xué)的基礎(chǔ)上提出來的。它雖然反映了人腦功能的基本 特征,但遠不是自然神經(jīng)網(wǎng)絡(luò)的逼真描寫,而只是它的某種簡化抽象和模 擬。求解一個問題是向人工神網(wǎng)絡(luò)的某些結(jié)點輸入信息,各結(jié)點處理后向 其它結(jié)點輸出,其它結(jié)點接受并處理后再輸出,直到整個神經(jīng)網(wǎng)工作完 畢,輸出最后結(jié)果。如同生物的神經(jīng)網(wǎng)絡(luò),并非所有神經(jīng)元每次都一樣地 工作。如視、聽、摸、想不同的事件(輸入不同),各神經(jīng)元參與工作的 程度不同。當(dāng)有聲音時,處理聲音的聽覺神經(jīng)元就要全力工作,視覺、觸 覺神經(jīng)元基本不工作,主管思維的神經(jīng)元部分參與工作;閱讀時,聽覺神 經(jīng)

6、元基本不工作。在人工神經(jīng)網(wǎng)絡(luò)中以加權(quán)值控制結(jié)點參與工作的程度。 正權(quán)值相當(dāng)于神經(jīng)元突觸受到刺激而興奮,負權(quán)值相當(dāng)于受到抑制而使神 經(jīng)元麻痹直到完全不工作。如果通過一個樣板問題“教會”人工神經(jīng)網(wǎng)絡(luò)處理這個問題,即通過 “學(xué)習(xí)”而使各結(jié)點的加權(quán)值得到肯定,那么,這一類的問題它都可以 解。好的學(xué)習(xí)算法會使它不斷積累知識,根據(jù)不同的問題自動調(diào)整一組加 權(quán)值,使它具有良好的自適應(yīng)性。此外,它本來就是一部分結(jié)點參與工 作。當(dāng)某結(jié)點出故障時,它就讓功能相近的其它結(jié)點頂替有故障結(jié)點參與 工作,使系統(tǒng)不致中斷。所以,它有很強的容錯能力。人工神經(jīng)網(wǎng)絡(luò)通過樣板的“學(xué)習(xí)和培訓(xùn)”,可記憶客觀事物在空間、 時間方面比較復(fù)

7、雜的關(guān)系,適合于解決各類預(yù)測、分類、評估匹配、識別 等問題。例如,將人工神經(jīng)網(wǎng)絡(luò)上的各個結(jié)點模擬各地氣象站,根據(jù)某一 時刻的采樣參數(shù)(壓強、濕度、風(fēng)速、溫度),同時計算后將結(jié)果輸出到 下一個氣象站,則可模擬出未來氣候參數(shù)的變化,作出準(zhǔn)確預(yù)報。即使有 突變參數(shù)(如風(fēng)暴,寒流)也能正確計算。所以,人工神經(jīng)網(wǎng)絡(luò)在經(jīng)濟分 析、市場預(yù)測、金融趨勢、化工最優(yōu)過程、航空航天器的飛行控制、醫(yī) 學(xué)、環(huán)境保護等領(lǐng)域都有應(yīng)用的前景。人工神經(jīng)網(wǎng)絡(luò)的特點和優(yōu)越性使它近年來引起人們的極大關(guān)注,主要 表現(xiàn)在三個方面:第一,具有自學(xué)習(xí)功能。例如實現(xiàn)圖像識別時,只需把許多不同的圖 像樣板和對應(yīng)的應(yīng)識別的結(jié)果輸入人工神經(jīng)網(wǎng)絡(luò),網(wǎng)

8、絡(luò)就會通過自學(xué)習(xí)功 能,慢慢學(xué)會識別類似的圖像。自學(xué)習(xí)功能對于預(yù)測有特別重要的意義。 人工神經(jīng)網(wǎng)絡(luò)計算機將為人類提供經(jīng)濟預(yù)測、市場預(yù)測、效益預(yù)測,其前 途是很遠大的。第二,具有聯(lián)想存儲功能。人的大腦是具有聯(lián)想功能的。如果有人和 你提起你幼年的同學(xué)張某某,你就會聯(lián)想起張某某的許多事情。用人工神 經(jīng)網(wǎng)絡(luò)的反饋網(wǎng)絡(luò)就可以實現(xiàn)這種聯(lián)想。第三,具有高速尋找最優(yōu)解的能力。尋找一個復(fù)雜問題的最優(yōu)解,往 往需要很大的計算量,利用一個針對某問題而設(shè)計的人工神經(jīng)網(wǎng)絡(luò),發(fā)揮 計算機的高速運算能力,可能很快找到最優(yōu)解。人工神經(jīng)網(wǎng)絡(luò)是未來微電子技術(shù)應(yīng)用的新領(lǐng)域,智能計算機的構(gòu)成就是作為主機的馮 諾依曼計算機與作為智能外

9、圍機的人工神經(jīng)網(wǎng)絡(luò)的結(jié)合。二、生物神經(jīng)元模型神經(jīng)元是腦組織的基本單元,其結(jié)構(gòu)如圖1所示,神經(jīng)元由三部分構(gòu) 成:細胞體,樹突和軸突;每一部分雖具有各自的功能,但相互之間是互 補的。樹突是細胞的輸入端,通過細胞體間聯(lián)結(jié)的節(jié)點“突觸”接受四周細 胞傳出的神經(jīng)沖動;軸突相當(dāng)于細胞的輸出端,其端部的眾多神經(jīng)未梢為 信號的輸出端子,用于傳出神經(jīng)沖動。神經(jīng)元具有興奮和抑制的兩種工作狀態(tài)。當(dāng)傳入的神經(jīng)沖動,使細胞 膜電位升高到閥值(約為40mV)時,細胞進入興奮狀態(tài),產(chǎn)生神經(jīng)沖動,由軸突輸出。相反,若傳入的神經(jīng)沖動,使細胞膜電位下降到低于閥 值時,細胞進入抑制狀態(tài),沒有神經(jīng)沖動輸出。二、人工神經(jīng)元模型人工神經(jīng)

10、元模型是以大腦神經(jīng)細胞的活動規(guī)律為原理的,反映了大腦 神經(jīng)細胞的某些基本特征,但不是也不可能是人腦細胞的真實再現(xiàn),從數(shù) 學(xué)的角度而言,它是對人腦細胞的高度抽象和簡化的結(jié)構(gòu)模型。雖然人工 神經(jīng)網(wǎng)絡(luò)有許多種類型,但其基本單元一人工神經(jīng)元是基本相同的。如圖2是一個典型的人工神經(jīng)元模型:圖2人工神經(jīng)元模型神經(jīng)元模型相當(dāng)于一個多輸入單輸出的非線性閥值元件,X1,X2,Xn表示神經(jīng)元的n個輸入,W1,W2,Wn表示神經(jīng)元之間 的連接強度,稱為連接權(quán),7 WiXi稱為神經(jīng)元的激活值,0表示這個神 經(jīng)元的輸出,每個神經(jīng)元有一個閥值0,如果神經(jīng)元輸入信號的加權(quán)和超過0,神經(jīng)元就處于興奮狀態(tài)。以數(shù)學(xué)表達式描述為:

11、O=fpWiXi-0)三、Matlab的神經(jīng)網(wǎng)絡(luò)工具包由于神經(jīng)網(wǎng)絡(luò)自身的特點,計算中經(jīng)常涉及到大量的訓(xùn)練樣本數(shù)據(jù)、復(fù)雜的運算操作、繁瑣的程序設(shè)計等問題。對此,具有強大功能的數(shù)學(xué)軟件Matlab,為我們提供了神經(jīng)網(wǎng)絡(luò)工具箱NeuralNetwoks Toolbox (NNT)及豐富的函數(shù)命令。NNT是進行神經(jīng)網(wǎng)絡(luò)訓(xùn)練和仿真的優(yōu)良平臺。常用來對網(wǎng)絡(luò)進行初始化、仿真、設(shè)計、調(diào)整、優(yōu)化。集成化的處理方式、友好的 界面、形象的演示過程、簡易的操作,為神經(jīng)網(wǎng)絡(luò)應(yīng)用者節(jié)約了大量的不 必要的編程時間,使得非專業(yè)人士應(yīng)用神經(jīng)網(wǎng)絡(luò)成為了可能。Matlab是Mathworks公司開發(fā)的工程計算軟件包,其中有一個神經(jīng)

12、網(wǎng)絡(luò)工具包,可以用來方便地創(chuàng)建各種神經(jīng)網(wǎng)絡(luò),對數(shù)據(jù)進行學(xué)習(xí)和模擬輸 出。Matlab中普遍采用的是物理和工程學(xué)中強有力的矩陣描述的語言,簡 潔優(yōu)美。第二節(jié)感知器感知器(Pereceptron)是一種特殊的神經(jīng)網(wǎng)絡(luò)模型,是由美國心理學(xué)家F.Rosenblatt于1958年提出的,一層為輸入層,另一層具有計算單元,感 知器特別適合于簡單的模式分類問題,也可用于基于模式分類的學(xué)習(xí)控制 和多模態(tài)控制中。一、感知器神經(jīng)元模型感知器神經(jīng)元通過對權(quán)值的訓(xùn)練,可以使感知器神經(jīng)元的輸出能代表對輸入模式進行的分類,圖2.1為感知器神經(jīng)元模型。其對應(yīng)權(quán)值的加權(quán)和作為閥值函數(shù)的輸入。II得感知器可以將輸入向量分為兩個

13、區(qū)域,通常閥XRo感知器神經(jīng)元的每一個輸入都對應(yīng)神經(jīng)元模型9的輸入與X1圖2.1由于閥值函數(shù)的引入,WiRSX1而其輸出ai為ai=f( ni+bi)由式2.1易知則輸出為0。上面所述的單層感知器神經(jīng)網(wǎng)絡(luò)是不可能解決線性不可分的輸入向量 分類問題,也不能推廣到一般的前向網(wǎng)絡(luò)中去。為解決這一問題,我們可 以設(shè)計多層感知器神經(jīng)網(wǎng)絡(luò)以實現(xiàn)任意形狀的劃分。2.3描述了一個雙層感知器神經(jīng)網(wǎng)絡(luò)。其工作方式與單層感知器網(wǎng)圖2.3感知器神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如:(x)=x0 xcO(2.1)而感知器神經(jīng)元模型的實際輸出為(2.2)其中b為閥值、感知器的網(wǎng)絡(luò)結(jié)構(gòu)圖22所描述的是一個簡單的感知器網(wǎng)絡(luò)結(jié)構(gòu),輸入層有R個輸入,

14、Q個輸出,通過權(quán)值Wj與s個感知器神經(jīng)元連接組成的感知器神經(jīng)網(wǎng)絡(luò)。即:P o -RXQ根據(jù)網(wǎng)絡(luò)結(jié)構(gòu),可以寫出感知器處理單1 o-操作,SXQ圖2.2感知器神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)ni二WjPj(2.3)(2.4)ai1 nib-00 ni- bi: 0(2.5)則當(dāng)輸入n+bi大于等于0,即有ni-bi時,感知器的輸出為1;否絡(luò)一樣,只不過是增加了一層而已,具體的內(nèi)容這里不做討論。oRXQ三、感知器神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)SX1aiW2 obC n其輸入的加權(quán)w1a2*感知器的學(xué)習(xí)規(guī)則主要是通過調(diào)整網(wǎng)絡(luò)層的權(quán)值和閥值以便能夠地網(wǎng) 絡(luò)的輸入向量進行正確的分類。如圖22所示的輸入向量P、輸出和量a和目標(biāo)向量為t的感知器

15、神經(jīng) 網(wǎng)絡(luò),感知器的學(xué)習(xí)規(guī)則是根據(jù)以下輸出矢量a可能出現(xiàn)的幾種情況未進 行參與調(diào)整的:1)如果第i個神經(jīng)元的輸出是正確的,即有ai=ti,則與第i個神經(jīng)元 聯(lián)接的權(quán)值和閥值保持不變。2)如果第i個神經(jīng)元的輸出是不正確,應(yīng)該有兩種情況。i)實際輸出為0,而理想輸出為1,即有a=0,而ti=1,則所有的輸入j對權(quán)值和閥值進行調(diào)整,修正值 wij=pj, bj=i。ii)實際輸出為1,而期望輸出為0,即有a=1,而ti=0,則對所有的輸 入j進行權(quán)值和閥值調(diào)整, W1j=-pj, bi=-1?;诟兄髡`差e=ta,感知器學(xué)習(xí)規(guī)則可望寫為:w1j=eipj可以證明當(dāng)前輸入樣本來自線性可分的模式時,上

16、述學(xué)習(xí)算法在有限 步同收斂,這時所得的權(quán)值能對所有樣本正確分類,這一結(jié)論被稱為感知 器收斂定理。四、感知器神經(jīng)網(wǎng)絡(luò)的訓(xùn)練要使前向神經(jīng)網(wǎng)絡(luò)模型實現(xiàn)某種功能,必須對它進行訓(xùn)練,讓它逐步學(xué)會要做的事情,并把所學(xué)到的知識記憶在網(wǎng)絡(luò)的權(quán)值中。感知器神經(jīng)網(wǎng)絡(luò)的訓(xùn)練是采用由一組樣本組成的集合來進行。在訓(xùn)練期間,將這些樣本重復(fù)輸入,通過調(diào)整權(quán)值使感知器的輸出達到所要求的理想輸出。感知器 的訓(xùn)練主要是反復(fù)對感知器神經(jīng)網(wǎng)絡(luò)進行仿真和學(xué)習(xí),最終得到最優(yōu)的網(wǎng) 絡(luò)閥值和權(quán)值。我們可以用以下方法訓(xùn)練網(wǎng)絡(luò):1)確定我們所解決的問題的輸入向量P、目標(biāo)向量t,并確定各向量的維數(shù),以及網(wǎng)絡(luò)結(jié)構(gòu)大小、神經(jīng)元數(shù)目。假定我們采用圖2.

17、2的網(wǎng)絡(luò)結(jié)構(gòu)。2)初始化:權(quán)值向量w和閥值向量b分別賦予1,+1之間的隨機值,并且給出訓(xùn)練的最大次數(shù)。3)根據(jù)輸入向量P、最新權(quán)值向量w和閥值向量b,計算網(wǎng)絡(luò)輸出向量a。4)檢查感知器輸出向量與目標(biāo)向量是否一致,或者是否達到了最大的訓(xùn)練次數(shù),如果是則結(jié)束訓(xùn)練,否則轉(zhuǎn)入(5)。5)根據(jù)感知器學(xué)習(xí)規(guī)則調(diào)查權(quán)向量,并返回3)。五、重要的感知器神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法對于感知器的初始化、訓(xùn)練、仿真,在MATLABP神經(jīng)網(wǎng)絡(luò)工具箱中 分別提供了init( ), trainp( )和sim( )函數(shù)。1初始化函數(shù)init( )感知器初始化函數(shù)init()可得到R個輸入,S個神經(jīng)元數(shù)的感知器層的權(quán)值和閥值,其

18、調(diào)用格式為:w,b=init(R,S)另外,也可以利用輸入向量P和目標(biāo)向量t來初始化。w,b=init(p,t)在介紹trainp( )函數(shù)前,讓我們先介紹一下訓(xùn)練的控制參數(shù)tp。tp=disp_freq max_epoch其中disp_freq指定兩次顯示間訓(xùn)練次數(shù),缺省值為1;map_epoch指定訓(xùn)練的最大次數(shù),缺省值為100。調(diào)用訓(xùn)練函數(shù)trainp( )函數(shù)后又得到新的權(quán)值矩陣,閥值向量以及誤差te。trainp()函數(shù)所需要的輸入變量為:輸入向量P、目標(biāo)向量t以及網(wǎng)絡(luò)的初始權(quán)值和閥值,訓(xùn)練的控制參數(shù)tp。調(diào)用格式為:w,b,te=trainp(w,b,p,t,tp)由于函數(shù)trai

19、np( )并不能保證感知器網(wǎng)絡(luò)所得到的網(wǎng)絡(luò)權(quán)值和閥值達到要求。因此,在訓(xùn)練完后,要用下列驗證語句驗證一下。a=sim(p,w,b)。if all(a= =t),disp(It works! ),end假如網(wǎng)絡(luò)不能成功運行,就可以繼續(xù)運用trainp( )函數(shù)對網(wǎng)絡(luò)進行訓(xùn)練。經(jīng)足夠的訓(xùn)練后,網(wǎng)絡(luò)仍達不到要求,那么就應(yīng)當(dāng)認真分析一下,感知器網(wǎng)絡(luò)是否適合于這個問題。3.仿真函數(shù)sim()sim()函數(shù)主要用于計算網(wǎng)絡(luò)輸出。它的調(diào)用比較簡單。a=sim(p,w,b)六、感知器神經(jīng)網(wǎng)絡(luò)應(yīng)用舉例為了便于消化與理解感知器神經(jīng)網(wǎng)絡(luò)的四只問題,下面將給出一個具 體的問題進行分析,問題的描述如下:兩種蠓蟲Af和A

20、pf已由生物學(xué)家W.L.Grogan與w. w. Wirth(1981)根據(jù) 它們觸角長度和翼長中以區(qū)分。見表2.1中9Af蠓和6只Apf蠓的數(shù)據(jù)。根據(jù)給出的觸角長度和翼長可識別出一只標(biāo)本是Af還是Apf。1給定一只Af或者Apf族的蒙,你如何正確地區(qū)分它屬于哪一族?2.將你的方法用于觸角長和翼中分別為(1.24,1.80)、(1.28,1.84)、(1.40,2.04)的三個標(biāo)本表2.1Af觸重長1.241.361.381.3781.381.401.481.541.56翼長1.721.741.641.821.901.701.701.822.08Ap f觸角長1.141.181.201.261

21、.281.30翼長1.781.961.862.002.001.96輸入向量為:p=1.24 1.361.38 1.378 1.38 1.401.48 1.54 1.56 1.14 1.18 1.20 1.26 1.281.30。1.72 1.74 1.64 1.82 1.90 1.701.96 目標(biāo)向量為:t=1 1 1 1 1 1 1 1 1 0 0 0 0 0 0圖形顯示,目標(biāo)值1對應(yīng)的 用“+”、目標(biāo)值0對應(yīng)的用“0”來表示:1.70 1.82 2.08 1.78 1.96 1.86 2.00 2.002.32.22.121.91.81.71.61.5Vectors to be Clas

22、sifiedplotpv(p,t)為解決該問題,利用函數(shù)newp構(gòu)造輸入量在0,2.5之間的感知器神經(jīng)網(wǎng)絡(luò)模型:net=newp(02.5;0 2.5,1)初始化網(wǎng)絡(luò):n et=i nit (n et)利用函數(shù)adapt調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值,直到誤差為n et,y,e=adapt (n et,p,t)訓(xùn)練結(jié)束后可得如圖2.5的分類方式,可見感知器網(wǎng)絡(luò)將樣本正確地分成兩類:圖2.5網(wǎng)絡(luò)訓(xùn)練結(jié)果感知器網(wǎng)絡(luò)訓(xùn)練結(jié)束后,可以利用函數(shù)sim進行仿真,解決實際的分 1/”-0 / +4O/ +/+45-/J/Vectors to be Classified2.32.212 9 8 72XXXDTP 5.4

23、845.3.2p(n0時訓(xùn)練結(jié)束:類問題:p仁1.24。1.80 a1=sim (n et,p1) p2=1.28。1.84 a2=sim (n et,p2) p3=1.40。2.04 a3=sim (n et,p3)網(wǎng)絡(luò)仿真結(jié)果為:a1=0 a2=0 a3=0第三節(jié)線性神經(jīng)網(wǎng)絡(luò)線性神經(jīng)網(wǎng)絡(luò)是最簡單的一種神經(jīng)元網(wǎng)絡(luò),由一個或多個線性神經(jīng)元構(gòu)成。1959年,美國工程師B.widrow和M.Hoft提出自適應(yīng)線性元件(Adaptive linear element,簡稱Adaline)是線性神經(jīng)網(wǎng)絡(luò)的最早典型代表。它是感知器的變化形式,尤其在修正權(quán)矢量的方法上進行了改進,不 僅提高了訓(xùn)練收斂速度,

24、而且提高了訓(xùn)練精度。線性神經(jīng)網(wǎng)絡(luò)與感知器神 經(jīng)網(wǎng)絡(luò)的主要不同之處在于其每個神經(jīng)元的傳遞函數(shù)為線性函數(shù),它允許 輸出任意值,而不是象感知器中只能輸出0或1。 此外, 線性神經(jīng)網(wǎng)絡(luò)一般采用WidrowHoff(簡稱WH)學(xué)習(xí)規(guī)則或者最小場方差(Least mean Square,簡稱LMS)規(guī)則來調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值。線性神經(jīng)網(wǎng)絡(luò)的主要用途是線性逼近一個函數(shù)表達式,具有聯(lián)想功能。另外,它還適用于信號處理濾波、預(yù)測、模式識別和控制等方面。一、線性神經(jīng)元模型線性神經(jīng)元可以訓(xùn)練學(xué)習(xí)一個與之對應(yīng)的輸入/輸出函數(shù)關(guān)系,或線性逼近任意一個非線性函數(shù),但它不能產(chǎn)生任何非線性的計算特性。圖3.1描述了一個具有R個

25、輸入的由純線性函數(shù)組成的線性神經(jīng)元。圖P3.1、線性神經(jīng)元模型由于線性神經(jīng)網(wǎng)絡(luò)中神經(jīng)元的傳遞函數(shù)為線性函數(shù),其輸入與輸出之 間是簡單的比例關(guān)系:a=g(W*p,其中函數(shù)g(x)為線性函數(shù)Ro二、線性神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3.2描述了一個由S個神經(jīng)元相并聯(lián)形成一層網(wǎng)絡(luò),這種網(wǎng)絡(luò)也稱為Madaline網(wǎng)絡(luò)。SX1圖3.2線性神經(jīng)元網(wǎng)絡(luò)層線性神經(jīng)網(wǎng)絡(luò)。三、線性神經(jīng)學(xué)習(xí)網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則前面我們提到過,線性神經(jīng)網(wǎng)絡(luò)采用WH學(xué)習(xí)規(guī)則。WH學(xué)習(xí)規(guī)則是Widrow是Hoft提出的用來求得權(quán)值和閥值的修正值的學(xué)習(xí)規(guī)則。首先要定義一個線性網(wǎng)絡(luò)的輸出誤差函數(shù):1212E(w,b)= (ta) = (tw*p)3.12 2由

26、式3.1可看出,線性網(wǎng)絡(luò)具有拋物線型誤差函數(shù)所形成的誤差表面。所以只有一個誤差最小值。通過WH學(xué)習(xí)規(guī)則來計算權(quán)值和偏差的變化,并使網(wǎng)絡(luò)的誤差平方和最小化,總能夠訓(xùn)練一個網(wǎng)絡(luò)的誤差趨于最小值。這可通過沿著相對于誤差平方和最速下降方向連續(xù)調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值來實現(xiàn)。根據(jù)梯度下降法,權(quán)矢量的修正值正比于當(dāng)前位置上E(w,b)的梯度,對于第i輸出節(jié)點為:cE%(ti-ajpj3.2OWj或表示為:Wj =“6pj3.3二b = -i3.4這里Si定義為第i個輸出節(jié)點的誤差:Si=tai3.5式3.3稱為WH學(xué)習(xí)規(guī)則。WH學(xué)習(xí)規(guī)則的權(quán)值變化量正比于網(wǎng) 絡(luò)的輸出誤差及網(wǎng)絡(luò)的輸入向量。它不需求導(dǎo)數(shù),所以算法

27、簡單,又具有 收斂速度快和精度高的優(yōu)點。式3.3中的淋為學(xué)習(xí)率,學(xué)習(xí)率的選取可以適當(dāng)防止學(xué)習(xí)過程中產(chǎn)生 振蕩,提高收斂速度和精度。四、線性神經(jīng)網(wǎng)絡(luò)訓(xùn)練首先給線性神經(jīng)網(wǎng)絡(luò)提供輸入向量P,計算線性網(wǎng)絡(luò)層的輸出向量a,并求得誤差e=ta;然后比較輸出的誤差平方和是否小于期望的誤差平方和,如果是,則 停止訓(xùn)練;否則,采用WH規(guī)則調(diào)整權(quán)值和閥值,反復(fù)進行。如果經(jīng)過訓(xùn)練網(wǎng)絡(luò)不能達到期望目標(biāo),可以繼續(xù)對網(wǎng)絡(luò)進行訓(xùn)練。經(jīng) 過足夠的訓(xùn)練后,網(wǎng)絡(luò)還是達不到要求。那么就仔細地分析一下,所要解 決的問題,是否適合于線性神經(jīng)網(wǎng)絡(luò)。五、重要線性神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法在MATLAB神經(jīng)網(wǎng)絡(luò)工具箱中提供了基于線性神經(jīng)網(wǎng)絡(luò)的初

28、始化函數(shù)initlin( )、設(shè)計函數(shù)solvelin( )、仿真函數(shù)simulin( )以及訓(xùn)練函數(shù)trainwh和adaptwh。下面我們將分別介紹多種函數(shù)的使用方法。1初始化函數(shù)initlin( )函數(shù)initlin( )對線性神經(jīng)網(wǎng)絡(luò)初始化時,將權(quán)值和閥值取為絕對值很小 的數(shù)。其使用格式w,b=initlin(R,S)R為輸入數(shù),S為神經(jīng)元數(shù)。另外,R和S也可用輸入向量P和目標(biāo)向量t來代替,即w,b=initlin(p,t)2設(shè)計函數(shù)solvelin( )與大多數(shù)其它神經(jīng)網(wǎng)絡(luò)不同,只要已知其輸入向量P和目標(biāo)向量t,就可以直接設(shè)計出線性神經(jīng)網(wǎng)絡(luò)使得線性神經(jīng)網(wǎng)絡(luò)的權(quán)值矩陣誤差最小。其 調(diào)用

29、命令如下:w,b=solve lin(p,t)。3仿真函數(shù)simulin( )函數(shù)simulin( )可得到線性網(wǎng)絡(luò)層的輸出a=simulin(p,w,b)其中a為輸出向量,b為閥值向量4訓(xùn)練函數(shù)trainwh和adaptwh( )線性神經(jīng)網(wǎng)絡(luò)的訓(xùn)練函數(shù)有兩種:trainwh()和adaptwh()。其中函數(shù)trainwh可以對線性神經(jīng)網(wǎng)絡(luò)進行離線訓(xùn)練;而函數(shù)adaptwh( )可以對線性 神經(jīng)網(wǎng)絡(luò)進行在線自適應(yīng)訓(xùn)練。利用trainwh()函數(shù)可以得到網(wǎng)絡(luò)的權(quán)矩陣w,閥值向量b,實際訓(xùn)練 次數(shù)te以及訓(xùn)練過程中網(wǎng)絡(luò)的誤差平方和lr。w,b,te,lr=trainwh(w,b,p,t,tp)輸入

30、變量中訓(xùn)練參數(shù)tp為:tp(1)指定兩次更新顯示間的訓(xùn)練次數(shù),其缺省值為25;tp(2)指定訓(xùn)練的最大次數(shù),其缺省值為100;tp(3)指定誤差平方和指標(biāo),其缺省值為0.02;tp(4)指定學(xué)習(xí)速率,其缺省值可由maxlinlr()函數(shù)(此函數(shù)主要用于計算采用WH規(guī)則訓(xùn)練線性網(wǎng)絡(luò)的最大的穩(wěn)定的分辨率)得到。而利用函數(shù)adaptwh()可以得到網(wǎng)絡(luò)的輸出a、誤差e、權(quán)值矩陣w和 閥值向量b。a,e,w,b=adaptwh(w,b,p,t,lr)輸入變量lr為學(xué)習(xí)速率,學(xué)習(xí)速率lr為可選參數(shù),其缺省值為10。另外,函數(shù)maxlinlr( )的調(diào)用格式為:lr=maxlinlr(p)。六、線性神經(jīng)網(wǎng)

31、絡(luò)的應(yīng)用舉例為了理解線性神經(jīng)網(wǎng)絡(luò)的理論及其應(yīng)用問題,下面給出一個實際問題 進行分析,設(shè)計一個線性神經(jīng)網(wǎng)絡(luò),用于信號仿真及信號預(yù)測。首先輸入信號樣本為:time=1:0.0025:5;p=sin(sin(time)*time*10);目標(biāo)信號為:t=p*2+2;圖形顯示樣本信號的規(guī)律為:plot(time, p, time, t,-)title(Input and Target Signals)xlabel(Time)ylabel(Input_ Target_)圖3.4仿真結(jié)果與目標(biāo)信號對比分析圖3.3樣本信號利用輸入樣本信號和理想輸出進行線性神經(jīng)網(wǎng)絡(luò)初始化:w,b=initlin(p,t)然后

32、利用函數(shù)adaptwh對構(gòu)造的網(wǎng)絡(luò)進行訓(xùn)練,lr=0.01;a,e,w,b=adaptwh(w,b,p,t,lr)其中l(wèi)r為學(xué)習(xí)率,a為網(wǎng)絡(luò)的輸出,e為誤差。仿真結(jié)果與目標(biāo)信號對比分析:plot(time, a, time, t, title( Output and Target Signalsxlabel( Time);ylabel( Output_ Target_4Tn put and Target Sig nalsOutput and Target Signals4-_-e opal - x_u pu o誤差分析:plot(time,e)hold on;plot(min(time) ma

33、x(time),0 0,:r)xlabel(Time);ylabel(Error)圖3.5誤差分析第四節(jié) BP 網(wǎng)絡(luò)感知器神經(jīng)網(wǎng)絡(luò)模型和線性神經(jīng)網(wǎng)絡(luò)模型雖然對人工神經(jīng)網(wǎng)絡(luò)的發(fā)展起了很大的作用,它們的出現(xiàn)也曾掀起了人們研究神經(jīng)網(wǎng)絡(luò)的熱潮。但它 們有許多不足之處。人們也曾因此失去了對神經(jīng)網(wǎng)絡(luò)研究的信心,但rumelhart、mcclellard和他們的同事洞悉到網(wǎng)絡(luò)信息處理的重要性,并致力 于研究并行分布信息處理方法,探索人類認知的微結(jié)構(gòu),于1985年發(fā)展了BP網(wǎng)絡(luò)的學(xué)習(xí)算法。從而給人工神經(jīng)網(wǎng)絡(luò)增添了活力,使其得以全面迅速 地恢復(fù)發(fā)展起來。BP網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),其神經(jīng)元的激勵函數(shù)為S型函

34、數(shù),因此輸出量為0到1之間的連續(xù)量,它可以實現(xiàn)從輸入到輸出的任意的非 線性映射。由于其權(quán)值的調(diào)整是利用實際輸出與期望輸出之差,對網(wǎng)絡(luò)的 各層連接權(quán)由后向前逐層進行校正的計算方法,故而稱為反向傳播(Back-Propogation)學(xué)習(xí)算法,簡稱為BP算法。BP算法主要是利用輸入、輸出樣本集進行相應(yīng)訓(xùn)練,使網(wǎng)絡(luò)達到給定的輸入輸出映射函數(shù)關(guān)系。算法常1-0.51.522.533.5Time44.55Error Signal535zr GTE分為兩個階段:第一階段(正向計算過程)由樣本選取信息從輸入層經(jīng)隱 含層逐層計算各單元的輸出值;第二階段(誤差反向傳播過程)由輸出層 計算誤差并逐層向前算出隱含層

35、各單元的誤差,并以此修正前一層權(quán)值。BP網(wǎng)絡(luò)主要用于函數(shù)逼近、模式識別、分類以及數(shù)據(jù)壓縮等方面。一、BP網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)BP網(wǎng)絡(luò)通常至少有一個隱含層,如圖4.1所示的是一個具有R個輸入和一個隱含層的神經(jīng)網(wǎng)絡(luò)模型。圖4.2所示的兩種S型激勵函數(shù)的圖形,可以看到f()是連續(xù)可微的單調(diào)遞增函數(shù),這種激勵函數(shù)的輸出特性比較軟,其輸出狀態(tài)的取值范 圍為0,1或者-1,+1,其硬度可以由參數(shù)入來調(diào)節(jié)。函數(shù)的輸入輸出關(guān)系表達式如下所示:P o感知器與線性神經(jīng)元的主要差別 而后者是線性的。 其主要差別也表現(xiàn)在激勵函數(shù)上。WiaiBP網(wǎng)絡(luò)除 在多層網(wǎng)絡(luò)上與已介紹過的1- 1 0 雙極型的S型激勵函數(shù):f(net)

36、1)單極型的S型激勵函數(shù):f(net)1)2卞 品,f(net)C(-1,1f(net)(0,1 exp( _ net)隱含層輸出層f?S2xqb2圖4.2 sigmoid型函數(shù)圖形對于多層網(wǎng)絡(luò),這種激勵函數(shù)所劃分的區(qū)域不再是線性劃分,而是由 一個非線性的超平面組成的區(qū)域。因為S型函數(shù)具有非線性的大系數(shù)功能。它可以把輸入從負無窮到正 無窮大的信號變換成一1到+1之間輸出,所以采用S型函數(shù)可以實現(xiàn)從輸 入到輸出的非線性映射。二、BP網(wǎng)絡(luò)學(xué)習(xí)規(guī)則BP網(wǎng)絡(luò)最為核心的部分便是網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則。用BP算法訓(xùn)練網(wǎng)絡(luò)時有兩種方式:一種是每輸入一樣本修改一次權(quán)值;另一種是批處理方式, 即使組成一個訓(xùn)練周期的全部

37、樣本都依次輸入后計算總的平均誤差。這里 我們主要探討的是后一種方式。下面我們給出兩層網(wǎng)絡(luò)結(jié)構(gòu)示意簡圖4.3,并以此探討B(tài)P算法。BP網(wǎng)絡(luò)的學(xué)習(xí)過程主要由以下四部分組成:1)輸入樣本順傳播輸入樣本傳播也就是樣本由輸入層經(jīng)中間層向輸出層傳播計算。這一 過程主要是輸入樣本求出它所對應(yīng)的實際輸出。1隱含層中第i個神經(jīng)元的輸出為ZR、為=E WijPj+biii =1,2,(4.1)丿2輸出層中第k個神經(jīng)元的輸出為:嚴極型嚴極型單極型單極型S1、a2k = f2W2ki3li +b2ki =1,2, S2(4.2)i丿其中f1(), f2()分別為隱含層的激勵函數(shù)。2)輸出誤差逆?zhèn)鞑ピ诘谝徊降臉颖卷槀鞑?/p>

38、計算中我們得到了網(wǎng)絡(luò)的實際輸出值,當(dāng)這些 實際的輸出值與期望輸出值不一樣時,或者說其誤差大于所限定的數(shù)值 時,就要對網(wǎng)絡(luò)進行校正。首先,定義誤差函數(shù)1勺2E(w,b)=(tkfa2k)(4.3)2kA其次,給出權(quán)值的變化1輸出層的權(quán)值變化從第i個輸入到第k個輸出的權(quán)值為:=W2kikiaii(4.4)-W2ki其中:I - ki =ekf2(4.5)ek = I k -a2k(4.6)2隱含層的權(quán)值變化從第j個輸入到第i個輸出的權(quán)值為:_!Wj=-耳=口 通ijPjOvcl(n為學(xué)習(xí)系數(shù))(4.軸ij7)其中:-ij = eifi(4.8)S2e6 W2ki(4.9)k咼由此可以看出:調(diào)整是與

39、誤差成正比,即誤差越大調(diào)整的幅度就越 大。調(diào)整量與輸入值大小成比例,在這次學(xué)習(xí)過程中就顯得越活躍,所 以與其相連的權(quán)值的調(diào)整幅度就應(yīng)該越大,調(diào)整是與學(xué)習(xí)系數(shù)成正比。通常學(xué)習(xí)系數(shù)在0.10.8之間,為使整個學(xué)習(xí)過程加快,又不會引起振蕩,可采用變學(xué)習(xí)率的方法,即在學(xué)習(xí)初期取較大的學(xué)習(xí)系數(shù)隨著學(xué)習(xí)過程的 進行逐漸減小其值。最后,將輸出誤差由輸出層經(jīng)中間層傳向輸入層,逐層進行校正。3)循環(huán)記憶訓(xùn)練為使網(wǎng)絡(luò)的輸出誤差盡可能的小,對于BP網(wǎng)絡(luò)輸入的每一組訓(xùn)練樣本,一般要經(jīng)過數(shù)百次甚至上萬次的反復(fù)循環(huán)記憶訓(xùn)練,才能使網(wǎng)絡(luò)記住 這一樣本模式。這種循環(huán)記憶訓(xùn)練實際上就是反復(fù)重復(fù)上面介紹的輸入模式正向傳播 和輸出

40、誤差逆?zhèn)鞑ミ^程。4)學(xué)習(xí)結(jié)束的檢驗當(dāng)每次循環(huán)記憶結(jié)束后,都要進行學(xué)習(xí)是否結(jié)束的檢驗。檢驗的目的 主要是檢查輸出誤差是否已經(jīng)符合要求。如果小到了允許的程度,就可以 結(jié)束整個學(xué)習(xí)過程,否則還要進行循環(huán)訓(xùn)練。三、BP網(wǎng)絡(luò)的訓(xùn)練對BP網(wǎng)絡(luò)進行訓(xùn)練時,首先要提供一組訓(xùn)練樣本,其中每個樣本由 輸入樣本和輸出對組成。當(dāng)網(wǎng)絡(luò)的所有實際輸出與其理想輸出一致時,表 明訓(xùn)練結(jié)束。否則,通過修正權(quán)值,使網(wǎng)絡(luò)的實際輸出與理想輸出一致。實際上針對不同具體情況,BP網(wǎng)絡(luò)的訓(xùn)練有相應(yīng)的學(xué)習(xí)規(guī)則,即不同的最優(yōu)化算法,沿減少理想輸出與實際輸出之間誤差的原則,實現(xiàn)BP網(wǎng)絡(luò)的函數(shù)逼近、向量分類和模式識別。以圖4.3為例來說明BP網(wǎng)絡(luò)

41、訓(xùn)練的主要過程。齡扎琉勲圖4.3含一個隱含層的BP網(wǎng)絡(luò)結(jié)構(gòu)首先:網(wǎng)絡(luò)初始化,構(gòu)造合理的網(wǎng)絡(luò)結(jié)構(gòu)(這里我們采用圖4.3的網(wǎng)絡(luò)結(jié)構(gòu)),取可調(diào)參數(shù)(權(quán)和閥值)為-1,1上服從均勻分布隨機數(shù),并 取定期望誤差、最大循環(huán)次數(shù)和修正權(quán)值的學(xué)習(xí)率的初始值。其次,利用相應(yīng)的BP網(wǎng)絡(luò)學(xué)習(xí)規(guī)則對網(wǎng)絡(luò)進行訓(xùn)練,求得權(quán)值修正 后的誤差平方和。最后,檢查網(wǎng)絡(luò)誤差平方和是否降低到期望誤差之下,若是,訓(xùn)練結(jié) 束,否則繼續(xù)。四、重要BP神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法函數(shù)initff( )和simuff可以用來初始化和仿真不超過三層的前饋型網(wǎng) 絡(luò)。函數(shù)trainbp( )、trainbpx( )、trainlm( )可用來訓(xùn)練BP網(wǎng)絡(luò)

42、。其中trainlm( )的訓(xùn)練速度最快,但它需要更大的存儲空間,也就是說它是以空 間換取了時間;trainbpx( )的訓(xùn)練速度次之;trainlm( )最慢。1初始化函數(shù)initff( )函數(shù)initff( )的主要功能就是對至多三層的BP網(wǎng)絡(luò)初始化。其使用格 式有多種,現(xiàn)列如下:w,b=initff(p,s,f)w1,b1,w2,b2=initff(p,s1,f1,s2,f2) w1,b1,w2,b2,w3,b3=initff(p,s1,f1,f2,s3,f3)w,b=initff(p,s,t)w1,b1,w2,b2=initff(p,s1,f1,s2,t) w1,b1,w2,b2,w3

43、,b3=initff(p,s1,f1,s2,f2,s3,t)w,b=initff(p,s,f)可得到s個神經(jīng)元的單層神經(jīng)網(wǎng)絡(luò)的權(quán)值和閥值,其 中p為輸入向量,f為神經(jīng)元的激勵函數(shù)。BP網(wǎng)絡(luò)有一個特點很重要,即p中的每一行中必須包含網(wǎng)絡(luò)期望輸入 的最大值和最小值,這樣才能合理地初始化權(quán)值和閥值。2仿真函數(shù)simuff( )BP網(wǎng)絡(luò)是由一系列網(wǎng)絡(luò)層組成,每一層都從前一層得到輸入數(shù)據(jù),函 數(shù)simuff( )可仿真至多三層前饋型網(wǎng)絡(luò)。對于不同的網(wǎng)絡(luò)層數(shù),其使用格 式為:a=simuff(p,w1, b1, f1)a=simuff(p, w1, b1, f1, w2, b2, f2)a=simuff(

44、p, w1, b1, f1, w2, b2, f2, w3, b3, f3)以上三式分別為單層、雙層和三層網(wǎng)絡(luò)結(jié)構(gòu)的仿真輸出。3訓(xùn)練函數(shù) 關(guān)于前面所提到的幾種BP網(wǎng)絡(luò)訓(xùn)練函數(shù),在這里只介紹其中之一:trainbp( )。函數(shù)trainbp( )利用BP算法訓(xùn)練前饋型網(wǎng)絡(luò)。trainbp( )函數(shù)可以訓(xùn)練單 層、雙層和三層的前饋型網(wǎng)絡(luò),其調(diào)用格式分別為:w, b, te, tr=trainbp(w,b,f,p,t,tp)w1,b1,w2,b2,te,tr=trai nbp(w1,b1,f1,w2,b2,f2 ,p,t,tp)w1,b1,w2,b2,w3,b3,te,tr=trainbp(w1,b

45、1,f1,w2,b2,f2,w3,b3,f3,p,t,t p)可選訓(xùn)練參數(shù)tp內(nèi)的四個參數(shù)依次為:tp(1)指定兩次顯示間的訓(xùn)練次數(shù),其缺省值25;tp(2)指定訓(xùn)練的最大次數(shù),其缺省值100;tp(3)指定誤差平方和指標(biāo),其缺省值0.02;tp(4)指定學(xué)習(xí)速率,其缺省值0.01;只有網(wǎng)絡(luò)誤差平方和降低到期望誤差之下,或者達到了最大訓(xùn)練次 數(shù),網(wǎng)絡(luò)才停止學(xué)習(xí)。學(xué)習(xí)速率指定了權(quán)值與閥值的更新比例,較小學(xué)習(xí) 速率會導(dǎo)致學(xué)習(xí)時間較長,但可提高網(wǎng)絡(luò)權(quán)值收斂效果。五、BP網(wǎng)絡(luò)的應(yīng)用舉例BP網(wǎng)絡(luò)的函數(shù)逼近舉例:設(shè)計一個BP網(wǎng)絡(luò),其隱含層神經(jīng)元的激勵 函數(shù)為雙曲正切函數(shù),輸出層神經(jīng)元的激勵函數(shù)為線性函數(shù),

46、學(xué)習(xí)樣本為21組單輸入矢量,理想輸出為相應(yīng)的單輸出矢量。輸入矢量為:p=-1:0.1:1;理想輸出矢量為:t=-0.96 -0.577 -0.0729 0.377 0.641 0.66 0.461 0.1336 -0.201 -0.434 -0.5 -0.393 -0.1647 0.0988 0.3072 0.396 0.3449 0.1816 -0.0312 -0.2183 -0.3201; 輸入輸出的函數(shù)關(guān)系曲線:plot(p,t)xlabel(Input)ylabel(Output)圖4.4輸入輸出關(guān)系利用輸入和理想輸出進行BP神經(jīng)網(wǎng)絡(luò)初始化:w1,b1,w2,b2=i nitff(p,

47、5,ta nsig,t,pureli n)利用函數(shù)trainbp對構(gòu)造的BP網(wǎng)絡(luò)進行訓(xùn)練:df=10me=8000eg=0.02lr=0.01tp=df me eg lrw1,b1,w2,b2,ep,tr=trai nbp(w1,b1,ta nsig,w2,b2,pureli n,p,t,tp)其中df指定兩次顯示間的訓(xùn)練次數(shù),其缺省值25;me指定訓(xùn)練的最大次數(shù),其缺省值100;eg指定誤差平方和指標(biāo),其缺省值0.02;lr指定學(xué)習(xí)速率,其缺省值0.01;訓(xùn)練結(jié)果與理想輸出對比分析:-1-1-0.8-0.6-0.4-0.200.20.40.60.8In put6 42O 2q tup .Jo

48、4610圖4.5訓(xùn)練結(jié)果與理想輸出對比分析網(wǎng)絡(luò)的訓(xùn)練過程中,網(wǎng)絡(luò)收斂效果一定程度上要受網(wǎng)絡(luò)初始化的初始 值的影響,實際輸出和理想輸出的誤差的變化情況可以反映網(wǎng)絡(luò)學(xué)習(xí)的效 果,這一點可以通過如圖4.6反映:ploterr(tr,eg)其中tr為網(wǎng)絡(luò)學(xué)習(xí)的循環(huán)次數(shù)。Fun ctio n Approximation-0.8-1-0.8-0.6-0.4-0.200.20.40.60.8In put1246+ .tear , .tupuo-1210Sum-Squared Network Error for 535 Epochs110010-110-2050100150200250300350400450

49、500Epoch圖4.6誤差曲線第五節(jié)徑向基函數(shù)網(wǎng)絡(luò)我們前面所學(xué)習(xí)的多層前饋型網(wǎng)絡(luò)模型對于每個輸入輸出數(shù)據(jù)對, 網(wǎng) 絡(luò)的每一個權(quán)值均需要調(diào)整,這樣的神經(jīng)網(wǎng)絡(luò)稱之為全局逼近神經(jīng)網(wǎng)絡(luò)。 全局逼近神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)速度很慢,這對于控制來說常常是不可忽視的。下 面我們將介紹一種新的網(wǎng)絡(luò):徑向基函數(shù)(Radial basisFanction簡記為RBF)網(wǎng)絡(luò)。徑向基函數(shù)網(wǎng)絡(luò)屬于局部逼近網(wǎng)絡(luò),所謂局部逼近網(wǎng)絡(luò)就是對于每個 輸入輸出數(shù)據(jù)對,只有少量的權(quán)值需要進行調(diào)整,也正是基于這一點才使 得局部逼近網(wǎng)絡(luò)具有學(xué)習(xí)速度快的優(yōu)點。另外,BP網(wǎng)絡(luò)用于函數(shù)逼近時,權(quán)值的調(diào)整是同梯度下降法,存在局部極小和收斂速度慢等缺點。而

50、RBF網(wǎng)絡(luò)在逼近能力、分類能力和學(xué)習(xí)速度等方面均優(yōu)于BP網(wǎng)絡(luò)。一、徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖5.1所示為徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖。徑向基函數(shù)網(wǎng)絡(luò)輸出單 元是線性求和單元,所以輸出是各隱單元輸出的加權(quán)和。隱單元的作用函 數(shù)用徑向基函數(shù),輸入到隱單元間的權(quán)值固定為1,只有隱單元到輸出單元的權(quán)值可調(diào)。輸入層隱含層 輸出層PjSi圖5.1 RBF網(wǎng)絡(luò)結(jié)構(gòu)圖、徑向基函數(shù)的學(xué)習(xí)算法徑向基函數(shù)網(wǎng)絡(luò)的學(xué)習(xí)算法常用的有兩種:一種是無導(dǎo)師學(xué)習(xí),另一 種便是有導(dǎo)師學(xué)習(xí)。這里我們只介紹無導(dǎo)師學(xué)習(xí)。無導(dǎo)師學(xué)習(xí)也稱非監(jiān)督學(xué)習(xí),地所有樣本的輸入進行聚類,求得各隱層節(jié)點的RBF的中心Ci。具體的算法步驟如下:1.給定各隱節(jié)點的

溫馨提示

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

最新文檔

評論

0/150

提交評論