版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
武漢理工大學(xué)《通信系統(tǒng)課群綜合訓(xùn)練與設(shè)計(jì)》課程設(shè)計(jì)PAGE29 課程設(shè)計(jì)任務(wù)書學(xué)生姓名:專業(yè)班級:通信1003指導(dǎo)教師:郭志強(qiáng)工作單位:武漢理工大學(xué)題目:通信系統(tǒng)課群綜合訓(xùn)練與設(shè)計(jì)初始條件:MATLAB軟件,電腦,模式識別要求完成的主要任務(wù):1、利用BP(Back-propagation)網(wǎng)絡(luò)對于10個(gè)阿拉伯?dāng)?shù)字(用七段碼表示)進(jìn)行訓(xùn)練,將訓(xùn)練好的網(wǎng)絡(luò)對于污染的數(shù)字進(jìn)行識別。2、要求:學(xué)習(xí)BP算法;將數(shù)字用7維矢量表示;設(shè)計(jì)BP網(wǎng)絡(luò)(7輸入1輸出);參考matlab神經(jīng)網(wǎng)絡(luò)工具箱時(shí)間安排:序號設(shè)計(jì)內(nèi)容所用時(shí)間1根據(jù)任務(wù),分析BP網(wǎng)絡(luò)原理,確定實(shí)驗(yàn)方案2天2根據(jù)實(shí)驗(yàn)條件進(jìn)行測試,并對結(jié)果進(jìn)行分析7天3撰寫課程設(shè)計(jì)報(bào)告1天合計(jì)2周指導(dǎo)教師簽名:年月日系主任(或責(zé)任教師)簽名:年月日目錄TOC\o"1-3"\h\u摘要 3ABSTRACT 31緒論 41.1人工神經(jīng)網(wǎng)絡(luò)研究背景和意義 41.2BP神經(jīng)網(wǎng)絡(luò)的介紹 41.3神經(jīng)網(wǎng)絡(luò)理論的應(yīng)用 52BP網(wǎng)絡(luò) 62.1BP網(wǎng)絡(luò)的特點(diǎn) 62.2BP網(wǎng)絡(luò)模型處理信息的基本原理 62.3基本BP算法公式推導(dǎo) 62.4基本BP算法的缺陷 102.5BP算法的改進(jìn) 112.6BP網(wǎng)絡(luò)的設(shè)計(jì) 123BP神經(jīng)網(wǎng)絡(luò)在實(shí)例中的應(yīng)用 133.1基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)工具箱函數(shù) 143.1.1BP網(wǎng)絡(luò)創(chuàng)建函數(shù) 153.1.2神經(jīng)元上的傳遞函數(shù) 153.1.3BP網(wǎng)絡(luò)學(xué)習(xí)函數(shù) 163.1.4BP網(wǎng)絡(luò)訓(xùn)練函數(shù) 163.2利用BP網(wǎng)絡(luò)對污染數(shù)字的識別 173.2.1問題的提出 173.2.2將數(shù)字矢量表示 173.2.4網(wǎng)絡(luò)訓(xùn)練 183.2.5網(wǎng)絡(luò)測試 193.2.6用含噪聲和不含噪聲的數(shù)字樣本進(jìn)行訓(xùn)練 193.2.7測量網(wǎng)絡(luò)容錯(cuò)性 193.2.8對污染數(shù)字進(jìn)行識別 213.3仿真分析 223.3.1隱含神經(jīng)元數(shù)目對仿真的影響: 223.3.2傳遞函數(shù)對仿真的影響 234結(jié)束語 235參考文獻(xiàn) 246總程序 25摘要本文首先說明課題研究的目的和意義,簡要介紹了神經(jīng)網(wǎng)絡(luò)理論的應(yīng)用,然后分析了神經(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ù)字的識別。設(shè)計(jì)了一個(gè)BP網(wǎng)絡(luò)。利用BP網(wǎng)絡(luò)對于10個(gè)阿拉伯?dāng)?shù)字(用七段碼表示)進(jìn)行訓(xùn)練,將訓(xùn)練好的網(wǎng)絡(luò)對于污染的數(shù)字進(jìn)行識別。設(shè)計(jì)采用單隱層的BP網(wǎng)絡(luò),根據(jù)設(shè)計(jì)要求,可以確定樣本為7維的輸入向量。所以有7個(gè)神經(jīng)元作為輸入層。因?yàn)榫W(wǎng)絡(luò)的輸出數(shù)據(jù)只有一個(gè),則輸出層只有1個(gè)神經(jīng)元。網(wǎng)絡(luò)的訓(xùn)練函數(shù)是traingdm。關(guān)鍵詞:BP網(wǎng)絡(luò)神經(jīng)元數(shù)字識別ABSTRACTThispaperfirstshowsthepurposeandsignificanceofresearch,thispaperbrieflyintroducestheapplicationofneuralnetworktheory.Thenanalyzesthebasicprincipleofneuralnetworkalgorithm,andgivestheclassicalneuralnetworkalgorithmisaconcreterealizationmethod,summarizesthecharacteristicsoftheneuralnetworkalgorithm,andgivesthebasicprocessofneuralnetworkalgorithm.UsingMatlabsoftwareprogrammingtorealizetheBPneuralnetworkalgorithm.Andtheneuralnetworkalgorithmisappliedtothedigitalidentification.DesignaBPnetwork(7inputandoutput).BPnetworkfortenArabicnumerals(withsevensegmentcodesaid)training,andwillofthetrainednetworkdigitalidentificationforpollution.DesignUSESsinglehiddenlayerofBPnetwork,accordingtotherequirementofdesign,andthesamplecanbedeterminedfor7dinputvector.Sotherearesevenneuronsasinputlayer.Becausethenetworkofoutputdataisonlyone,theonlyoneoutputlayerneurons.Networktrainingfunctionistraingdm.Keywords:BPnetworkneuronnumberrecognition1緒論1.1人工神經(jīng)網(wǎng)絡(luò)研究背景和意義人工神經(jīng)網(wǎng)絡(luò)是由具有適應(yīng)性的簡單單元組成的廣泛并行互連的網(wǎng)絡(luò),它的組織能夠模擬生物神經(jīng)系統(tǒng)對真實(shí)世界物體所作出的交互反應(yīng)。人工神經(jīng)網(wǎng)絡(luò)就是模擬人思維的一種方式,是一個(gè)非線性動力學(xué)系統(tǒng),其特色在于信息的分布式存儲和并行協(xié)同處理。雖然單個(gè)神經(jīng)元的結(jié)構(gòu)極其簡單,功能有限,但大量神經(jīng)元構(gòu)成的網(wǎng)絡(luò)系統(tǒng)所能實(shí)現(xiàn)的行為卻是極其豐富多彩的。近年來通過對人工神經(jīng)網(wǎng)絡(luò)的研究,可以看出神經(jīng)網(wǎng)絡(luò)的研究目的和意義有以下三點(diǎn):(1)通過揭示物理平面與認(rèn)知平面之間的映射,了解它們相互聯(lián)系和相互作用的機(jī)理,從而揭示思維的本質(zhì),探索智能的本源。(2)爭取構(gòu)造出盡可能與人腦具有相似功能的計(jì)算機(jī),即神經(jīng)網(wǎng)絡(luò)計(jì)算機(jī)。(3)研究仿照腦神經(jīng)系統(tǒng)的人工神經(jīng)網(wǎng)絡(luò),將在模式識別、組合優(yōu)化和決策判斷等方面取得傳統(tǒng)計(jì)算機(jī)所難以達(dá)到的效果。人工神經(jīng)網(wǎng)絡(luò)特有的非線性適應(yīng)性信息處理能力,克服了傳統(tǒng)人工智能方法對于直覺,如模式、語音識別、非結(jié)構(gòu)化信息處理方面的缺陷,使之在神經(jīng)專家系統(tǒng)、模式識別、智能控制、組合優(yōu)化、預(yù)測等領(lǐng)域得到成功應(yīng)用。人工神經(jīng)網(wǎng)絡(luò)與其它傳統(tǒng)方法相結(jié)合,將推動人工智能和信息處理技術(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)入市場。光電結(jié)合的神經(jīng)計(jì)算機(jī)為人工神經(jīng)網(wǎng)絡(luò)的發(fā)展提供了良好條件。1.2BP神經(jīng)網(wǎng)絡(luò)的介紹BP神經(jīng)網(wǎng)絡(luò)是目前人工神經(jīng)網(wǎng)絡(luò)模式中最具代表性,應(yīng)用得最廣泛的一種模型,具有自學(xué)習(xí)、自組織、自適應(yīng)和很強(qiáng)的非線性映射能力,可以以任意精度逼近任意連續(xù)函數(shù).近年來,為了解決BP網(wǎng)絡(luò)收斂速度慢,訓(xùn)練時(shí)間長等不足,提出了許多改進(jìn)算法.然而,在針對實(shí)際問題的BP網(wǎng)絡(luò)建模過程中,選擇多少層網(wǎng)絡(luò),每層多少個(gè)神經(jīng)元節(jié)點(diǎn),選擇何種傳遞函數(shù)等,均無可行的理論指導(dǎo),只能通過大量的實(shí)驗(yàn)計(jì)算獲得.MATLAB中的神經(jīng)網(wǎng)絡(luò)工具箱(NeuralNetworkToolbox,簡稱NNbox),為解決這一問題提供了便利的條件.神經(jīng)網(wǎng)絡(luò)工具箱功能十分完善,提供了各種MATLAB函數(shù),包括神經(jīng)網(wǎng)絡(luò)的建立、訓(xùn)練和仿真等函數(shù),以及各種改進(jìn)訓(xùn)練算法函數(shù),用戶可以很方便地進(jìn)行神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)和仿真,也可以在MATLAB源文件的基礎(chǔ)上進(jìn)行適當(dāng)修改,形成自己的工具包以滿足實(shí)際需要。此項(xiàng)課題主要是針對MATLAB軟件對BP神經(jīng)網(wǎng)絡(luò)的各種算法的編程,將神經(jīng)網(wǎng)絡(luò)算法應(yīng)用于對于污染的數(shù)字進(jìn)行識別的問題中,并分析比較相關(guān)參數(shù)對算法運(yùn)行結(jié)果的影響。1.3神經(jīng)網(wǎng)絡(luò)理論的應(yīng)用神經(jīng)網(wǎng)絡(luò)理論的應(yīng)用取得了令人矚目的發(fā)展,特別是在人工智能、自動控制、計(jì)算機(jī)科學(xué)、信息處理、機(jī)器人、模式識別、CAD/CAM等方面都有重大的應(yīng)用實(shí)例。下面列出一些主要應(yīng)用領(lǐng)域:(1)模式識別和圖像處理。印刷體和手寫字符識別、語音識別、簽字識別、指紋識別、人體病理分析、目標(biāo)檢測與識別、圖像壓縮和圖像復(fù)制等。(2)控制和優(yōu)化?;み^程控制、機(jī)器人運(yùn)動控制、家電控制、半導(dǎo)體生產(chǎn)中摻雜控制、石油精煉優(yōu)化控制和超大規(guī)模集成電路布線設(shè)計(jì)等。(3)預(yù)報(bào)和智能信息管理。股票市場預(yù)測、地震預(yù)報(bào)、有價(jià)證券管理、借貸風(fēng)險(xiǎn)分析、IC卡管理和交通管理。(4)通信。自適應(yīng)均衡、回波抵消、路由選擇和ATM網(wǎng)絡(luò)中的呼叫接納識別和控制。(5)空間科學(xué)??臻g交匯對接控制、導(dǎo)航信息智能管理、飛行器制導(dǎo)和飛行程序優(yōu)化管理等。2BP網(wǎng)絡(luò)2.1BP網(wǎng)絡(luò)的特點(diǎn)(1)輸入和輸出是并行的模擬量;(2)網(wǎng)絡(luò)的輸入輸出關(guān)系是各層連接的權(quán)因子決定,沒有固定的算法;(3)權(quán)因子通過學(xué)習(xí)信號調(diào)節(jié)。學(xué)習(xí)越多,網(wǎng)絡(luò)越聰明;(4)隱含層越多,網(wǎng)絡(luò)輸出精度越高,且個(gè)別權(quán)因子的損壞不會對網(wǎng)絡(luò)輸出產(chǎn)生大的影響,只有當(dāng)希望對網(wǎng)絡(luò)的輸出進(jìn)行限制,如限制在0和1之間,那么在輸出層應(yīng)當(dāng)包含S型激活函數(shù)。在一般情況下,均是在隱含層采用S型激活函數(shù),而輸出層采用線性激活函數(shù)。2.2BP網(wǎng)絡(luò)模型處理信息的基本原理輸入信號Xi通過中間節(jié)點(diǎn)(隱層點(diǎn))作用于輸出節(jié)點(diǎn),經(jīng)過非線形變換,產(chǎn)生輸出信號Yk,網(wǎng)絡(luò)訓(xùn)練的每個(gè)樣本包括輸入向量X和期望輸出量t,網(wǎng)絡(luò)輸出值Y與期望輸出值t之間的偏差,通過調(diào)整輸入節(jié)點(diǎn)與隱層節(jié)點(diǎn)的聯(lián)接強(qiáng)度取值Wij和隱層節(jié)點(diǎn)與輸出節(jié)點(diǎn)之間的聯(lián)接強(qiáng)度Tjk以及閾值,使誤差沿梯度方向下降,經(jīng)過反復(fù)學(xué)習(xí)訓(xùn)練,確定與最小誤差相對應(yīng)的網(wǎng)絡(luò)參數(shù)(權(quán)值和閾值),訓(xùn)練即告停止。此時(shí)經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)即能對類似樣本的輸入信息,自行處理輸出誤差最小的經(jīng)過非線形轉(zhuǎn)換的信息。2.3基本BP算法公式推導(dǎo)基本BP算法包括兩個(gè)方面:信號的前向傳播和誤差的反向傳播。即計(jì)算實(shí)際輸出時(shí)按從輸入到輸出的方向進(jìn)行,而權(quán)值和閾值的修正從輸出到輸入的方向進(jìn)行?!敵鲎兞枯斎胱兞枯斎雽与[含層輸出層圖2-1BP網(wǎng)絡(luò)結(jié)構(gòu)圖中:表示輸入層第個(gè)節(jié)點(diǎn)的輸入,j=1,…,M;表示隱含層第i個(gè)節(jié)點(diǎn)到輸入層第j個(gè)節(jié)點(diǎn)之間的權(quán)值;表示隱含層第i個(gè)節(jié)點(diǎn)的閾值;表示隱含層的激勵(lì)函數(shù);表示輸出層第個(gè)節(jié)點(diǎn)到隱含層第i個(gè)節(jié)點(diǎn)之間的權(quán)值,i=1,…,q;表示輸出層第k個(gè)節(jié)點(diǎn)的閾值,k=1,…,L;表示輸出層的激勵(lì)函數(shù);表示輸出層第個(gè)節(jié)點(diǎn)的輸出。(1)信號的前向傳播過程隱含層第i個(gè)節(jié)點(diǎn)的輸入neti:(2-1)隱含層第i個(gè)節(jié)點(diǎn)的輸出yi:(2-2)輸出層第k個(gè)節(jié)點(diǎn)的輸入netk:(2-3)輸出層第k個(gè)節(jié)點(diǎn)的輸出ok:(2-4)(2)誤差的反向傳播過程誤差的反向傳播,即首先由輸出層開始逐層計(jì)算各層神經(jīng)元的輸出誤差,然后根據(jù)誤差梯度下降法來調(diào)節(jié)各層的權(quán)值和閾值,使修改后的網(wǎng)絡(luò)的最終輸出能接近期望值。對于每一個(gè)樣本p的二次型誤差準(zhǔn)則函數(shù)為Ep:(2-5)系統(tǒng)對P個(gè)訓(xùn)練樣本的總誤差準(zhǔn)則函數(shù)為:(2-6)根據(jù)誤差梯度下降法依次修正輸出層權(quán)值的修正量Δwki,輸出層閾值的修正量Δak,隱含層權(quán)值的修正量Δwij,隱含層閾值的修正量。;;;(2-7)輸出層權(quán)值調(diào)整公式:(2-8)輸出層閾值調(diào)整公式:(2-9)隱含層權(quán)值調(diào)整公式:(2-10)隱含層閾值調(diào)整公式:(2-11)又因?yàn)椋海?-12),,,(2-13)(2-14)(2-15)(2-16)所以最后得到以下公式:(2-17)(2-18)(2-19)(2-20)結(jié)束結(jié)束參數(shù)初始化:最大訓(xùn)練次數(shù),學(xué)習(xí)精度,隱節(jié)點(diǎn)數(shù),初始權(quán)值、閾值,初始學(xué)習(xí)速率等批量輸入學(xué)習(xí)樣本并且對輸入和輸出量進(jìn)行歸一化處理計(jì)算各層的輸入和輸出值計(jì)算輸出層誤差E(q)E(q)<ε修正權(quán)值和閾值YesNYes開始圖2-2BP算法程序流程圖2.4基本BP算法的缺陷BP算法因其簡單、易行、計(jì)算量小、并行性強(qiáng)等優(yōu)點(diǎn),目前是神經(jīng)網(wǎng)絡(luò)訓(xùn)練采用最多也是最成熟的訓(xùn)練算法之一。其算法的實(shí)質(zhì)是求解誤差函數(shù)的最小值問題,由于它采用非線性規(guī)劃中的最速下降方法,按誤差函數(shù)的負(fù)梯度方向修改權(quán)值,因而通常存在以下問題:(1)學(xué)習(xí)效率低,收斂速度慢(2)易陷入局部極小狀態(tài)2.5BP算法的改進(jìn)2.5.1附加動量法附加動量法使網(wǎng)絡(luò)在修正其權(quán)值時(shí),不僅考慮誤差在梯度上的作用,而且考慮在誤差曲面上變化趨勢的影響。在沒有附加動量的作用下,網(wǎng)絡(luò)可能陷入淺的局部極小值,利用附加動量的作用有可能滑過這些極小值。該方法是在反向傳播法的基礎(chǔ)上在每一個(gè)權(quán)值(或閾值)的變化上加上一項(xiàng)正比于前次權(quán)值(或閾值)變化量的值,并根據(jù)反向傳播法來產(chǎn)生新的權(quán)值(或閾值)變化。帶有附加動量因子的權(quán)值和閾值調(diào)節(jié)公式為:其中k為訓(xùn)練次數(shù),mc為動量因子,一般取0.95左右。附加動量法的實(shí)質(zhì)是將最后一次權(quán)值(或閾值)變化的影響,通過一個(gè)動量因子來傳遞。當(dāng)動量因子取值為零時(shí),權(quán)值(或閾值)的變化僅是根據(jù)梯度下降法產(chǎn)生;當(dāng)動量因子取值為1時(shí),新的權(quán)值(或閾值)變化則是設(shè)置為最后一次權(quán)值(或閾值)的變化,而依梯度法產(chǎn)生的變化部分則被忽略掉了。以此方式,當(dāng)增加了動量項(xiàng)后,促使權(quán)值的調(diào)節(jié)向著誤差曲面底部的平均方向變化,當(dāng)網(wǎng)絡(luò)權(quán)值進(jìn)入誤差曲面底部的平坦區(qū)時(shí),