【精品】基于MATLABBP神經(jīng)網(wǎng)絡(luò)的應(yīng)用畢業(yè)設(shè)計(jì)_第1頁
【精品】基于MATLABBP神經(jīng)網(wǎng)絡(luò)的應(yīng)用畢業(yè)設(shè)計(jì)_第2頁
【精品】基于MATLABBP神經(jīng)網(wǎng)絡(luò)的應(yīng)用畢業(yè)設(shè)計(jì)_第3頁
【精品】基于MATLABBP神經(jīng)網(wǎng)絡(luò)的應(yīng)用畢業(yè)設(shè)計(jì)_第4頁
【精品】基于MATLABBP神經(jīng)網(wǎng)絡(luò)的應(yīng)用畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、(此文檔為word格式,下載后您可任意編輯修改?。┠夸?緒論11.1 人工神經(jīng)網(wǎng)絡(luò)的研究背景和意義21.2 神經(jīng)網(wǎng)絡(luò)的發(fā)展與研究現(xiàn)狀21.3 神經(jīng)網(wǎng)絡(luò)的研究?jī)?nèi)容和目前存在的問題31.4 神經(jīng)網(wǎng)絡(luò)的應(yīng)用42神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)及BP神經(jīng)網(wǎng)絡(luò)52.1 神經(jīng)元與網(wǎng)絡(luò)結(jié)構(gòu)52.2 BP神經(jīng)網(wǎng)絡(luò)及其原理72.3 BP神經(jīng)網(wǎng)絡(luò)的主要功能102.4 BP網(wǎng)絡(luò)的優(yōu)點(diǎn)以及局限性103BP神經(jīng)網(wǎng)絡(luò)在實(shí)例中的應(yīng)用113.1 基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)123.2 BP網(wǎng)絡(luò)在函數(shù)逼聽中的應(yīng)用153.3 BP網(wǎng)絡(luò)在樣本含量估計(jì)中的應(yīng)用214結(jié)束語23參考文獻(xiàn):24英文摘要25致詞26基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)應(yīng)

2、用蔣亮亮南京信息工程大學(xué)濱江學(xué)院自動(dòng)化專業(yè),南京210044摘要:本文首先說明課題研究的目的和意義,評(píng)述課題的國(guó)內(nèi)外研究現(xiàn)狀,引出目前存在的問題。然后分析了神經(jīng)網(wǎng)絡(luò)算法的基本原理,給出經(jīng)典神經(jīng)網(wǎng)絡(luò)算法的具體實(shí)現(xiàn)方法,總結(jié)神經(jīng)網(wǎng)絡(luò)算法的特點(diǎn),并給出神經(jīng)網(wǎng)絡(luò)算法的基本流程。采用Matlab軟件編程實(shí)現(xiàn)BP神經(jīng)網(wǎng)絡(luò)算法。將神經(jīng)網(wǎng)絡(luò)算法應(yīng)用于函數(shù)逼近和樣本含量估計(jì)問題中,并分析相關(guān)參數(shù)對(duì)算法運(yùn)行結(jié)果的影響。最后對(duì)BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行了展望。關(guān)鍵詞:神經(jīng)網(wǎng)絡(luò);BP神經(jīng)網(wǎng)絡(luò);函數(shù)逼近1緒論人工神經(jīng)網(wǎng)絡(luò)(ArtificialNeuralNetworks,NN)是由大量的、簡(jiǎn)單的處理單元(稱為神經(jīng)元)廣泛地互

3、相連接而形成的復(fù)雜網(wǎng)絡(luò)系統(tǒng),它反映了人腦功能的許多基本特征,是一個(gè)高度復(fù)雜的非線性動(dòng)力學(xué)系統(tǒng)1。神經(jīng)網(wǎng)絡(luò)具有大規(guī)模并行、分布式存儲(chǔ)和處理、自組織、自適應(yīng)和自學(xué)習(xí)能力,特別適合處理需要同時(shí)考慮許多因素和條件的、不精確和模糊的信息處理問題。神經(jīng)網(wǎng)絡(luò)的發(fā)展與神經(jīng)科學(xué)、數(shù)理科學(xué)、認(rèn)知科學(xué)、計(jì)算機(jī)科學(xué)、人工智能、信息科學(xué)、控制論、機(jī)器人學(xué)、微電子學(xué)、心理學(xué)、微電子學(xué)、心理學(xué)、光計(jì)算、分子生物學(xué)等有關(guān),是一門新興的邊緣交叉學(xué)科。神經(jīng)網(wǎng)絡(luò)具有非線性自適應(yīng)的信息處理能力,克服了傳統(tǒng)人工智能方法對(duì)于直覺的缺陷,因而在神經(jīng)專家系統(tǒng)、模式識(shí)別、智能控制、組合優(yōu)化、預(yù)測(cè)等領(lǐng)域得到成功應(yīng)用2。神經(jīng)網(wǎng)絡(luò)與其他傳統(tǒng)方法相組

4、合,將推動(dòng)人工智能和信息處理技術(shù)不斷發(fā)展。近年來,神經(jīng)網(wǎng)絡(luò)在模擬人類認(rèn)知的道路上更加深入發(fā)展,并與模糊系統(tǒng)、遺傳算法、進(jìn)化機(jī)制等組合,形成計(jì)算智能,成為人工智能的一個(gè)重要方向。MATLAB是一種科學(xué)與工程計(jì)算的高級(jí)語言,廣泛地運(yùn)用于包括信號(hào)與圖像處理,控制系統(tǒng)設(shè)計(jì),系統(tǒng)仿真等諸多領(lǐng)域。為了解決神經(jīng)網(wǎng)絡(luò)問題中的研究工作量和編程計(jì)算工作量問題,目前工程領(lǐng)域中較為流行的軟件MATLAB,提供了現(xiàn)成的神經(jīng)網(wǎng)絡(luò)工具箱(NeuralNetworkToolbox,簡(jiǎn)稱NNbox)3,為解決這個(gè)矛盾提供了便利條件。神經(jīng)網(wǎng)絡(luò)工具箱提供了很多經(jīng)典的學(xué)習(xí)算法,使用它能夠快速實(shí)現(xiàn)對(duì)實(shí)際問題的建模求解。在解決實(shí)際問題中

5、,應(yīng)用MATLAB語言構(gòu)造典型神經(jīng)網(wǎng)絡(luò)的激活傳遞函數(shù),編寫各種網(wǎng)絡(luò)設(shè)計(jì)與訓(xùn)練的子程序,網(wǎng)絡(luò)的設(shè)計(jì)者可以根據(jù)需要調(diào)用工具箱中有關(guān)神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)訓(xùn)練程序,使自己能夠從煩瑣的編程中解脫出來,減輕工程人員的負(fù)擔(dān),從而提高工作效率。1.1 人工神經(jīng)網(wǎng)絡(luò)的研究背景和意義人工神經(jīng)網(wǎng)絡(luò)是由具有適應(yīng)性的簡(jiǎn)單單元組成的廣泛并行互連的網(wǎng)絡(luò),它的組織能夠模擬生物神經(jīng)系統(tǒng)對(duì)真實(shí)世界物體所作出的交互反應(yīng)5。人工神經(jīng)網(wǎng)絡(luò)就是模擬人思維的一種方式,是一個(gè)非線性動(dòng)力學(xué)系統(tǒng),其特色在于信息的分布式存儲(chǔ)和并行協(xié)同處理。雖然單個(gè)神經(jīng)元的結(jié)構(gòu)極其簡(jiǎn)單,功能有限,但大量神經(jīng)元構(gòu)成的網(wǎng)絡(luò)系統(tǒng)所能實(shí)現(xiàn)的行為卻是極其豐富多彩的。近年來通過對(duì)人

6、工神經(jīng)網(wǎng)絡(luò)的研究,可以看出神經(jīng)網(wǎng)絡(luò)的研究目的和意義有以下三點(diǎn):(1)通過揭示物理平面與認(rèn)知平面之間的映射,了解它們相互聯(lián)系和相互作用的機(jī)理,從而揭示思維的本質(zhì),探索智能的本源。(2)爭(zhēng)取構(gòu)造出盡可能與人腦具有相似功能的計(jì)算機(jī),即神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)。(3)研究仿照腦神經(jīng)系統(tǒng)的人工神經(jīng)網(wǎng)絡(luò),將在模式識(shí)別、組合優(yōu)化和決策判斷等方面取得傳統(tǒng)計(jì)算機(jī)所難以達(dá)到的效果。人工神經(jīng)網(wǎng)絡(luò)特有的非線性適應(yīng)性信息處理能力,克服了傳統(tǒng)人工智能方法對(duì)于直覺,如模式、語音識(shí)別、非結(jié)構(gòu)化信息處理方面的缺陷,使之在神經(jīng)專家系統(tǒng)、模式識(shí)別、智能控制、組合優(yōu)化、預(yù)測(cè)等領(lǐng)域得到成功應(yīng)用。人工神經(jīng)網(wǎng)絡(luò)與其它傳統(tǒng)方法相結(jié)合,將推動(dòng)人工智能和

7、信息處理技術(shù)不斷發(fā)展。近年來,人工神經(jīng)網(wǎng)絡(luò)正向模擬人類認(rèn)知的道路上更加深入發(fā)展,與模糊系統(tǒng)、遺傳算法、進(jìn)化機(jī)制等結(jié)合,形成計(jì)算智能,成為人工智能的一個(gè)重要方向,將在實(shí)際應(yīng)用中得到發(fā)展。將信息幾何應(yīng)用于人工神經(jīng)網(wǎng)絡(luò)的研究,為人工神經(jīng)網(wǎng)絡(luò)的理論研究開辟了新的途徑。神經(jīng)計(jì)算機(jī)的研究發(fā)展很快,已有產(chǎn)品進(jìn)入市場(chǎng)。光電結(jié)合的神經(jīng)計(jì)算機(jī)為人工神經(jīng)網(wǎng)絡(luò)的發(fā)展提供了良好條件。1.2神經(jīng)網(wǎng)絡(luò)的發(fā)展與研究現(xiàn)狀1. 2.1神經(jīng)網(wǎng)絡(luò)的發(fā)展神經(jīng)網(wǎng)絡(luò)起源于20世紀(jì)40年代,至今發(fā)展已半個(gè)多世紀(jì),大致分為三個(gè)階段。1) 20世紀(jì)50年代-20世紀(jì)60年代:第一次研究高潮自1943年M-P模型開始,至20世紀(jì)60年代為止,這一

8、段時(shí)間可以稱為神經(jīng)網(wǎng)絡(luò)系統(tǒng)理論發(fā)展的初期階段。這個(gè)時(shí)期的主要特點(diǎn)是多種網(wǎng)絡(luò)的模型的產(chǎn)生與學(xué)習(xí)算法的確定。2) 20世紀(jì)60年代-20世紀(jì)70年代:低潮時(shí)期到了20世紀(jì)60年代,人們發(fā)現(xiàn)感知器存在一些缺陷,例如,它不能解決異或問題,因而研究工作趨向低潮。不過仍有不少學(xué)者繼續(xù)對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行研究。Grossberg提出了自適應(yīng)共振理論;Kohenen提出了自組織映射;Fukushima提出了神經(jīng)認(rèn)知網(wǎng)絡(luò)理論;Anderson提出了BSB模型;Webos提出了BP理論等。這些都是在20世紀(jì)70年代和20世紀(jì)80年代初進(jìn)行的工作。3) 20世紀(jì)80年代-90年代:第二次研究高潮進(jìn)入20世紀(jì)80年代,神經(jīng)

9、網(wǎng)絡(luò)研究進(jìn)入高潮。這個(gè)時(shí)期最具有標(biāo)志性的人物是美國(guó)加州工學(xué)院的物理學(xué)家JohnHopfield。他于1982年和1984年在美國(guó)科學(xué)院院刊上發(fā)表了兩篇文章,提出了模擬人腦的神經(jīng)網(wǎng)絡(luò)模型,即最著名的Hopfield模型。Hopfield網(wǎng)絡(luò)是一個(gè)互連的非線性動(dòng)力學(xué)網(wǎng)絡(luò),它解決問題的方法是一種反復(fù)運(yùn)算的動(dòng)態(tài)過程,這是符號(hào)邏輯處理方式做不具備的性質(zhì)。20世紀(jì)80年代后期到90年代初,神經(jīng)網(wǎng)絡(luò)系統(tǒng)理論形成了發(fā)展的熱點(diǎn),多種模型、算法和應(yīng)用被提出,研究經(jīng)費(fèi)重新變得充足,使得研究者們完成了很多有意義的工作。1. 2.2神經(jīng)網(wǎng)絡(luò)的現(xiàn)狀進(jìn)入20世紀(jì)90年代以來,神經(jīng)網(wǎng)絡(luò)由于應(yīng)用面還不夠?qū)?,結(jié)果不夠精確,存在可

10、信度問題,從而進(jìn)入了認(rèn)識(shí)與應(yīng)用研究期。1)開發(fā)現(xiàn)有模型的應(yīng)用,并在應(yīng)用中根據(jù)實(shí)際運(yùn)行情況對(duì)模型、算法加以改造,以提高網(wǎng)絡(luò)的訓(xùn)練速度和運(yùn)行的準(zhǔn)確度。2)充分發(fā)揮兩種技術(shù)各自的優(yōu)勢(shì)是一個(gè)有效方法。3)希望在理論上尋找新的突破,建立新的專用通用模型和算法。4)進(jìn)一步對(duì)生物神經(jīng)系統(tǒng)進(jìn)行研究,不斷地豐富對(duì)人腦的認(rèn)識(shí)。1.3神經(jīng)網(wǎng)絡(luò)的研究?jī)?nèi)容和目前存在的問題1.3.1神經(jīng)網(wǎng)絡(luò)的研究?jī)?nèi)容神經(jīng)網(wǎng)絡(luò)的研究?jī)?nèi)容相當(dāng)廣泛,反映了多科學(xué)交叉技術(shù)領(lǐng)域的特點(diǎn)。目前,主要的研究工作集中在以下四方面6:(1)生物原型研究:從生理學(xué)、心理學(xué)、解剖學(xué)、腦科學(xué)、病理學(xué)生物科學(xué)方面研究神經(jīng)細(xì)胞、神經(jīng)網(wǎng)絡(luò)、神經(jīng)系統(tǒng)的生物原型結(jié)構(gòu)及其功

11、能機(jī)理。(2)建立理論模型:根據(jù)生物圓形的研究,建立神經(jīng)元、神經(jīng)網(wǎng)絡(luò)的理論模型,其中包括概念模型、知識(shí)模型、物理化學(xué)模型、數(shù)學(xué)模型等。(3)網(wǎng)絡(luò)模型與算法研究:在理論模型研究的基礎(chǔ)上構(gòu)成具體的神經(jīng)網(wǎng)絡(luò)模型,以實(shí)現(xiàn)計(jì)算機(jī)模擬或準(zhǔn)備制作硬件,包括網(wǎng)絡(luò)學(xué)習(xí)算法的研究。這方面的工作也稱為技術(shù)模型研究。(4)神經(jīng)網(wǎng)絡(luò)應(yīng)用系統(tǒng):在網(wǎng)絡(luò)模型與算法研究的基礎(chǔ)上,利用神經(jīng)網(wǎng)絡(luò)組成實(shí)際的應(yīng)用系統(tǒng),例如,完成某種信號(hào)處理或模式識(shí)別的功能、構(gòu)成專家系統(tǒng)、制成機(jī)器人等。2. 3.2神經(jīng)網(wǎng)絡(luò)研究目前存在的問題人工神經(jīng)網(wǎng)絡(luò)的發(fā)展具有強(qiáng)大的生命力。當(dāng)前存在的問題是智能水平還不高,許多應(yīng)用方面的要求還不能得到很好的滿足;網(wǎng)絡(luò)分

12、析與綜合的一些理論性問題還未得到很好的解決。例如,由于訓(xùn)練中穩(wěn)定性的要求學(xué)習(xí)率很小,所以梯度下降法使得訓(xùn)練很忙動(dòng)量法因?yàn)閷W(xué)習(xí)率的提高通常比單純的梯度下降法要快,但在實(shí)際應(yīng)用中還是很慢7。針對(duì)千變?nèi)f化的應(yīng)用對(duì)象,各類復(fù)雜的求解問題,編制一些特定的程序、軟件求解,耗費(fèi)了大量的人力和物力。而這些軟件往往只針對(duì)某一方面的問題有效,并且在人機(jī)接口、用戶友好性等諸多方面存在一定的缺陷。在微機(jī)飛速發(fā)展的今天,很多都已不能滿足發(fā)展的需要。1.4神經(jīng)網(wǎng)絡(luò)的應(yīng)用神經(jīng)網(wǎng)絡(luò)理論的應(yīng)用取得了令人矚目的發(fā)展,特別是在人工智能、自動(dòng)控制、計(jì)算機(jī)科學(xué)、信息處理、機(jī)器人、模式識(shí)別、CADCAM等方面都有重大的應(yīng)用實(shí)例。下面列出

13、一些主要應(yīng)用領(lǐng)域4:(1)模式識(shí)別和圖像處理。印刷體和手寫字符識(shí)別、語音識(shí)別、簽字識(shí)別、指紋識(shí)別、人體病理分析、目標(biāo)檢測(cè)與識(shí)別、圖像壓縮和圖像復(fù)制等。(2)控制和優(yōu)化?;み^程控制、機(jī)器人運(yùn)動(dòng)控制、家電控制、半導(dǎo)體生產(chǎn)中摻雜控制、石油精煉優(yōu)化控制和超大規(guī)模集成電路布線設(shè)計(jì)等。(3)預(yù)報(bào)和智能信息管理。股票市場(chǎng)預(yù)測(cè)、地震預(yù)報(bào)、有價(jià)證券管理、借貸風(fēng)險(xiǎn)分析、IC卡管理和交通管理。(4)通信。自適應(yīng)均衡、回波抵消、路由選擇和ATM網(wǎng)絡(luò)中的呼叫接納識(shí)別和控制。(5)空間科學(xué)??臻g交匯對(duì)接控制、導(dǎo)航信息智能管理、飛行器制導(dǎo)和飛行程序優(yōu)化管理等。2神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)及BP神經(jīng)網(wǎng)絡(luò)3. 1神經(jīng)元與網(wǎng)絡(luò)結(jié)構(gòu)人工神經(jīng)網(wǎng)

14、絡(luò)(artificialneuralnetwork,ANN)是模仿生物神經(jīng)網(wǎng)絡(luò)功能的一種經(jīng)驗(yàn)?zāi)P?。生物神?jīng)元受到傳入的刺激,其反應(yīng)又從輸出端傳到相聯(lián)的其它神經(jīng)元,輸入和輸出之間的變換關(guān)系一般是非線性的。神經(jīng)網(wǎng)絡(luò)是由若干簡(jiǎn)單(通常是自適應(yīng)的)元件及其層次組織,以大規(guī)模并行連接方式構(gòu)造而成的網(wǎng)絡(luò),按照生物神經(jīng)網(wǎng)絡(luò)類似的方式處理輸入的信息。模仿生物神經(jīng)網(wǎng)絡(luò)而建立的人工神經(jīng)網(wǎng)絡(luò),對(duì)輸入信號(hào)有功能強(qiáng)大的反應(yīng)和處理能力網(wǎng)。神經(jīng)網(wǎng)絡(luò)是由大量的處理單元(神經(jīng)元)互相連接而成的網(wǎng)絡(luò)。為了模擬大腦的基本特性,在神經(jīng)科學(xué)研究的基礎(chǔ)上,提出了神經(jīng)網(wǎng)絡(luò)的模型。但是,實(shí)際上神經(jīng)網(wǎng)絡(luò)并沒有完全反映大腦的功能,只是對(duì)生物神經(jīng)

15、網(wǎng)絡(luò)進(jìn)行了某種抽象、簡(jiǎn)化和模擬8。神經(jīng)網(wǎng)絡(luò)的信息處理通過神經(jīng)元的互相作用來實(shí)現(xiàn),知識(shí)與信息的存儲(chǔ)表現(xiàn)為網(wǎng)絡(luò)元件互相分布式的物理聯(lián)系。神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)和識(shí)別取決于各種神經(jīng)元連接權(quán)系數(shù)的動(dòng)態(tài)演化過程。若干神經(jīng)元連接成網(wǎng)絡(luò),其中的一個(gè)神經(jīng)元可以接受多個(gè)輸入信號(hào),按照一定的規(guī)則轉(zhuǎn)換為輸出信號(hào)由于神經(jīng)網(wǎng)絡(luò)中神經(jīng)元間復(fù)雜的連接關(guān)系和各神經(jīng)元傳遞信號(hào)的非線性方式,輸入和輸出信號(hào)間可以構(gòu)建出各種各樣的關(guān)系,因此可以用來作為黑箱模型,表達(dá)那些用機(jī)理模型還無法精確描述、但輸入和輸出之間確實(shí)有客觀的、確定性的或模糊性的規(guī)律。因此,人工神經(jīng)網(wǎng)絡(luò)作為經(jīng)驗(yàn)?zāi)P偷囊环N,在化工生產(chǎn)、研究和開發(fā)中得到了越來越多的用途。3.1.1

16、 生物神經(jīng)元人腦大約由1012個(gè)神經(jīng)元組成,神經(jīng)元互相連接成神經(jīng)網(wǎng)絡(luò)。神經(jīng)元是大腦處理信息的基本單元,以細(xì)胞體為主體,由許多向周圍延伸的不規(guī)則樹枝狀纖維構(gòu)成的神經(jīng)細(xì)胞,其形狀很像一棵枯樹的枝干。它主要由細(xì)胞體、樹突、軸突和突觸(Synapse,又稱神經(jīng)鍵)組成。如圖2.1所示。自其他神經(jīng)元愀費(fèi)神耗束梢圖2.1生物神經(jīng)元從神經(jīng)元各組成部分的功能來看,信息的處理與傳遞主要發(fā)生在突觸附近。當(dāng)神經(jīng)元細(xì)胞體通過軸突傳到突觸前膜的脈沖幅度達(dá)到一定強(qiáng)度,即超過其閾值電位后,突觸前膜將向突觸間隙釋放神經(jīng)傳遞的化學(xué)物質(zhì)。2.1.2人工神經(jīng)元?dú)w納一下生物神經(jīng)元傳遞信息的過程:生物神經(jīng)元是一個(gè)多輸入、單輸出單元。常

17、用的人工神經(jīng)元模型可用圖2.2模擬。圖2.2人工神經(jīng)元(感知器)示意圖當(dāng)神經(jīng)元j有多個(gè)輸入Xi(i=1,2,,m)和單個(gè)輸出yj時(shí),輸入和輸出的關(guān)系可表示為(2.3)yj=f(Sj)其中j為閾值,Wij為從神經(jīng)元i到神經(jīng)元j的連接權(quán)重因子,f()為傳遞函數(shù),或稱激勵(lì)函數(shù)。2.1.3人工神經(jīng)網(wǎng)絡(luò)的構(gòu)成神經(jīng)元的模型確定之后,一個(gè)神經(jīng)網(wǎng)絡(luò)的特性及能力主要取決于網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)及學(xué)習(xí)方法。神經(jīng)網(wǎng)絡(luò)連接的幾種基本形式17:1)前向網(wǎng)絡(luò)前向網(wǎng)絡(luò)結(jié)構(gòu)如圖2.4所示,網(wǎng)絡(luò)中的神經(jīng)元是分層排列的,每個(gè)神經(jīng)元只與前一層的神經(jīng)元相連接。神經(jīng)元分層排列,分別組成輸入層、中間層(也稱為隱含層,可以由若干層組成)和輸出層。

18、每一層的神經(jīng)元只接受來自前一層神經(jīng)元的輸入,后面的層對(duì)前面的層沒有信號(hào)反饋。輸入模式經(jīng)過各層次的順序傳播,最后在輸出層上得到輸出。感知器網(wǎng)絡(luò)和BP網(wǎng)絡(luò)均屬于前向網(wǎng)絡(luò)。圖2.4前向網(wǎng)絡(luò)結(jié)構(gòu)2)從輸出到輸入有反饋的前向網(wǎng)絡(luò)其結(jié)構(gòu)如圖2.5所示,輸出層對(duì)輸入層有信息反饋,這種網(wǎng)絡(luò)可用于存儲(chǔ)某種模式序列,如神經(jīng)認(rèn)知機(jī)和回歸BP網(wǎng)絡(luò)都屬于這種類型。圖2.5有反饋的前向網(wǎng)絡(luò)結(jié)構(gòu)3)層內(nèi)互連前向網(wǎng)絡(luò)其結(jié)構(gòu)如圖2.6所示,通過層內(nèi)神經(jīng)元的相互結(jié)合,可以實(shí)現(xiàn)同一層神經(jīng)元之間的橫向抑制或興奮機(jī)制。這樣可以限制每層內(nèi)可以同時(shí)動(dòng)作的神經(jīng)元素,或者把每層內(nèi)的神經(jīng)元分為若干組,讓每一組作為一個(gè)整體進(jìn)行運(yùn)作。例如,可利用橫

19、向抑制機(jī)理把某層內(nèi)的具有最大輸出的神經(jīng)元挑選出來,從而抑制其他神經(jīng)元,使之處于無輸出狀態(tài)。圖2.6有相互結(jié)合的前向網(wǎng)絡(luò)結(jié)構(gòu)4)相互結(jié)合型網(wǎng)絡(luò)相互結(jié)合型網(wǎng)絡(luò)結(jié)構(gòu)如圖2.7所示,這種網(wǎng)絡(luò)在任意兩個(gè)神經(jīng)元之間都可能有連接。Hopfield網(wǎng)絡(luò)和Boltzmann機(jī)均屬于這種類型。在無反饋的前向網(wǎng)絡(luò)中,信號(hào)一旦通過某神經(jīng)元,該神經(jīng)元的處理就結(jié)束了。而在相互結(jié)合網(wǎng)絡(luò)中,信號(hào)要在神經(jīng)元之間反復(fù)傳遞,網(wǎng)絡(luò)處于一種不斷變化狀態(tài)的動(dòng)態(tài)之中。信號(hào)從某初始狀態(tài)開始,經(jīng)過若干次變化,才會(huì)達(dá)到某種平衡狀態(tài)。根據(jù)網(wǎng)絡(luò)的結(jié)構(gòu)和神經(jīng)元的特性,網(wǎng)絡(luò)的運(yùn)行還有可能進(jìn)入周期振蕩或其他如混沌平衡狀態(tài)。圖2.7結(jié)合型網(wǎng)絡(luò)結(jié)構(gòu)綜上,可知

20、神經(jīng)網(wǎng)絡(luò)有分層網(wǎng)絡(luò)、層內(nèi)連接的分層網(wǎng)絡(luò)、反饋連接的分層網(wǎng)絡(luò)、互連網(wǎng)絡(luò)等四種結(jié)構(gòu),其神經(jīng)網(wǎng)絡(luò)模型有感知器網(wǎng)絡(luò),線性神經(jīng)網(wǎng)絡(luò),BP神經(jīng)網(wǎng)絡(luò),徑向基函數(shù)網(wǎng)絡(luò),反饋神經(jīng)網(wǎng)絡(luò)等,本文主要學(xué)習(xí)研究了BP神經(jīng)網(wǎng)絡(luò),以及BP神經(jīng)網(wǎng)絡(luò)在函數(shù)逼近和樣本含量估計(jì)兩個(gè)實(shí)例中的應(yīng)用分析。2.2BP神經(jīng)網(wǎng)絡(luò)及其原理2.2.1BP神經(jīng)網(wǎng)絡(luò)定義BP(BackPropagation)神經(jīng)網(wǎng)絡(luò)是一種神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法。其由輸入層、中間層、輸出層組成的階層型神經(jīng)網(wǎng)絡(luò),中間層可擴(kuò)展為多層。相鄰層之間各神經(jīng)元進(jìn)行全連接,而每層各神經(jīng)元之間無連接,網(wǎng)絡(luò)按有教師示教的方式進(jìn)行學(xué)習(xí),當(dāng)一對(duì)學(xué)習(xí)模式提供給網(wǎng)絡(luò)后,各神經(jīng)元獲得網(wǎng)絡(luò)的輸入響應(yīng)產(chǎn)生連

21、接權(quán)值(Weight)。然后按減小希望輸出與實(shí)際輸出誤差的方向,從輸出層經(jīng)各中間層逐層修正各連接權(quán),回到輸入層。此過程反復(fù)交替進(jìn)行,直至網(wǎng)絡(luò)的全局誤差趨向給定的極小值,即完成學(xué)習(xí)的過程。2.2.2BP神經(jīng)網(wǎng)絡(luò)模型及其基本原理BP神經(jīng)網(wǎng)絡(luò)是誤差反向傳播神經(jīng)網(wǎng)絡(luò)的簡(jiǎn)稱,它由一個(gè)輸入層,一個(gè)或多個(gè)隱含層和一個(gè)輸出層構(gòu)成,每一次由一定數(shù)量的的神經(jīng)元構(gòu)成。這些神經(jīng)元如同人的神經(jīng)細(xì)胞一樣是互相關(guān)聯(lián)的。其結(jié)構(gòu)如圖2.8所示:輸入層隱層輸出層圖2.8BP神經(jīng)網(wǎng)絡(luò)模型生物神經(jīng)元信號(hào)的傳遞是通過突觸進(jìn)行的一個(gè)復(fù)雜的電化學(xué)等過程,在人工神經(jīng)網(wǎng)絡(luò)中是將其簡(jiǎn)化模擬成一組數(shù)字信號(hào)通過一定的學(xué)習(xí)規(guī)則而不斷變動(dòng)更新的過程,這

22、組數(shù)字儲(chǔ)存在神經(jīng)元之間的連接權(quán)重。網(wǎng)絡(luò)的輸入層模擬的是神經(jīng)系統(tǒng)中的感覺神經(jīng)元,它接收輸入樣本信號(hào)。輸入信號(hào)經(jīng)輸入層輸入,通過隱含層的復(fù)雜計(jì)算由輸出層輸出,輸出信號(hào)與期望輸出相比較,若有誤差,再將誤差信號(hào)反向由輸出層通過隱含層處理后向輸入層傳播。在這個(gè)過程中,誤差通過梯度下降算法,分?jǐn)偨o各層的所有單元,從而獲得各單元的誤差信號(hào),以此誤差信號(hào)為依據(jù)修正各單元權(quán)值,網(wǎng)絡(luò)權(quán)值因此被重新分布。此過程完成后,輸入信號(hào)再次由輸入層輸入網(wǎng)絡(luò),重復(fù)上述過程。這種信號(hào)正向傳播與誤差反向傳播的各層權(quán)值調(diào)整過程周而復(fù)始地進(jìn)行著,直到網(wǎng)絡(luò)輸出的誤差減少到可以接受的程度,或進(jìn)行到預(yù)先設(shè)定的學(xué)習(xí)次數(shù)為止。權(quán)值不斷調(diào)整的過程

23、就是網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練過程。BP神經(jīng)網(wǎng)絡(luò)的信息處理方式具有如下特點(diǎn):1)信息分布存儲(chǔ)。人腦存儲(chǔ)信息的特點(diǎn)是利用突觸效能的變化來調(diào)整存儲(chǔ)內(nèi)容,即信息存儲(chǔ)在神經(jīng)元之間的連接強(qiáng)度的分布上,BP神經(jīng)網(wǎng)絡(luò)模擬人腦的這一特點(diǎn),使信息以連接權(quán)值的形式分布于整個(gè)網(wǎng)絡(luò)。2)信息并行處理。人腦神經(jīng)元之間傳遞脈沖信號(hào)的速度遠(yuǎn)低于馮諾依曼計(jì)算機(jī)的工作速度,但是在很多問題上卻可以做出快速的判斷、決策和處理,這是由于人腦是一個(gè)大規(guī)模并行與串行組合的處理系統(tǒng)。BP神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)模仿人腦,具有并行處理的特征,大大提高了網(wǎng)絡(luò)功能。3)具有容錯(cuò)性。生物神經(jīng)系統(tǒng)部分不嚴(yán)重?fù)p傷并不影響整體功能,BP神經(jīng)網(wǎng)絡(luò)也具有這種特性,網(wǎng)絡(luò)的高度

24、連接意味著少量的誤差可能不會(huì)產(chǎn)生嚴(yán)重的后果,部分神經(jīng)元的損傷不破壞整體,它可以自動(dòng)修正誤差。這與現(xiàn)代計(jì)算機(jī)的脆弱性形成鮮明對(duì)比。4)具有自學(xué)習(xí)、自組織、自適應(yīng)的能力。BP神經(jīng)網(wǎng)絡(luò)具有初步的自適應(yīng)與自組織能力,在學(xué)習(xí)或訓(xùn)練中改變突觸權(quán)值以適應(yīng)環(huán)境,可以在使用過程中不斷學(xué)習(xí)完善自己的功能,并且同一網(wǎng)絡(luò)因?qū)W習(xí)方式的不同可以具有不同的功能,它甚至具有創(chuàng)新能力,可以發(fā)展知識(shí),以至超過設(shè)計(jì)者原有的知識(shí)水平。2.3BP神經(jīng)網(wǎng)絡(luò)的主要功能目前,在人工神經(jīng)網(wǎng)絡(luò)的實(shí)際應(yīng)用中。絕大部分的神經(jīng)網(wǎng)絡(luò)模型都采用BP神經(jīng)網(wǎng)絡(luò)及其變化形式。它也是前向網(wǎng)絡(luò)的核心部分,體現(xiàn)了人工神經(jīng)網(wǎng)絡(luò)的精華。BP網(wǎng)絡(luò)主要用于以下四方面冏。(1

25、) 函數(shù)逼近:用輸入向量和相應(yīng)的輸出向量訓(xùn)練一個(gè)網(wǎng)絡(luò)以逼近一個(gè)函數(shù)。(2) 模式識(shí)別:用一個(gè)待定的輸出向量將它與輸入向量聯(lián)系起來。(3) 分類:把輸入向量所定義的合適方式進(jìn)行分類。(4) 數(shù)據(jù)壓縮:減少輸出向量維數(shù)以便傳輸或存儲(chǔ)。2. 4BP網(wǎng)絡(luò)的優(yōu)點(diǎn)以及局限性BP神經(jīng)網(wǎng)絡(luò)最主要的優(yōu)點(diǎn)是具有極強(qiáng)的非線性映射能力網(wǎng)。理論上,對(duì)于一個(gè)三層和三層以上的BP網(wǎng)絡(luò),只要隱層神經(jīng)元數(shù)目足夠多,該網(wǎng)絡(luò)就能以任意精度逼近一個(gè)非線性函數(shù)。其次,BP神經(jīng)網(wǎng)絡(luò)具有對(duì)外界刺激和輸入信息進(jìn)行聯(lián)想記憶的能力。這是因?yàn)樗捎昧朔植疾⑿械男畔⑻幚矸绞?,?duì)信息的提取必須采用聯(lián)想的方式,才能將相關(guān)神經(jīng)元全部調(diào)動(dòng)起來。BP神經(jīng)網(wǎng)絡(luò)

26、通過預(yù)先存儲(chǔ)信息和學(xué)習(xí)機(jī)制進(jìn)行自適應(yīng)訓(xùn)練,可以從不完整的信息和噪聲干擾中恢復(fù)原始的完整信息。這種能力使其在圖像復(fù)原、語言處理、模式識(shí)別等方面具有重要應(yīng)用。再次,BP神經(jīng)網(wǎng)絡(luò)對(duì)外界輸入樣本有很強(qiáng)的識(shí)別與分類能力。由于它具有強(qiáng)大的非線性處理能力,因此可以較好地進(jìn)行非線性分類,解決了神經(jīng)網(wǎng)絡(luò)發(fā)展史上的非線性分類難題。另外,BP神經(jīng)網(wǎng)絡(luò)具有優(yōu)化計(jì)算能力。BP神經(jīng)網(wǎng)絡(luò)本質(zhì)上是一個(gè)非線性優(yōu)化問題,它可以在已知的約束條件下,尋找一組參數(shù)組合,使該組合確定的目標(biāo)函數(shù)達(dá)到最小。不過,其優(yōu)化計(jì)算存在局部極小問題,必須通過改進(jìn)完善13。由于BP網(wǎng)絡(luò)訓(xùn)練中穩(wěn)定性要求學(xué)習(xí)效率很小,所以梯度下降法使得訓(xùn)練很慢。動(dòng)量法因?yàn)?/p>

27、學(xué)習(xí)率的提高通常比單純的梯度下降法要快一些,但在實(shí)際應(yīng)用中還是速度不夠,這兩種方法通常只應(yīng)用于遞增訓(xùn)練。多層神經(jīng)網(wǎng)絡(luò)可以應(yīng)用于線性系統(tǒng)和非線性系統(tǒng)中,對(duì)于任意函數(shù)模擬逼近。當(dāng)然,感知器和線性神經(jīng)網(wǎng)絡(luò)能夠解決這類網(wǎng)絡(luò)問題。但是,雖然理論上是可行的,但實(shí)際上BP網(wǎng)絡(luò)并不一定總能有解。對(duì)于非線性系統(tǒng),選擇合適的學(xué)習(xí)率是一個(gè)重要的問題。在線性網(wǎng)絡(luò)中,學(xué)習(xí)率過大會(huì)導(dǎo)致訓(xùn)練過程不穩(wěn)定。相反,學(xué)習(xí)率過小又會(huì)造成訓(xùn)練時(shí)間過長(zhǎng)。和線性網(wǎng)絡(luò)不同,對(duì)于非線性多層網(wǎng)絡(luò)很難選擇很好的學(xué)習(xí)率。對(duì)那些快速訓(xùn)練算法,缺省參數(shù)值基本上都是最有效的設(shè)置10。非線性網(wǎng)絡(luò)的誤差面比線性網(wǎng)絡(luò)的誤差面復(fù)雜得多,問題在于多層網(wǎng)絡(luò)中非線性傳

28、遞函數(shù)有多個(gè)局部最優(yōu)解。尋優(yōu)的過程與初始點(diǎn)的選擇關(guān)系很大,初始點(diǎn)如果更靠近局部最優(yōu)點(diǎn),而不是全局最優(yōu)點(diǎn),就不會(huì)得到正確的結(jié)果,這也是多層網(wǎng)絡(luò)無法得到最優(yōu)解的一個(gè)原因。為了解決這個(gè)問題,在實(shí)際訓(xùn)練過程中,應(yīng)重復(fù)選取多個(gè)初始點(diǎn)進(jìn)行訓(xùn)練,以保證訓(xùn)練結(jié)果的全局最優(yōu)性11。網(wǎng)絡(luò)隱層神經(jīng)元的數(shù)目也對(duì)網(wǎng)絡(luò)有一定的影響。神經(jīng)元數(shù)目太少會(huì)造成網(wǎng)絡(luò)的不適性,而神經(jīng)元數(shù)目太多又會(huì)引起網(wǎng)絡(luò)的過適性。3BP神經(jīng)網(wǎng)絡(luò)在實(shí)例中的應(yīng)用快速發(fā)展的Matlab軟件為神經(jīng)網(wǎng)絡(luò)理論的實(shí)現(xiàn)提供了一種便利的仿真手段。Matlab神經(jīng)網(wǎng)絡(luò)工具箱的出現(xiàn),更加拓寬了神經(jīng)網(wǎng)絡(luò)的應(yīng)用空間。神經(jīng)網(wǎng)絡(luò)工具箱將很多原本需要手動(dòng)計(jì)算的工作交給計(jì)算機(jī),一方

29、面提高了工作效率,另一方面,還提高了計(jì)算的準(zhǔn)確度和精度,減輕了工程人員的負(fù)擔(dān)。神經(jīng)網(wǎng)絡(luò)工具箱是在MATLAB環(huán)境下開發(fā)出來的許多工具箱之一。它以人工神經(jīng)網(wǎng)絡(luò)理論為基礎(chǔ),利用MATLAB編程語言構(gòu)造出許多典型神經(jīng)網(wǎng)絡(luò)的框架和相關(guān)的函數(shù)。這些工具箱函數(shù)主要為兩大部分。一部分函數(shù)特別針對(duì)某一種類型的神經(jīng)網(wǎng)絡(luò)的,如感知器的創(chuàng)建函數(shù)、BP網(wǎng)絡(luò)的訓(xùn)練函數(shù)等。而另外一部分函數(shù)則是通用的,幾乎可以用于所有類型的神經(jīng)網(wǎng)絡(luò),如神經(jīng)網(wǎng)絡(luò)仿真函數(shù)、初始化函數(shù)和訓(xùn)練函數(shù)等15。這些函數(shù)的MATLAB實(shí)現(xiàn),使得設(shè)計(jì)者對(duì)所選定網(wǎng)絡(luò)進(jìn)行計(jì)算過程,轉(zhuǎn)變?yōu)閷?duì)函數(shù)的調(diào)用和參數(shù)的選擇,這樣一來,網(wǎng)絡(luò)設(shè)計(jì)人員可以根據(jù)自己的的需要去調(diào)用

30、工具箱中有關(guān)的設(shè)計(jì)和訓(xùn)練程序,從煩瑣的編程中解脫出來,集中精力解決其他問題,從而提高了工作效率。3. 1基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)工具箱函數(shù)最新版本的神經(jīng)網(wǎng)絡(luò)工具箱幾乎涵蓋了所有的神經(jīng)網(wǎng)絡(luò)的基本常用模型,如感知器和BP網(wǎng)絡(luò)等。對(duì)于各種不同的網(wǎng)絡(luò)模型,神經(jīng)網(wǎng)絡(luò)工具箱集成了多種學(xué)習(xí)算法,為用戶提供了極大的方便16。MatlabR2007神經(jīng)網(wǎng)絡(luò)工具箱中包含了許多用于BP網(wǎng)絡(luò)分析與設(shè)計(jì)的函數(shù),BP網(wǎng)絡(luò)的常用函數(shù)如表3.1所示。表3.1BP網(wǎng)絡(luò)的常用函數(shù)表函數(shù)類型函數(shù)名稱函數(shù)用途前向網(wǎng)絡(luò)創(chuàng)建函數(shù)newcf創(chuàng)建級(jí)聯(lián)前向網(wǎng)絡(luò)Newff創(chuàng)建前向BP網(wǎng)絡(luò)傳遞函數(shù)logsigS型的對(duì)數(shù)函數(shù)tansigS型的

31、正切函數(shù)purelin純線性函數(shù)學(xué)習(xí)函數(shù)learngd基于梯度卜-降法的學(xué)習(xí)函數(shù)learngdm梯度卜-降動(dòng)量學(xué)習(xí)函數(shù)性能函數(shù)mse均方誤差函數(shù)msereg均方誤差規(guī)范化函數(shù)顯示函數(shù)plotperf繪制網(wǎng)絡(luò)的性能plotes繪制一個(gè)單獨(dú)神經(jīng)元的誤差曲面plotep繪制權(quán)值和閾值在誤差曲面上的位置errsurf計(jì)算單個(gè)神經(jīng)元的誤差曲面3.1.1BP網(wǎng)絡(luò)創(chuàng)建函數(shù)1) newff該函數(shù)用于創(chuàng)建一個(gè)BP網(wǎng)絡(luò)。調(diào)用格式為:net=newffnet=newff(PR,S1S2.SN1,TF1TF2.TFN1,BTF,BLF,PF)其中,net=newff;用于在對(duì)話框中創(chuàng)建一個(gè)BP網(wǎng)絡(luò)。net為創(chuàng)建的新B

32、P神經(jīng)網(wǎng)絡(luò);PR為網(wǎng)絡(luò)輸入向量取值范圍的矩陣;S1S2SNl表示網(wǎng)絡(luò)隱含層和輸出層神經(jīng)元的個(gè)數(shù);TFlTF2TFN1表示網(wǎng)絡(luò)隱含層和輸出層的傳輸函數(shù),默認(rèn)為tansig'BTF表示網(wǎng)絡(luò)的訓(xùn)練函數(shù),默認(rèn)為trainlm'BLF表示網(wǎng)絡(luò)的權(quán)值學(xué)習(xí)函數(shù),默認(rèn)為learngdm'PF表示性能數(shù),默認(rèn)為mse'。2) newcf函數(shù)用于創(chuàng)建級(jí)聯(lián)前向BP網(wǎng)絡(luò),newfftd函數(shù)用于創(chuàng)建一個(gè)存在輸入延遲的前向網(wǎng)絡(luò)。3.1.2神經(jīng)元上的傳遞函數(shù)傳遞函數(shù)是BP網(wǎng)絡(luò)的重要組成部分。傳遞函數(shù)又稱為激活函數(shù),必須是連續(xù)可微的。BP網(wǎng)絡(luò)經(jīng)常采用S型的對(duì)數(shù)或正切函數(shù)和線性函數(shù)。1) log

33、sig該傳遞函數(shù)為S型的對(duì)數(shù)函數(shù)。調(diào)用格式為:A=logsig(N)info=logsig(code)其中,N:Q個(gè)S維的輸入列向量;A:函數(shù)返回值,位于區(qū)間(0,1)中;2) tansig該函數(shù)為雙曲正切S型傳遞函數(shù)。調(diào)用格式為:A=tansig(N)info=tansig(code)其中,N:Q個(gè)S維的輸入列向量;A:函數(shù)返回值,位于區(qū)間(-1,1)之間。3) purelin該函數(shù)為線性傳遞函數(shù)。調(diào)用格式為:A=purelin(N)info=purelin(code)其中,N:Q個(gè)S維的輸入列向量;A:函數(shù)返回值,A=N。3.1.3BP網(wǎng)絡(luò)學(xué)習(xí)函數(shù)1) learngd該函數(shù)為梯度下降權(quán)值閾

34、值學(xué)習(xí)函數(shù),它通過神經(jīng)元的輸入和誤差,以及權(quán)值和閾值的學(xué)習(xí)效率,來計(jì)算權(quán)值或閾值的變化率。調(diào)用格式為:dW,ls=learngd(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)db,ls=learngd(b,ones(1,Q),Z,N,A,T,E,gW,gA,D,LP,LS)info=learngd(code)2) learngdm函數(shù)為梯度下降動(dòng)量學(xué)習(xí)函數(shù),它利用神經(jīng)元的輸入和誤差、權(quán)值或閾值的學(xué)習(xí)速率和動(dòng)量常數(shù),來計(jì)算權(quán)值或閾值的變化率。3. 1.4BP網(wǎng)絡(luò)訓(xùn)練函數(shù)1) train神經(jīng)網(wǎng)絡(luò)訓(xùn)練函數(shù),調(diào)用其他訓(xùn)練函數(shù),對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。該函數(shù)的調(diào)用格式為:net,tr,Y,E,Pf,

35、Af=train(NET,P,T,Pi,Ai)net,tr,Y,E,Pf,Af=train(NET,P,T,Pi,Ai,VV,TV)2) traingd函數(shù)為梯度下降BP算法函數(shù)。traingdm函數(shù)為梯度下降動(dòng)量BP算法函數(shù)。3.2BP網(wǎng)絡(luò)在函數(shù)逼近中的應(yīng)用3.2.1問題的提出BP網(wǎng)絡(luò)由很強(qiáng)的映射能力,主要用于模式識(shí)別分類、函數(shù)逼近、函數(shù)壓縮等。下面將通過實(shí)例來說明BP網(wǎng)絡(luò)在函數(shù)逼近方面的應(yīng)用。要求設(shè)at一個(gè)BP網(wǎng)絡(luò),逼近以下函數(shù):g(x)=1+sin(k*pi4*x),實(shí)現(xiàn)對(duì)該非線性函數(shù)的逼近。其中,分別令k=1,2,4進(jìn)行仿真,通過調(diào)節(jié)參數(shù)(如隱藏層節(jié)點(diǎn)個(gè)數(shù)等)得出信號(hào)的頻率與隱層節(jié)點(diǎn)之

36、間,隱層節(jié)點(diǎn)與函數(shù)逼近能力之間的關(guān)系。3.2.2基于BP神經(jīng)網(wǎng)絡(luò)逼近函數(shù)步驟1:假設(shè)頻率參數(shù)k=1,繪制要逼近的非線性函數(shù)的曲線。函數(shù)的曲線如圖3.2所示k=1;p=-1:.05:8;t=1+sin(k*pi4*p);plot(p,t,'-');title('要逼近的非線性函數(shù));xlabel('時(shí)間');ylabel('非線性函數(shù));要逼近的非線性函數(shù)2|r1jI、111.B-/16/14/06040.20時(shí)間圖3.2要逼近的非線性函數(shù)曲線步驟2:網(wǎng)絡(luò)的建立應(yīng)用newff()函數(shù)建立BP網(wǎng)絡(luò)結(jié)構(gòu)。隱層神經(jīng)元數(shù)目n可以改變,暫設(shè)為n=3,輸出層有

37、一個(gè)神經(jīng)元。選擇隱層和輸出層神經(jīng)元傳遞函數(shù)分別為tansig函數(shù)和purelin函數(shù),網(wǎng)絡(luò)訓(xùn)練的算法采用Levenberg-Marquardt算法trainlm。n=3;net=newff(minmax(p),n,1,'tansig''purelin','trainlm');對(duì)于初始網(wǎng)絡(luò),可以應(yīng)用sim()函數(shù)觀察網(wǎng)絡(luò)輸出。y1=sim(net,p);figure;plot(p,t,'-',p,y1,':')title('未訓(xùn)練網(wǎng)絡(luò)的輸出結(jié)果');xlabel('時(shí)間');ylabe

38、l('仿真輸出-原函數(shù)-');同時(shí)繪制網(wǎng)絡(luò)輸出曲線,并與原函數(shù)相比較,結(jié)果如圖3.3所示。未訓(xùn)沫網(wǎng)絡(luò)的輸出筆果圖3.3未訓(xùn)練網(wǎng)絡(luò)的輸出結(jié)果S萍轍圖麻:田辭咻m其中“”代表要逼近的非線性函數(shù)曲線;“”代表未經(jīng)訓(xùn)練的函數(shù)曲線;因?yàn)槭褂胣ewff()函數(shù)建立函數(shù)網(wǎng)絡(luò)時(shí),權(quán)值和閾值的初始化是隨機(jī)的,所以網(wǎng)絡(luò)輸出結(jié)構(gòu)很差,根本達(dá)不到函數(shù)逼近的目的,每次運(yùn)行的結(jié)果也有時(shí)不同。步驟3:網(wǎng)絡(luò)訓(xùn)練應(yīng)用train()函數(shù)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練之前,需要預(yù)先設(shè)置網(wǎng)絡(luò)訓(xùn)練參數(shù)。將訓(xùn)練時(shí)間設(shè)置為50,訓(xùn)練精度設(shè)置為001,其余參數(shù)使用缺省值。訓(xùn)練后得到的誤差變化過程如圖3.4所示。10.Perform自rl亡自

39、嘈000219644Goal0010O.S11.522.533544.55M廂Tehm5Epochs-圖3.4訓(xùn)練過程net.trainParam.epochs=50;(網(wǎng)絡(luò)訓(xùn)練時(shí)間設(shè)置為50)net.trainParam.goal=0.01;(網(wǎng)絡(luò)訓(xùn)練精度設(shè)置為0.01)net=train(net,p,t);(開始訓(xùn)練網(wǎng)絡(luò))TRAINLM-calcjx,Epoch050,MSE9.277740.01,Gradient13.31221e-010TRAINLM-calcjx,Epoch350,MSE0.001270470.01,Gradient0.03375551e-010TRAINLM,Per

40、formancegoalmet.從以上結(jié)果可以看出,網(wǎng)絡(luò)訓(xùn)練速度很快,經(jīng)過一次循環(huán)跌送過程就達(dá)到了要求的精度0.01。步驟4:網(wǎng)絡(luò)測(cè)試對(duì)于訓(xùn)練好的網(wǎng)絡(luò)進(jìn)行仿真:y2=sim(net,p);figure;plot(p,t,'-',p,y1,':',p,y2,'-')title('訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果');xlabel('時(shí)間');ylabel('仿真輸出');繪制網(wǎng)絡(luò)輸出曲線,并與原始非線性函數(shù)曲線以及未訓(xùn)練網(wǎng)絡(luò)的輸出結(jié)果曲線相比較,比較出來的結(jié)果如圖3.5所示。訓(xùn)煉后網(wǎng)絡(luò)時(shí)輸出結(jié)果-1-1一5D5o

41、Q-IIi-10123567B時(shí)間圖3.5訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果其中“”代表要逼近的非線性函數(shù)曲線;“”代表未經(jīng)訓(xùn)練的函數(shù)曲線;“”代表經(jīng)過訓(xùn)練的函數(shù)曲線;從圖中可以看出,得到的曲線和原始的非線性函數(shù)曲線很接近。這說明經(jīng)過訓(xùn)練后,BP網(wǎng)絡(luò)對(duì)非線性函數(shù)的逼近效果比較好。3. 2.3不同頻率下的逼近效果改變非線性函數(shù)的頻率和BP函數(shù)隱層神經(jīng)元的數(shù)目,對(duì)于函數(shù)逼近的效果有一定的影響。網(wǎng)絡(luò)非線性程度越高,對(duì)于BP網(wǎng)絡(luò)的要求越高,則相同的網(wǎng)絡(luò)逼近效果要差一些;隱層神經(jīng)元的數(shù)目對(duì)于網(wǎng)絡(luò)逼近效果也有一定影響,一般來說隱層神經(jīng)元數(shù)目越多,則BP網(wǎng)絡(luò)逼近非線性函數(shù)的能力越強(qiáng)。下面通過改變頻率參數(shù)和非線性函數(shù)的隱層

42、神經(jīng)元數(shù)目來加以比較證明。(1)頻率參數(shù)設(shè)為k=2,當(dāng)隱層神經(jīng)元數(shù)目分別取n=3、n=6時(shí),得到了訓(xùn)練后的網(wǎng)絡(luò)輸出結(jié)果如圖3.6, 3.7所示。訓(xùn)抵后同絳的箝出結(jié)果3肝間0123i567肝同訓(xùn)抵后同絳的箝出結(jié)果.£2.52.-Jh田ml.5O圖3.6當(dāng)n=3時(shí)訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果圖3.7當(dāng)n=6時(shí)訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果其中“”代表要逼近的非線性函數(shù)曲線;“”代表未經(jīng)訓(xùn)練的函數(shù)曲線;“”代表經(jīng)過訓(xùn)練的函數(shù)曲線;(2)頻率參數(shù)設(shè)為k=4,當(dāng)隱層神經(jīng)元數(shù)目分別取n=6、時(shí),得到了訓(xùn)練后的網(wǎng)絡(luò)輸出結(jié)果如圖3.8,3.9所示。刑事居眄第國(guó)生出結(jié)果.50:5D.-D田落海后時(shí)間圖3.9當(dāng)n=8時(shí)訓(xùn)

43、練后網(wǎng)絡(luò)的輸出結(jié)果咱帝父后圖3.8當(dāng)n=6時(shí)訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果其中“”代表要逼近的非線性函數(shù)曲線;“”代表未經(jīng)訓(xùn)練的函數(shù)曲線;“”代表經(jīng)過訓(xùn)練的函數(shù)曲線;(2)頻率參數(shù)設(shè)為k=8,當(dāng)隱層神經(jīng)元數(shù)目分別取n=10、n=15時(shí),得到了訓(xùn)練后的網(wǎng)絡(luò)輸出結(jié)果如圖3.10,3.11所示。圖3.10當(dāng)n=10時(shí)訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果32t訓(xùn)后再搭的輸出玷果圖3.11當(dāng)n=15時(shí)訓(xùn)練后網(wǎng)絡(luò)的輸出結(jié)果其中“”代表要逼近的非線性函數(shù)曲線;“”代表未經(jīng)訓(xùn)練的函數(shù)曲線;“”代表經(jīng)過訓(xùn)練的函數(shù)曲線;3. 2.4討論通過上述仿真結(jié)果可知,當(dāng)k=1,n=3時(shí);k=2,n=6時(shí);k=4,n=8時(shí);k=8,n=15時(shí),BP神

44、經(jīng)網(wǎng)絡(luò)分別對(duì)函數(shù)取得了較好的逼近效果。由此可見,n取不同的值對(duì)函數(shù)逼近的效果有很大的影響。改變BP網(wǎng)絡(luò)隱層神經(jīng)元的數(shù)目,可以改變BP神經(jīng)網(wǎng)絡(luò)對(duì)于函數(shù)的逼近效果。E1層神經(jīng)元數(shù)目越多,則BP網(wǎng)絡(luò)逼近非線性函數(shù)的能力越強(qiáng)。4. 3BP網(wǎng)絡(luò)在樣本含量估計(jì)中的應(yīng)用5. 3.1問題的提出這是一個(gè)神經(jīng)網(wǎng)絡(luò)在醫(yī)學(xué)中應(yīng)用的例子。擬設(shè)計(jì)一臺(tái)儀器,通過對(duì)血液樣本進(jìn)行光譜分析來測(cè)試血清中膽固醇水平。共采集了264位病人的血液樣本,對(duì)其光譜分析共發(fā)現(xiàn)21種光譜波長(zhǎng)。對(duì)這些病人,通過血清分離,同樣也測(cè)量了hdl、ldl、vldl膽固醇水平。(1)將數(shù)據(jù)導(dǎo)入Matlab工作空間,進(jìn)行主要成分的分析。數(shù)據(jù)文件為choles

45、all.mat。loadcholes_all%matlab中有一個(gè)choles_all.mat文件它包含了本問題需要的原始數(shù)據(jù)pn,meanp,stdp,tn,meant,stdt=prestd(p,t);%prestd函數(shù)對(duì)樣本數(shù)據(jù)作歸一化處理ptrans,sransMat=prepca(pn,0.001);%利用prepca函數(shù)對(duì)歸一化后的樣本數(shù)據(jù)進(jìn)行主元分析這里剔除了一些數(shù)據(jù),只保留了所占99.9%勺主要成分?jǐn)?shù)據(jù)。下面檢驗(yàn)一下轉(zhuǎn)換后數(shù)據(jù)矩陣的大小。R,Q=size(ptrans)R=4Q=264從中可以看出通過主要成分分析,輸入數(shù)據(jù)從21組減少到4組,由此可見原始數(shù)據(jù)有著很大的冗余度。(

46、2)將這些數(shù)據(jù)分成幾個(gè)部分,分別用于訓(xùn)練、驗(yàn)證和測(cè)試。將數(shù)據(jù)的14用于驗(yàn)證、14用于測(cè)試,其余的用于訓(xùn)練網(wǎng)絡(luò)。采用等間隔的方式在原始數(shù)據(jù)中抽取出這些數(shù)據(jù)。iitst=2:4:Q;iival=4:4:Q;iitr=1:4:Q3:4:Q;val.P=ptrans(:,iival);val.T=tn(:,iival);test.P=ptrans(:,iitst);test.T=tn(:,iitst);ptr=ptrans(:,iitr);ttr=tn(:,iitr);3.3.2基于BP神經(jīng)網(wǎng)絡(luò)對(duì)膽固醇含量估計(jì)步驟一:網(wǎng)絡(luò)建立一切準(zhǔn)備工作做好后,開始建立網(wǎng)絡(luò)。在本例中,建立一個(gè)兩層網(wǎng)絡(luò),隱層的傳遞函數(shù)

47、采用tan-sigmoid,輸出層采用線性傳遞函數(shù)。隱層神經(jīng)元初步設(shè)計(jì)為五個(gè),因?yàn)樾枰玫饺齻€(gè)目標(biāo),網(wǎng)絡(luò)輸出層設(shè)計(jì)為三個(gè)神經(jīng)元。net=newff(minmax(ptr),53,'tansig''purelin','trainlm');步驟二:網(wǎng)絡(luò)訓(xùn)練進(jìn)行網(wǎng)絡(luò)訓(xùn)練,其訓(xùn)練過程如圖3.12所示。pF-it:rTiHrKBr=.Q314£J3GtalkD891(11214l«16EnjcWto守于Tthfg圖3.12訓(xùn)練過程net.trainParam.show=5;net,tr=train(net,ptr,ttr,val,tes

48、t);TRAINLM-calcjx,Epoch0100,MSE5.235210,Gradient5.132281e-010TRAINLM-calcjx,Epoch5100,MSE0.5786250,Gradient1.628331e-010TRAINLM-calcjx,Epoch10100,MSE0.3523520,Gradient0.5056291e-010TRAINLM-calcjx,Epoch15100,MSE0.3407960,Gradient0.4048061e-010TRAINLM-calcjx,Epoch16100,MSE0.3346480,Gradient0.5138261e-

49、010TRAINLM,Validationstop.可以看出,經(jīng)過20次訓(xùn)練后,由于驗(yàn)證誤差的增加,訓(xùn)練停止。將訓(xùn)練誤差,驗(yàn)證誤差和測(cè)試誤差繪制在一副圖中,如圖3.13所示,這樣就可以更加直觀地觀察訓(xùn)練過程。plot(tr.epoch,tr.perf,'-',tr.epoch,tr.vperf,':',tr.epoch,tr.tperf,'-.')legend('Training','Validation','Test',-1);ylabel('平方差');xlabel('時(shí)

50、間')6TrainingValidalionTest圖3.13訓(xùn)練誤差、驗(yàn)證誤差、測(cè)試誤差曲線步驟三:輸出結(jié)果最后,對(duì)網(wǎng)絡(luò)響應(yīng)進(jìn)行分析,將所有的數(shù)據(jù)都放在整個(gè)數(shù)據(jù)集中,包括訓(xùn)練數(shù)據(jù)、驗(yàn)證數(shù)據(jù)和測(cè)試數(shù)據(jù),然后網(wǎng)絡(luò)輸出和相應(yīng)的期望輸出向量進(jìn)行線性回歸分析。線性回歸之前需要對(duì)網(wǎng)絡(luò)輸出進(jìn)行反規(guī)范轉(zhuǎn)換,因?yàn)橛腥M輸出值,所以應(yīng)進(jìn)行三次線性回歸。其結(jié)果如圖3.14所示。an=sim(net,ptrans);a=poststd(an,meant,stdt);fori=1:3figure(i)m(i),b(i),r(i)=postreg(a(i,:),t(i,:);%postreg()將三組輸出進(jìn)行線

51、性回歸分析End*0翁LTH5已UU-累弓-a菖號(hào)。OhPflinl1!:SastlinurFit加皿0HQ然I若Q洶3鐘4QQ門修則T而RUA.£sueJJ二總?cè)贠uM君vbTargets.50W0ISO200250300*150TargalsTODalaiPointsBmCbmarFrt-(a)DulpulsTargvls-.R=O5S2G加的國(guó)gQW0120TflrgfllsT(b)(c)圖3.14線性回歸結(jié)果(a)(net,ptr,ttr,val,test);TRAINLM-calcjx,Epoch0100,MSE15.47530,Gradient16.31151e-010

52、TRAINLM-calcjx,Epoch12100,MSE0.2160750,Gradient0.2042251e-010TRAINLM,Validationstop.圖3.17三種誤差曲線plot(tr.epoch,tr.perf,'-',tr.epoch,tr.vperf,':',tr.epoch,tr.tperf,'-.')legend('Training','Validation','Test',-1);ylabel('平方差');xlabel('時(shí)間')pl

53、ot(tr.epoch,tr.perf,'-',tr.epoch,tr.vperf,':',tr.epoch,tr.tperf,'-.')an=sim(net,ptrans);a=poststd(an,meant,stdt);fori=1:3figure(i)m(i),b(i),r(i)=postreg(a(i,:),t(i,:);endm(1),b(1),r(1)=postreg(a(1,:),t(1,:);同樣將所有的數(shù)據(jù)都放在整個(gè)數(shù)據(jù)集中,包括訓(xùn)練數(shù)據(jù)、驗(yàn)證數(shù)據(jù)和測(cè)試數(shù)據(jù),然后網(wǎng)絡(luò)輸出和相應(yīng)的期望輸出向量進(jìn)行線性回歸分析。最后線性回歸的輸出

54、結(jié)果如圖3.15所示。DiilpulvsTargeL5.R=D.W5jj50iQO例20025。300馴4的TaraelsT把MunL目。吱pug0Targets.R=085T6Z口口仙RwrtS囪HliwrFiY-T口5。WO嗎。2002503003的丁啊心T(b)(c)=¥蛆£0導(dǎo)AWAb國(guó)三o圖3.15線性回歸結(jié)果(a),NeuralComputing:TheoryandPractice,VanNostrandReinhold,1989.14李學(xué)橋.神經(jīng)網(wǎng)絡(luò)工程應(yīng)用.重慶:重慶大學(xué)出版社,1995.6:20-7315樓順天,等.基于Matlab的系統(tǒng)分析與設(shè)計(jì)-神經(jīng)網(wǎng)

55、絡(luò).西安:西安電子科技大學(xué)出版社,2000.8:23-4016周開利,康耀紅編著.神經(jīng)網(wǎng)絡(luò)模型及其MATLA的真程序設(shè)計(jì).2006:10-4317魏海坤.神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)的理論與方法.國(guó)防工業(yè)出版社,2005.9:20-30BPNeuralNetworkAndApplicationbasedonMATLABJiangLiangliangSchoolofBinjiang,NanjingUniversityofInformationScienceandTechnology,Nanjing210044ABSTRACT:First,theresearchpurposeandsignificanceof

56、neuralnetworkisexpoundinthisarticle.Commentarystudiescurrentsituationattheproblemmethod.Summingupthecharacteristicsofneuralnetworkalgorithm.Neuralnetworkalgorithmisgiventhebasicprocesses.ThearithmeticofBPneuralnetworkisrealizedinMatlabsoftwareThealgorithmappliesofBPneuralnetworkstothefunctionapproximationproblemandcomputetheswatchcontent.Andanalysisofrelevantparametersontheresultsofalgorithm.Finally,TheBPneuralnetworkalgorithmisOutlook.Keyword:neuralnetwork;BPneuralnetwork;functionapproximation以下免費(fèi)送您一百個(gè)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論