




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rè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ò)運(yùn)行規(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),是以計算機(jī)網(wǎng)絡(luò)系統(tǒng)模擬生物神經(jīng)網(wǎng)絡(luò)的智能計算系統(tǒng), 是對人腦或自然神經(jīng)網(wǎng)絡(luò)的若干基本特性的抽象和模擬。網(wǎng)絡(luò)上的每個結(jié)點(diǎn)相當(dāng)于一個神經(jīng)元,可以記憶(存儲)、處理一定的信息,并與其它結(jié)點(diǎn)并行工作。神經(jīng)網(wǎng)絡(luò)的研究最早要追述到40年代心理學(xué)家Mcculloch和數(shù)學(xué)家Pitts合作提出的興奮與抑制型神經(jīng)元模型和Hebb提出的神經(jīng)元連接強(qiáng)度的修改規(guī)則,其成果至今仍是許多神經(jīng)網(wǎng)絡(luò)模型研究的基礎(chǔ)。5060年代的代表性工作主要有R
4、osenblatt的感知器模型、Widrow的自適應(yīng)網(wǎng)絡(luò)元件Adaline。然而在1969年Minsky和Papert合作發(fā)表的Perceptron一書中闡述了一種消極悲觀的論點(diǎn),在當(dāng)時產(chǎn)生了極大的消極影響,加之?dāng)?shù)字計算機(jī)正處于全盛時期并在人工智能領(lǐng)域取得顯著成就,這導(dǎo)致了70年代人工神經(jīng)網(wǎng)絡(luò)的研究處于空前的低潮階段。80年代以后,傳統(tǒng)的Von Neumann數(shù)字計算機(jī)在模擬視聽覺的人工智能方面遇到了物理上不可逾越的障礙。與此同時Rumelhart、Mcclelland和Hopfield等人在神經(jīng)網(wǎng)絡(luò)領(lǐng)域取得了突破性進(jìn)展,神經(jīng)網(wǎng)絡(luò)的熱潮再次掀起。目前較為流行的研究工作主要有:前饋網(wǎng)絡(luò)模型、反饋
5、網(wǎng)絡(luò)模型、自組織網(wǎng)絡(luò)模型等方面的理論。人工神經(jīng)網(wǎng)絡(luò)是在現(xiàn)代神經(jīng)科學(xué)的基礎(chǔ)上提出來的。它雖然反映了人腦功能的基本特征,但遠(yuǎn)不是自然神經(jīng)網(wǎng)絡(luò)的逼真描寫,而只是它的某種簡化抽象和模擬。求解一個問題是向人工神網(wǎng)絡(luò)的某些結(jié)點(diǎn)輸入信息,各結(jié)點(diǎn)處理后向其它結(jié)點(diǎn)輸出,其它結(jié)點(diǎn)接受并處理后再輸出,直到整個神經(jīng)網(wǎng)工作完畢,輸出最后結(jié)果。如同生物的神經(jīng)網(wǎng)絡(luò),并非所有神經(jīng)元每次都一樣地工作。如視、聽、摸、想不同的事件(輸入不同),各神經(jīng)元參與工作的程度不同。當(dāng)有聲音時,處理聲音的聽覺神經(jīng)元就要全力工作,視覺、觸覺神經(jīng)元基本不工作,主管思維的神經(jīng)元部分參與工作;閱讀時,聽覺神經(jīng)元基本不工作。在人工神經(jīng)網(wǎng)絡(luò)中以加權(quán)值控制
6、結(jié)點(diǎn)參與工作的程度。正權(quán)值相當(dāng)于神經(jīng)元突觸受到刺激而興奮,負(fù)權(quán)值相當(dāng)于受到抑制而使神經(jīng)元麻痹直到完全不工作。如果通過一個樣板問題“教會”人工神經(jīng)網(wǎng)絡(luò)處理這個問題,即通過“學(xué)習(xí)”而使各結(jié)點(diǎn)的加權(quán)值得到肯定,那么,這一類的問題它都可以解。好的學(xué)習(xí)算法會使它不斷積累知識,根據(jù)不同的問題自動調(diào)整一組加權(quán)值,使它具有良好的自適應(yīng)性。此外,它本來就是一部分結(jié)點(diǎn)參與工作。當(dāng)某結(jié)點(diǎn)出故障時,它就讓功能相近的其它結(jié)點(diǎn)頂替有故障結(jié)點(diǎn)參與工作,使系統(tǒng)不致中斷。所以,它有很強(qiáng)的容錯能力。人工神經(jīng)網(wǎng)絡(luò)通過樣板的“學(xué)習(xí)和培訓(xùn)”,可記憶客觀事物在空間、時間方面比較復(fù)雜的關(guān)系,適合于解決各類預(yù)測、分類、評估匹配、識別等問題。
7、例如,將人工神經(jīng)網(wǎng)絡(luò)上的各個結(jié)點(diǎn)模擬各地氣象站,根據(jù)某一時刻的采樣參數(shù)(壓強(qiáng)、濕度、風(fēng)速、溫度),同時計算后將結(jié)果輸出到下一個氣象站,則可模擬出未來氣候參數(shù)的變化,作出準(zhǔn)確預(yù)報。即使有突變參數(shù)(如風(fēng)暴,寒流)也能正確計算。所以,人工神經(jīng)網(wǎng)絡(luò)在經(jīng)濟(jì)分析、市場預(yù)測、金融趨勢、化工最優(yōu)過程、航空航天器的飛行控制、醫(yī)學(xué)、環(huán)境保護(hù)等領(lǐng)域都有應(yīng)用的前景。人工神經(jīng)網(wǎng)絡(luò)的特點(diǎn)和優(yōu)越性使它近年來引起人們的極大關(guān)注,主要表現(xiàn)在三個方面:第一,具有自學(xué)習(xí)功能。例如實(shí)現(xiàn)圖像識別時,只需把許多不同的圖像樣板和對應(yīng)的應(yīng)識別的結(jié)果輸入人工神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)就會通過自學(xué)習(xí)功能,慢慢學(xué)會識別類似的圖像。自學(xué)習(xí)功能對于預(yù)測有特別重要
8、的意義。人工神經(jīng)網(wǎng)絡(luò)計算機(jī)將為人類提供經(jīng)濟(jì)預(yù)測、市場預(yù)測、效益預(yù)測,其前途是很遠(yuǎn)大的。第二,具有聯(lián)想存儲功能。人的大腦是具有聯(lián)想功能的。如果有人和你提起你幼年的同學(xué)張某某,你就會聯(lián)想起張某某的許多事情。用人工神經(jīng)網(wǎng)絡(luò)的反饋網(wǎng)絡(luò)就可以實(shí)現(xiàn)這種聯(lián)想。第三,具有高速尋找最優(yōu)解的能力。尋找一個復(fù)雜問題的最優(yōu)解,往往需要很大的計算量,利用一個針對某問題而設(shè)計的人工神經(jīng)網(wǎng)絡(luò),發(fā)揮計算機(jī)的高速運(yùn)算能力,可能很快找到最優(yōu)解。人工神經(jīng)網(wǎng)絡(luò)是未來微電子技術(shù)應(yīng)用的新領(lǐng)域,智能計算機(jī)的構(gòu)成就是作為主機(jī)的馮·諾依曼計算機(jī)與作為智能外圍機(jī)的人工神經(jīng)網(wǎng)絡(luò)的結(jié)合。二、生物神經(jīng)元模型神經(jīng)元是腦組織的基本單元,其結(jié)構(gòu)如
9、圖1所示,神經(jīng)元由三部分構(gòu)成:細(xì)胞體,樹突和軸突;每一部分雖具有各自的功能,但相互之間是互補(bǔ)的。樹突是細(xì)胞的輸入端,通過細(xì)胞體間聯(lián)結(jié)的節(jié)點(diǎn)“突觸”接受四周細(xì)胞傳出的神經(jīng)沖動;軸突相當(dāng)于細(xì)胞的輸出端,其端部的眾多神經(jīng)未梢為信號的輸出端子,用于傳出神經(jīng)沖動。神經(jīng)元具有興奮和抑制的兩種工作狀態(tài)。當(dāng)傳入的神經(jīng)沖動,使細(xì)胞膜電位升高到閥值(約為40mV)時,細(xì)胞進(jìn)入興奮狀態(tài),產(chǎn)生神經(jīng)沖動,由軸突輸出。相反,若傳入的神經(jīng)沖動,使細(xì)胞膜電位下降到低于閥值時,細(xì)胞進(jìn)入抑制狀態(tài),沒有神經(jīng)沖動輸出。圖1 生物神經(jīng)元結(jié)構(gòu)二、人工神經(jīng)元模型人工神經(jīng)元模型是以大腦神經(jīng)細(xì)胞的活動規(guī)律為原理的,反映了大腦神經(jīng)細(xì)胞的某些基本
10、特征,但不是也不可能是人腦細(xì)胞的真實(shí)再現(xiàn),從數(shù)學(xué)的角度而言,它是對人腦細(xì)胞的高度抽象和簡化的結(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)元之間的連接強(qiáng)度,稱為連接權(quán),稱為神經(jīng)元的激活值,O表示這個神經(jīng)元的輸出,每個神經(jīng)元有一個閥值,如果神經(jīng)元輸入信號的加權(quán)和超過,神經(jīng)元就處于興奮狀態(tài)。以數(shù)學(xué)表達(dá)式描述為:O=f(-)三、Matlab的神經(jīng)網(wǎng)絡(luò)工具包由于神經(jīng)網(wǎng)絡(luò)自身的特點(diǎn),計算中經(jīng)常涉及到大量的訓(xùn)練樣
11、本數(shù)據(jù)、復(fù)雜的運(yùn)算操作、繁瑣的程序設(shè)計等問題。對此,具有強(qiáng)大功能的數(shù)學(xué)軟件Matlab,為我們提供了神經(jīng)網(wǎng)絡(luò)工具箱Neural Netwoks Toolbox (NNT)及豐富的函數(shù)命令。NNT是進(jìn)行神經(jīng)網(wǎng)絡(luò)訓(xùn)練和仿真的優(yōu)良平臺。常用來對網(wǎng)絡(luò)進(jìn)行初始化、仿真、設(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)網(wǎng)絡(luò)工具包,可以用來方便地創(chuàng)建各種神經(jīng)網(wǎng)絡(luò),對數(shù)據(jù)進(jìn)行學(xué)習(xí)和模擬輸出。Matlab中普遍采用的是物理和工程學(xué)
12、中強(qiáng)有力的矩陣描述的語言,簡潔優(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)元的輸出能代表對輸入模式進(jìn)行的分類,圖2.1為感知器神經(jīng)元模型。x1x2xRoooiwi1wi2wiR1o圖2.1 感知器神經(jīng)元模型感知器神經(jīng)元的每一個輸入都對應(yīng)于一個合適的權(quán)值,所有的輸入與其對應(yīng)權(quán)值的加權(quán)和作為閥值函數(shù)的輸入。由于閥值函數(shù)的引入,
13、從而使得感知器可以將輸入向量分為兩個區(qū)域,通常閥函數(shù)采用雙極階躍函數(shù),如: (2.1)而感知器神經(jīng)元模型的實(shí)際輸出為 (2.2)其中b為閥值二、感知器的網(wǎng)絡(luò)結(jié)構(gòu)圖2.2所描述的是一個簡單的感知器網(wǎng)絡(luò)結(jié)構(gòu),輸入層有R個輸入,Q個輸出,通過權(quán)值wij與s個感知器神經(jīng)元連接組成的感知器神經(jīng)網(wǎng)絡(luò)。P oN1 obR×QS×RS×1S×QnS×Qa圖2.2 感知器神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) 根據(jù)網(wǎng)絡(luò)結(jié)構(gòu),可以寫出感知器處理單元對其輸入的加權(quán)和操作,即: (2.3)而其輸出ai為ai=f (ni+bi) (2.4)由式2.1易知 (2.5)則當(dāng)輸入ni+bi大于等于0,
14、即有nibi時,感知器的輸出為1;否則輸出為0。上面所述的單層感知器神經(jīng)網(wǎng)絡(luò)是不可能解決線性不可分的輸入向量分類問題,也不能推廣到一般的前向網(wǎng)絡(luò)中去。為解決這一問題,我們可以設(shè)計多層感知器神經(jīng)網(wǎng)絡(luò)以實(shí)現(xiàn)任意形狀的劃分。圖2.3描述了一個雙層感知器神經(jīng)網(wǎng)絡(luò)。其工作方式與單層感知器網(wǎng)絡(luò)一樣,只不過是增加了一層而已,具體的內(nèi)容這里不做討論。P ow11 obR×QS×RS×1a1W2a2圖2.3 感知器神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) ob三、感知器神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則感知器的學(xué)習(xí)規(guī)則主要是通過調(diào)整網(wǎng)絡(luò)層的權(quán)值和閥值以便能夠地網(wǎng)絡(luò)的輸入向量進(jìn)行正確的分類。如圖2.2所示的輸入向量P、輸出和量
15、a和目標(biāo)向量為t的感知器神經(jīng)網(wǎng)絡(luò),感知器的學(xué)習(xí)規(guī)則是根據(jù)以下輸出矢量a可能出現(xiàn)的幾種情況未進(jìn)行參與調(diào)整的:1)如果第i個神經(jīng)元的輸出是正確的,即有ait1,則與第i個神經(jīng)元聯(lián)接的權(quán)值和閥值保持不變。2)如果第i個神經(jīng)元的輸出是不正確,應(yīng)該有兩種情況。i)實(shí)際輸出為0,而理想輸出為1,即有ai=0,而ti1,則所有的輸入j對權(quán)值和閥值進(jìn)行調(diào)整,修正值w1j=pj,bj=1。ii)實(shí)際輸出為1,而期望輸出為0,即有ai=1,而ti=0,則對所有的輸入j進(jìn)行權(quán)值和閥值調(diào)整,w1j=pj,bi=1?;诟兄髡`差e=ta,感知器學(xué)習(xí)規(guī)則可望寫為:w1j=ei·pj可以證明當(dāng)前輸入樣本來自線性
16、可分的模式時,上述學(xué)習(xí)算法在有限步同收斂,這時所得的權(quán)值能對所有樣本正確分類,這一結(jié)論被稱為感知器收斂定理。四、感知器神經(jīng)網(wǎng)絡(luò)的訓(xùn)練要使前向神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)某種功能,必須對它進(jìn)行訓(xùn)練,讓它逐步學(xué)會要做的事情,并把所學(xué)到的知識記憶在網(wǎng)絡(luò)的權(quán)值中。感知器神經(jīng)網(wǎng)絡(luò)的訓(xùn)練是采用由一組樣本組成的集合來進(jìn)行。在訓(xùn)練期間,將這些樣本重復(fù)輸入,通過調(diào)整權(quán)值使感知器的輸出達(dá)到所要求的理想輸出。感知器的訓(xùn)練主要是反復(fù)對感知器神經(jīng)網(wǎng)絡(luò)進(jìn)行仿真和學(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ù)目。假定我們
17、采用圖2.2的網(wǎng)絡(luò)結(jié)構(gòu)。2)初始化:權(quán)值向量w和閥值向量b分別賦予1,+1之間的隨機(jī)值,并且給出訓(xùn)練的最大次數(shù)。3)根據(jù)輸入向量P、最新權(quán)值向量w和閥值向量b,計算網(wǎng)絡(luò)輸出向量a。4)檢查感知器輸出向量與目標(biāo)向量是否一致,或者是否達(dá)到了最大的訓(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)由于
19、函數(shù)trainp( )并不能保證感知器網(wǎng)絡(luò)所得到的網(wǎng)絡(luò)權(quán)值和閥值達(dá)到要求。因此,在訓(xùn)練完后,要用下列驗證語句驗證一下。a=sim(p, w, b);if all(a= =t),disp( It works!),end假如網(wǎng)絡(luò)不能成功運(yùn)行,就可以繼續(xù)運(yùn)用trainp( )函數(shù)對網(wǎng)絡(luò)進(jìn)行訓(xùn)練。經(jīng)足夠的訓(xùn)練后,網(wǎng)絡(luò)仍達(dá)不到要求,那么就應(yīng)當(dāng)認(rèn)真分析一下,感知器網(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ò)的四只問題,下面將給出一個具體的問題進(jìn)行分析,問題的描述如下:
20、兩種蠓蟲Af和Apf已由生物學(xué)家與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.08Apf觸角長1.141.181.201.261.281
21、.30翼 長1.781.961.862.002.001.96輸入向量為:p=1.24 1.36 1.38 1.378 1.38 1.40 1.48 1.54 1.56 1.14 1.18 1.20 1.26 1.28 1.30;1.72 1.74 1.64 1.82 1.90 1.70 1.70 1.82 2.08 1.78 1.96 1.86 2.00 2.00 1.96 目標(biāo)向量為:圖2.4 樣本圖形顯示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)的用“o”來表示:plotpv(p,t)為解決該問題,利用函數(shù)newp構(gòu)造輸入量
22、在0,2.5之間的感知器神經(jīng)網(wǎng)絡(luò)模型:net=newp(0 2.5;0 2.5,1)初始化網(wǎng)絡(luò):net=init(net)利用函數(shù)adapt調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值,直到誤差為0時訓(xùn)練結(jié)束:net, y, e=adapt(net, 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進(jìn)行仿真,解決實(shí)際的分類問題:p1=1.24;1.80a1=sim(net,p1)p2=1.28;1.84a2=sim(net,p2)p3=1.40;2.04a3=sim(net,p3)網(wǎng)絡(luò)仿真結(jié)果為:a1=0 a2=0 a3=
23、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)矢量的方法上進(jìn)行了改進(jìn),不僅提高了訓(xùn)練收斂速度,而且提高了訓(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 Squ
24、are,簡稱LMS)規(guī)則來調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值。線性神經(jīng)網(wǎng)絡(luò)的主要用途是線性逼近一個函數(shù)表達(dá)式,具有聯(lián)想功能。另外,它還適用于信號處理濾波、預(yù)測、模式識別和控制等方面。一、線性神經(jīng)元模型線性神經(jīng)元可以訓(xùn)練學(xué)習(xí)一個與之對應(yīng)的輸入輸出函數(shù)關(guān)系,或線性逼近任意一個非線性函數(shù),但它不能產(chǎn)生任何非線性的計算特性。圖3.1描述了一個具有R個輸入的由純線性函數(shù)組成的線性神經(jīng)元。P1P2PRooow1w2wRb1a圖3.1 線性神經(jīng)元模型由于線性神經(jīng)網(wǎng)絡(luò)中神經(jīng)元的傳遞函數(shù)為線性函數(shù),其輸入與輸出之間是簡單的比例關(guān)系:a=g(w*p,b)其中函數(shù)g(x)為線性函數(shù)。二、線性神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖3.2描述了一個由S個
25、神經(jīng)元相并聯(lián)形成一層網(wǎng)絡(luò),這種網(wǎng)絡(luò)也稱為Madaline網(wǎng)絡(luò)。P oN1 obR×1S×RS×1S×1nS×1a圖3.2 線性神經(jīng)元網(wǎng)絡(luò)WH學(xué)習(xí)規(guī)則只能訓(xùn)練單層的線性神經(jīng)網(wǎng)絡(luò),但這并不是什么嚴(yán)重問題。因為對線性神經(jīng)網(wǎng)絡(luò)而言,完全可以設(shè)計出一個性能完全相當(dāng)?shù)膯螌泳€性神經(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ù):E(w,b)=(ta)2=(tw*p)2 3.1由式3.1可看出,線性網(wǎng)絡(luò)具有拋物
26、線型誤差函數(shù)所形成的誤差表面。所以只有一個誤差最小值。通過WH學(xué)習(xí)規(guī)則來計算權(quán)值和偏差的變化,并使網(wǎng)絡(luò)的誤差平方和最小化,總能夠訓(xùn)練一個網(wǎng)絡(luò)的誤差趨于最小值。這可通過沿著相對于誤差平方和最速下降方向連續(xù)調(diào)整網(wǎng)絡(luò)的權(quán)值和閥值來實(shí)現(xiàn)。根據(jù)梯度下降法,權(quán)矢量的修正值正比于當(dāng)前位置上E(w,b)的梯度,對于第i輸出節(jié)點(diǎn)為: 3.2或表示為: 3.3 3.4這里i定義為第i個輸出節(jié)點(diǎn)的誤差:i=tiai 3.5式3.3稱為WH學(xué)習(xí)規(guī)則。WH學(xué)習(xí)規(guī)則的權(quán)值變化量正比于網(wǎng)絡(luò)的輸出誤差及網(wǎng)絡(luò)的輸入向量。它不需求導(dǎo)數(shù),所以算法簡單,又具有收斂速度快和精度高的優(yōu)點(diǎn)。式3.3中的ç稱為學(xué)習(xí)率,學(xué)習(xí)率的選取
27、可以適當(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ìn)行。如果經(jīng)過訓(xùn)練網(wǎng)絡(luò)不能達(dá)到期望目標(biāo),可以繼續(xù)對網(wǎng)絡(luò)進(jìn)行訓(xùn)練。經(jīng)過足夠的訓(xùn)練后,網(wǎng)絡(luò)還是達(dá)不到要求。那么就仔細(xì)地分析一下, 所要解決的問題,是否適合于線性神經(jīng)網(wǎng)絡(luò)。五、重要線性神經(jīng)網(wǎng)絡(luò)函數(shù)的使用方法在MATLAB神經(jīng)網(wǎng)絡(luò)工具箱中提供了基于線性神經(jīng)網(wǎng)絡(luò)的初始化函數(shù)initlin( )、設(shè)計函數(shù)solvelin( )、仿真函數(shù)simuli
28、n( )以及訓(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)用命令如下:w,b=solve lin(p,t);3仿真函數(shù)simulin( )函數(shù)si
29、mulin( )可得到線性網(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ò)進(jìn)行離線訓(xùn)練;而函數(shù)adaptwh( ) 可以對線性神經(jīng)網(wǎng)絡(luò)進(jìn)行在線自適應(yīng)訓(xùn)練。利用trainwh( )函數(shù)可以得到網(wǎng)絡(luò)的權(quán)矩陣w,閥值向量b,實(shí)際訓(xùn)練次數(shù)te 以及訓(xùn)練過程中網(wǎng)絡(luò)的誤差平方和lr。w,b,te,lr=trainwh(w,b,p,t,tp)輸入變量中訓(xùn)練參數(shù)tp為:·tp(1)指定兩次更新顯示間的訓(xùn)練次數(shù),其缺
30、省值為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)絡(luò)的應(yīng)用舉例為了理解線性神
31、經(jīng)網(wǎng)絡(luò)的理論及其應(yīng)用問題,下面給出一個實(shí)際問題進(jìn)行分析,設(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.3 樣本信號利用輸入樣本信號和理想輸出進(jìn)行線性神經(jīng)網(wǎng)絡(luò)初始化:w,b=initlin(p,t)然后利用函數(shù)adaptwh對構(gòu)造的網(wǎng)絡(luò)進(jìn)行訓(xùn)練,lr=0.01
32、; 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 Signals)xlabel(Time); ylabel(Output_ Target_)圖3.4 仿真結(jié)果與目標(biāo)信號對比分析誤差分析:plot(time,e)hold on; plot(min(time) max(time),0 0,':r')xlabel('Time'); ylabel('Error')圖
33、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ò)信息處理的重要性,并致力于研究并行分布信息處理方法,探索人類認(rèn)知的微結(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型函數(shù),因此輸出量為0到1之間的連續(xù)量,它可以實(shí)現(xiàn)從輸入到輸出的任意的非線性映射。由于其權(quán)值的
34、調(diào)整是利用實(shí)際輸出與期望輸出之差,對網(wǎng)絡(luò)的各層連接權(quán)由后向前逐層進(jìn)行校正的計算方法,故而稱為反向傳播(Back-Propogation)學(xué)習(xí)算法,簡稱為BP算法。BP算法主要是利用輸入、輸出樣本集進(jìn)行相應(yīng)訓(xùn)練,使網(wǎng)絡(luò)達(dá)到給定的輸入輸出映射函數(shù)關(guān)系。算法常分為兩個階段:第一階段(正向計算過程)由樣本選取信息從輸入層經(jīng)隱含層逐層計算各單元的輸出值;第二階段(誤差反向傳播過程)由輸出層計算誤差并逐層向前算出隱含層各單元的誤差,并以此修正前一層權(quán)值。BP網(wǎng)絡(luò)主要用于函數(shù)逼近、模式識別、分類以及數(shù)據(jù)壓縮等方面。一、BP網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu)P oW11 oB1R×QS1×RS1×1
35、a2a1f11 ow2S2×S1b2S1×qf2S2×q隱含層輸出層BP網(wǎng)絡(luò)通常至少有一個隱含層,如圖4.1所示的是一個具有R個輸入和一個隱含層的神經(jīng)網(wǎng)絡(luò)模型。圖4.1 具有一個隱含層的BP網(wǎng)絡(luò)結(jié)構(gòu)感知器與線性神經(jīng)元的主要差別在于激勵函數(shù)上:前者是二值型的,而后者是線性的。BP網(wǎng)絡(luò)除了在多層網(wǎng)絡(luò)上與已介紹過的模型有不同外,其主要差別也表現(xiàn)在激勵函數(shù)上。圖4.2所示的兩種S型激勵函數(shù)的圖形,可以看到f(· )是連續(xù)可微的單調(diào)遞增函數(shù),這種激勵函數(shù)的輸出特性比較軟,其輸出狀態(tài)的取值范圍為0,1或者-1,+1,其硬度可以由參數(shù)來調(diào)節(jié)。函數(shù)的輸入輸出關(guān)系表達(dá)式如
36、下所示:雙極型的S型激勵函數(shù):, f(net)(-1,1)單極型的S型激勵函數(shù):, f(net)(0,1)圖4.2 sigmoid型函數(shù)圖形對于多層網(wǎng)絡(luò),這種激勵函數(shù)所劃分的區(qū)域不再是線性劃分,而是由一個非線性的超平面組成的區(qū)域。因為S型函數(shù)具有非線性的大系數(shù)功能。它可以把輸入從負(fù)無窮到正無窮大的信號變換成1到1之間輸出,所以采用S型函數(shù)可以實(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)的實(shí)際輸出。 隱含層中第i個神經(jīng)元的輸出為 (4.1) 輸出層中第k個神經(jīng)元的輸出為: (4.2)其中f1(·), f2 (·)分別為隱含層的激勵函數(shù)。2)輸出誤差逆?zhèn)鞑ピ诘谝徊降臉颖卷槀鞑ビ嬎阒形覀兊玫搅司W(wǎng)絡(luò)的實(shí)際輸出值,當(dāng)這些實(shí)際的輸出值與期望輸出值不一樣時,或者說其誤差大于所限定的數(shù)值時,就要對網(wǎng)絡(luò)進(jìn)行校正。首先,定義誤差函數(shù)E(w,b)= (4.
38、3)其次,給出權(quán)值的變化 輸出層的權(quán)值變化從第i個輸入到第k個輸出的權(quán)值為: (4.4)其中: (4.5) (4.6) 隱含層的權(quán)值變化從第j個輸入到第i個輸出的權(quán)值為: (為學(xué)習(xí)系數(shù)) (4.7)其中: (4.8) (4.9)由此可以看出:調(diào)整是與誤差成正比,即誤差越大調(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ìn)行逐漸減小其值。最后,將輸出誤差由輸出層經(jīng)中間層傳向輸
39、入層,逐層進(jìn)行校正。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)練實(shí)際上就是反復(fù)重復(fù)上面介紹的輸入模式正向傳播和輸出誤差逆?zhèn)鞑ミ^程。4)學(xué)習(xí)結(jié)束的檢驗當(dāng)每次循環(huán)記憶結(jié)束后,都要進(jìn)行學(xué)習(xí)是否結(jié)束的檢驗。檢驗的目的主要是檢查輸出誤差是否已經(jīng)符合要求。如果小到了允許的程度,就可以結(jié)束整個學(xué)習(xí)過程,否則還要進(jìn)行循環(huán)訓(xùn)練。三、BP網(wǎng)絡(luò)的訓(xùn)練對BP網(wǎng)絡(luò)進(jìn)行訓(xùn)練時,首先要提供一組訓(xùn)練樣本,其中每個樣本由輸入樣本和輸出對組成。當(dāng)網(wǎng)絡(luò)的所有實(shí)際輸出與其理想輸出一致時,表明訓(xùn)練結(jié)束。否則,通
40、過修正權(quán)值,使網(wǎng)絡(luò)的實(shí)際輸出與理想輸出一致。實(shí)際上針對不同具體情況,BP網(wǎng)絡(luò)的訓(xùn)練有相應(yīng)的學(xué)習(xí)規(guī)則,即不同的最優(yōu)化算法,沿減少理想輸出與實(shí)際輸出之間誤差的原則,實(shí)現(xiàn)BP網(wǎng)絡(luò)的函數(shù)逼近、向量分類和模式識別。以圖4.3為例來說明BP網(wǎng)絡(luò)訓(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上服從均勻分布隨機(jī)數(shù),并取定期望誤差、最大循環(huán)次數(shù)和修正權(quán)值的學(xué)習(xí)率的初始值。其次,利用相應(yīng)的BP網(wǎng)絡(luò)學(xué)習(xí)規(guī)則對網(wǎng)絡(luò)進(jìn)行訓(xùn)練,求得權(quán)值修正后的誤差平方和。最后,檢查網(wǎng)絡(luò)誤差平方和是否降低到期望誤差之下,若是,訓(xùn)練
41、結(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ò)。其中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
42、, 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, 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ò)有一個特點(diǎn)很重要,即p中的每一行中必須包含網(wǎng)絡(luò)期望輸入的最大值和最小值,這樣才能合理地初始化權(quán)值和閥值。2仿真函數(shù)simuf
43、f( )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(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)練單層、雙層和三
44、層的前饋型網(wǎng)絡(luò),其調(diào)用格式分別為:w, b, te, tr=trainbp(w, b, f,p, t, tp)w1, b1, w2, b2, te, tr=trainbp(w1,b1, f1,w2, b2, f2,p, t, tp)w1,b1,w2,b2,w3,b3,te,tr=trainbp(w1, b1, f1,w2, b2, f2,w3, b3, f3,p, t, tp)可選訓(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;
45、183;tp(4)指定學(xué)習(xí)速率,其缺省值0.01;只有網(wǎng)絡(luò)誤差平方和降低到期望誤差之下,或者達(dá)到了最大訓(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ù),學(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
46、-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)系利用輸入和理想輸出進(jìn)行BP神經(jīng)網(wǎng)絡(luò)初始化:w1,b1,w2,b2=initff(p,5,'tansig',t,'purelin')利用函數(shù)trainbp對構(gòu)造的BP網(wǎng)絡(luò)進(jìn)行訓(xùn)練:df=10me=8000eg=0.02lr=0.01tp=df me eg
47、lrw1,b1,w2,b2,ep,tr=trainbp(w1,b1,'tansig',w2,b2,'purelin',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é)果與理想輸出對比分析:圖4.5 訓(xùn)練結(jié)果與理想輸出對比分析網(wǎng)絡(luò)的訓(xùn)練過程中,網(wǎng)絡(luò)收斂效果一定程度上要受網(wǎng)絡(luò)初始化的初始值的影響,實(shí)際輸出和理想輸出的誤差的變化情況可以反映網(wǎng)絡(luò)學(xué)習(xí)的效果,這一點(diǎn)可以通過如圖4.6反映:ploterr(tr, eg)其中tr為網(wǎng)絡(luò)學(xué)習(xí)
48、的循環(huán)次數(shù)。圖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 basis Fanction簡記為RBF)網(wǎng)絡(luò)。徑向基函數(shù)網(wǎng)絡(luò)屬于局部逼近網(wǎng)絡(luò),所謂局部逼近網(wǎng)絡(luò)就是對于每個輸入輸出數(shù)據(jù)對,只有少量的權(quán)值需要進(jìn)行調(diào)整,也正是基于這一點(diǎn)才使得局部逼近網(wǎng)絡(luò)具有學(xué)習(xí)速度快的優(yōu)點(diǎn)。另外,BP網(wǎng)絡(luò)用于函數(shù)逼近時,權(quán)值的調(diào)整是同梯度下降法,存在局部極小和收斂速度慢等缺點(diǎn)。而RBF網(wǎng)絡(luò)
49、在逼近能力、分類能力和學(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)。輸入層隱含層輸出層pjSiwkiak圖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í),地所有樣本的輸入進(jìn)行聚類,求得各隱層節(jié)點(diǎn)的RBF的中心Ci。具體的算法步驟如下:1給定各隱節(jié)點(diǎn)的初始中
50、心Ci( · );2計算距離(歐氏距離)并求出最小距離的節(jié)點(diǎn);di (t) = p (t) Ci(t1), 1imdmin(t)=mindi(t)=dr(t) (5.1)式中,Ci第i個隱節(jié)點(diǎn)的中心, i=1,2,m; ·通常為歐氏范數(shù)。3調(diào)整中心Ci(t)=Ci(t1), 1im, irCr(t)=Ci(t1)+(p(t)-Cr(t1)式中,學(xué)習(xí)速率,0<<1。4計算節(jié)點(diǎn)r的距離dr(t)=p(t)-Cr(t) (5.3)三、重要徑向基函數(shù)的函數(shù)使用方法徑向基函數(shù)網(wǎng)絡(luò)的仿真是用函數(shù)simurb( )來實(shí)現(xiàn)的,傳遞函數(shù)是radbas( ),而它的訓(xùn)練可以用兩個函
51、數(shù)來實(shí)現(xiàn),solverb或solverbe。1仿真函數(shù)simurb ( )徑向基函數(shù)網(wǎng)絡(luò)只有一個隱含層,隱含層單元采用徑向基函數(shù)作為其輸出特性,輸入層到輸出層之間的權(quán)值均固定為1,輸出節(jié)點(diǎn)為線性求和單元,隱含層到輸出層節(jié)點(diǎn)之間的權(quán)值可以調(diào)節(jié)。徑向基函數(shù)網(wǎng)絡(luò)能在有限步內(nèi)以任意精度擬合函數(shù),而且訓(xùn)練時間比較短。仿真函數(shù)simurb( )可得網(wǎng)絡(luò)層的輸出a=simurb(p,w1,b1,w2,b2)式中,p為輸入矢量,w1,b1為徑向基神經(jīng)元層的權(quán)值和閥值,w2,b2為線性神經(jīng)元的權(quán)值和閥值。2徑向基傳遞函數(shù)rodbas( )徑向基傳遞函數(shù)用于徑向基網(wǎng)絡(luò)中,其使用方式多種:radbas(n)radb
52、as(z,b)其中radbas(n)函數(shù)可對網(wǎng)絡(luò)輸入矩陣n中的所有元素如同徑向基函數(shù)。radbas(z,b)函數(shù)提供成批處理矢量,并且提供閥值的情況,這時閥值b與加權(quán)輸入矩陣z是分開的,閥值b乘以z 中的每個矢量,以形成網(wǎng)絡(luò)的輸入矢量,然后利用徑向基函數(shù)網(wǎng)絡(luò)輸入轉(zhuǎn)換成輸出。對于徑向基函數(shù)的訓(xùn)練可用兩個函數(shù)來實(shí)現(xiàn)。現(xiàn)在我們介紹如下:1)solverb ( )徑向基函數(shù)網(wǎng)絡(luò)能較好地擬合任意有限值函數(shù),而且可以通過快速的設(shè)計來取代漫長的訓(xùn)練。利用solverb ( )函數(shù)可得到徑向基函數(shù)隱層的權(quán)值w1和閥值b1,還得到了線性輸出層的權(quán)值w2和閥值b2。w1, b1, w2, b2=solverb(p
53、, t, tp)其中設(shè)計參數(shù)tp指示如何進(jìn)行訓(xùn)練。·tp(1)指定更新顯示之間的迭代次數(shù),其缺省值25;·tp(2)指定最多的神經(jīng)元數(shù),其缺省值100;·tp(3)誤差平方和門限,缺省值為0.02;·tp(4)指定徑向基層的寬度,缺省值1.0。2)函數(shù)solverbe( )函數(shù)solverbe( )的訂功能是精確徑向基函數(shù)求解。利用solverbe( )也可得到徑向基網(wǎng)絡(luò)隱層的權(quán)值w1和閥值b1,以及線性輸出層的權(quán)值w2和閥值b2。其調(diào)用格式如下w1, b1, w2, b2=solverbe(p, t, sc)式中的可逆變量sc為徑向基函數(shù)的寬度,即從函
54、數(shù)值為1到其值為0.5之間的距離,其缺省值為1。第六節(jié) 反饋網(wǎng)絡(luò) 按照人工神經(jīng)元網(wǎng)絡(luò)運(yùn)行過程中信息的流向分類?,F(xiàn)有網(wǎng)絡(luò)可分為前饋型和反饋型以及它們的結(jié)合。從計算的觀點(diǎn)看,前饋型神經(jīng)元網(wǎng)絡(luò)大部分是學(xué)習(xí)網(wǎng)絡(luò)而不具有的力學(xué)行為。在反饋式神經(jīng)網(wǎng)絡(luò)中,所有單元都是一樣的,它們之間可以相互連接,所以反饋式神經(jīng)網(wǎng)絡(luò)可以用一個無向完備圖來表示。從系統(tǒng)的觀點(diǎn)看,反饋網(wǎng)絡(luò)是一個非線性動力學(xué)系統(tǒng)。它必然具有一般非線性動力學(xué)系統(tǒng)的許多性質(zhì),如網(wǎng)絡(luò)系統(tǒng)具有若干個穩(wěn)定狀態(tài),當(dāng)網(wǎng)絡(luò)從某一初始狀態(tài)開始運(yùn)動,網(wǎng)絡(luò)系統(tǒng)總可以收斂到某一個穩(wěn)定的平衡狀態(tài);還有系統(tǒng)穩(wěn)定的平衡狀態(tài)可以通過設(shè)計網(wǎng)絡(luò)的權(quán)值而被存儲到網(wǎng)絡(luò)中。在某些情況下,還有隨機(jī)性和不可預(yù)測性等,因此,比前饋網(wǎng)絡(luò)的內(nèi)容要廣闊和豐富得多。 反饋
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年高郵市市屬事業(yè)單位考試真題
- 管理人員安全培訓(xùn)考試題及答案全套
- 2025年醫(yī)護(hù)管理通訊裝置合作協(xié)議書
- 公司項目負(fù)責(zé)人安全培訓(xùn)試題及完整答案【易錯題】
- 公司廠級員工安全培訓(xùn)試題及完整答案(歷年真題)
- 高風(fēng)險駕駛環(huán)境應(yīng)對培訓(xùn)計劃
- 信息技術(shù)服務(wù)中的質(zhì)量保證體系
- 公共服務(wù)領(lǐng)域技術(shù)創(chuàng)新實(shí)施措施
- 物流中心建設(shè)的施工難點(diǎn)及應(yīng)對措施
- 高職院校實(shí)習(xí)教學(xué)質(zhì)量保障措施
- 《手術(shù)體位擺放》課件
- CJJ-181-2012(精華部分)城鎮(zhèn)排水管道檢測與評估技術(shù)規(guī)程
- 肝惡性腫瘤護(hù)理查房課件
- 數(shù)列難題專題(含答案)
- 新視野大學(xué)英語(第四版)讀寫教程2(思政智慧版) 課件 Unit3 The young generation making a difference Section A
- 典型事例500字六年級
- 危險化學(xué)品儲存配存表
- 從業(yè)人員晨檢記錄記錄簿
- 某工程水池混凝土池壁裂縫原因分析
- 大課間跑操評分表
- 分戶驗收最大偏差、極差自動計算表
評論
0/150
提交評論