2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  基于BP神經(jīng)網(wǎng)絡(luò)的應(yīng)用</p><p>  作  者 </p><p>  院(系) 物理與電氣工程學(xué)院 </p><p>  專  業(yè) 電子信息工程 </p><p>  年  級 10級 </p>

2、<p>  學(xué)  號 </p><p>  指導(dǎo)教師 </p><p>  日  期 2014.5.7 </p><p><b>  學(xué)生誠信承諾書</b></p><p>  本人鄭重承諾:所呈交的論

3、文是我個人在導(dǎo)師指導(dǎo)下進行的研究工作及取得的研究成果。盡我所知,除了文中特別加以標(biāo)注和致謝的地方外,論文中不包含其他人已經(jīng)發(fā)表或撰寫的研究成果,也不包含為獲得安陽師范學(xué)院或其他教育機構(gòu)的學(xué)位或證書所使用過的材料。與我一同工作的同志對本研究所做的任何貢獻均已在論文中作了明確的說明并表示了謝意。</p><p>  簽名:          日期:        </p><p><b&

4、gt;  論文使用授權(quán)說明</b></p><p>  本人完全了解安陽師范學(xué)院有關(guān)保留、使用學(xué)位論文的規(guī)定,即:學(xué)校有權(quán)保留送交論文的復(fù)印件,允許論文被查閱和借閱;學(xué)??梢怨颊撐牡娜炕虿糠謨?nèi)容,可以采用影印、縮印或其他復(fù)制手段保存論文。</p><p>  簽名:        導(dǎo)師簽名:       日期:</p><p>  基于BP神經(jīng)網(wǎng)絡(luò)的

5、應(yīng)用</p><p>  摘 要:神經(jīng)網(wǎng)絡(luò)是近年來信息科學(xué)、腦科學(xué)、神經(jīng)心理學(xué)等諸多學(xué)科共同關(guān)注和研究的熱點。由于其具有良好的抽象分類特性現(xiàn)已應(yīng)用于圖像識別系統(tǒng)的研究和開發(fā),并成為解決識別相關(guān)問題的有效工具。文章在講述圖像識別過程的基礎(chǔ)上重點討論利用BP神經(jīng)網(wǎng)絡(luò)對人臉進行識別,用MATLAB完成對神經(jīng)網(wǎng)絡(luò)的訓(xùn)練和測試,并獲得滿意的結(jié)果。</p><p>  關(guān)鍵詞:人臉識別;圖像識別;B

6、P神經(jīng)網(wǎng)絡(luò)</p><p><b>  1 引言</b></p><p>  1.1 設(shè)計的目的和意義</p><p>  人臉識別技術(shù)具有廣泛的應(yīng)用前景,在國家安全、軍事安全和公共安全領(lǐng)域,智能門禁、智能視頻監(jiān)控、公安布控、海關(guān)身份驗證、司機駕照驗證等是典型的應(yīng)用;在民事和經(jīng)濟領(lǐng)域,各類銀行卡、金融卡、信用卡、儲蓄卡的持卡人的身份驗證,社會保

7、險人的身份驗證等具有重要的應(yīng)用價值;在家庭娛樂等領(lǐng)域,人臉識別也具有一些有趣有益的應(yīng)用,比如能夠識別主人身份的智能玩具、家政機器人,具有真實面像的虛擬游戲玩家等等。</p><p>  人工神經(jīng)網(wǎng)絡(luò)模式識別方法是近些年提出的新方法,為字符識別研究提供了一種新手段,它具有一些傳統(tǒng)技術(shù)所沒有的優(yōu)點:良好的容錯能力、分類能力強、并行處理能力和自學(xué)習(xí)能力。因而,采用神經(jīng)網(wǎng)絡(luò)識別方式是一種很好的選擇。</p>

8、<p>  1.2 本課題的研究內(nèi)容</p><p>  第一部分為引言部分,指出課題研究目的和意義、課題主要完成的工作;</p><p>  第二部分介紹了BP神經(jīng)網(wǎng)絡(luò),涵蓋BP算法、BP神經(jīng)網(wǎng)絡(luò)的基本原理及模型、BP算法的步驟,還介紹了BP神經(jīng)網(wǎng)絡(luò)的主要功能;</p><p>  第三部分介紹了基于BP神經(jīng)網(wǎng)絡(luò)的人臉識別技術(shù)的研究,主要包括BP神經(jīng)網(wǎng)

9、絡(luò)分類器的設(shè)計、BP神經(jīng)網(wǎng)絡(luò)應(yīng)用的程序設(shè)計、設(shè)計仿真結(jié)果;</p><p>  第四部分介紹了BP神經(jīng)網(wǎng)絡(luò)進行的優(yōu)化及技術(shù)改進,通過系統(tǒng)設(shè)計的實現(xiàn),用實驗驗證其有效性;</p><p>  第五部分為論文的結(jié)語部分,對本課題的設(shè)計進行了總結(jié)。</p><p>  2 神經(jīng)網(wǎng)絡(luò)的基本原理</p><p>  2.1 BP算法的概述</p&

10、gt;<p>  人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Net works,簡寫為ANNs)也簡稱為神經(jīng)網(wǎng)絡(luò)(NNs)或稱作連接模型(Connectionist Model),它是一種模范動物神經(jīng)網(wǎng)絡(luò)行為特征,進行分布式并行信息處理的算法數(shù)學(xué)模型。這種網(wǎng)絡(luò)依靠系統(tǒng)的復(fù)雜程度,通過調(diào)整內(nèi)部大量節(jié)點之間相互連接的關(guān)系,從而達到處理信息的目的。</p><p>  人工神經(jīng)網(wǎng)絡(luò)發(fā)展的主要歷程有

11、:20世紀(jì)50年代末,Rosenblatt提出的感知器模型和Widrow提出的自適應(yīng)線性元件,出現(xiàn)了簡單的線性分類器;1986年,Rumelhart和Mcllelland 提出了層網(wǎng)絡(luò)“誤差反向傳播算法(BP)”,使有導(dǎo)師學(xué)習(xí)多層感知器網(wǎng)絡(luò)(ML PN)模式分類器走向?qū)嵱没?在此基礎(chǔ)上又派生出若干前向網(wǎng)絡(luò),如徑向基函數(shù)網(wǎng)絡(luò)( RBFN)和函數(shù)鏈網(wǎng)絡(luò)等;1982年,美國加州工學(xué)院的物理學(xué)家Hopfield提出的一種用于聯(lián)想記憶和優(yōu)化計算的

12、反饋網(wǎng)絡(luò)模型 ,由于引進了“能量函數(shù)” 的概念,使網(wǎng)絡(luò)走向具體電路有了保證;20世紀(jì) 70年代,Watanabe 提出了使用模式子空間的概念來設(shè)計不同類別對應(yīng)的子空間 ,由不同類別聚類的子空間實現(xiàn)模式識別; Kohonen提出的自組織特征映射網(wǎng)絡(luò)模型等都為神經(jīng)網(wǎng)絡(luò)模式識別理論提供了進一步的根據(jù)。</p><p>  構(gòu)成人工神經(jīng)網(wǎng)絡(luò)的三個基本要素是 :神經(jīng)元、絡(luò)拓?fù)浣Y(jié)構(gòu)和網(wǎng)絡(luò)的訓(xùn)練 (學(xué)習(xí))方法。神經(jīng)元 (節(jié)點)

13、的作用是把若干輸入加權(quán)求和 ,并對這種加權(quán)和進行非線性處理后輸出。神經(jīng)元的選擇一般有以下特點 :每個神經(jīng)元都具有多個輸入、個輸出 ,具有閉值 ,采用非線性函數(shù)。</p><p>  2.2 BP神經(jīng)網(wǎng)絡(luò)模型及其基本原理</p><p>  BP網(wǎng)絡(luò)是一種多層前饋神經(jīng)網(wǎng)絡(luò),由輸入層、隱層和輸出層組成。圖1為一個典型的三層BP網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),層與層之間采用全互連方式,同一層之間不存在相互連接,

14、隱層可以有一層或多層。層與層之間有兩種信號在流通:一種是工作信號(用實線表示),它是施加輸入信號后向前傳播直到在輸出端產(chǎn)生實際輸出的信號,是輸入和權(quán)值的函數(shù)。另一種是誤差信號(用虛線表示),網(wǎng)絡(luò)實際輸出與期望輸出間的差值即為誤差,它由輸出端開始逐層向后傳播。BP網(wǎng)絡(luò)的學(xué)習(xí)過程程由前向計算過程和誤差反向傳播過程組成。在前向計算過程中,輸入量從輸入層經(jīng)隱層逐層計算,并傳向輸出層,每層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài)。如輸出層不能得到期望

15、的輸出,則轉(zhuǎn)入誤差反向傳播過程,誤差信號沿原來的連接通路返回,逐次調(diào)整網(wǎng)絡(luò)各層的權(quán)值和閾值,直至到達輸入層,再重復(fù)向計算。這兩個過程一次反復(fù)進行,不斷調(diào)整各層的權(quán)值和閾值,使得網(wǎng)絡(luò)誤差最小或達到人們所期望的要求時,學(xué)習(xí)過程結(jié)束。</p><p>  圖1 典型Bp網(wǎng)絡(luò)模型</p><p>  BP網(wǎng)絡(luò)是應(yīng)用最廣泛的網(wǎng)絡(luò),現(xiàn)已成功地應(yīng)用于圖像識別、預(yù)測預(yù)估、語聲變換、數(shù)據(jù)壓縮、模式辨識和自動

16、控制等領(lǐng)域。據(jù)統(tǒng)計,應(yīng)用BP算法的神經(jīng)網(wǎng)絡(luò)高達80%。因此本文選用它作為進行人臉識別的方法。下面介紹其工作原理 。</p><p>  BP算法的基本思想是,學(xué)習(xí)過程由信號的正向傳播與誤差的逆向傳播兩個過程組成。正向傳播時,模式作用于輸入層,經(jīng)隱層處理后,傳向輸出層。若輸出層未能得到期望的輸出,則轉(zhuǎn)入誤差的逆向傳播階段,將輸出誤差按某種子形式,通過隱層向輸入層逐層返回,并“分?jǐn)偂苯o各層的所有單元,從而獲得各層單元

17、的參考誤差或稱誤差信號,以作為修改各單元權(quán)值的依據(jù)。這種信號正向傳播與誤差逆向傳播的各層權(quán)矩陣的修改過程,是周而復(fù)始進行的。權(quán)值不斷修改的過程,也就是網(wǎng)絡(luò)的學(xué)習(xí)(或稱訓(xùn)練)過程。此過程一直進行到網(wǎng)絡(luò)輸出的誤差逐漸減少到可接受的程度或達到設(shè)定的學(xué)習(xí)次數(shù)為止。圖2為BP算法流程圖:</p><p><b>  圖2 算法流程圖 </b></p><p>  2.3 BP算

18、法的步驟</p><p>  BP算法是一種有監(jiān)督式的學(xué)習(xí)算法,其主要思想是:輸入學(xué)習(xí)樣本,使用反向傳播算法對網(wǎng)絡(luò)的權(quán)值和偏差進行反復(fù)的調(diào)整訓(xùn)練,使輸出的向量與期望向量盡可能地接近,當(dāng)網(wǎng)絡(luò)輸出層的誤差平方和小于指定的誤差時訓(xùn)練完成,保存網(wǎng)絡(luò)的權(quán)值和偏差。具體步驟如下: </p><p>  初始化,隨機給定各連接權(quán)[w],[v]及閥值θi,rt。</p><p

19、>  (2)由給定的輸入輸出模式對計算隱層、輸出層各單元輸出。</p><p> ?。?)計算新的連接權(quán)及閥值。 </p><p>  (4)選取下一個輸入模式對返回第2步反復(fù)訓(xùn)練直到網(wǎng)絡(luò)設(shè)輸出誤差達到要求結(jié)束訓(xùn)練。</p><p>  第一步,網(wǎng)絡(luò)初始化。</p><p>  給各連接權(quán)值分別賦一個區(qū)間(-1,1)內(nèi)的隨機數(shù),設(shè)定誤差

20、函數(shù)e,給定計算精度值和最大學(xué)習(xí)次數(shù)M。</p><p>  第二步,隨機選取第k個輸入樣本及對應(yīng)期望輸出。</p><p>  第三步,計算隱含層各神經(jīng)元的輸入和輸出。</p><p>  第四步,利用網(wǎng)絡(luò)期望輸出和實際輸出,計算誤差函數(shù)對輸出層的各神經(jīng)元的偏導(dǎo)數(shù)。</p><p>  第五步,利用隱含層到輸出層的連接權(quán)值、輸出層和隱含層的

21、輸出計算誤差函數(shù)對隱含層各神經(jīng)元的偏導(dǎo)數(shù)。</p><p>  第六步,利用輸出層各神經(jīng)元和隱含層各神經(jīng)元的輸出來修正連接權(quán)值。</p><p>  第七步,利用隱含層各神經(jīng)元和輸入層各神經(jīng)元的輸入修正連接權(quán)。 </p><p>  第八步,計算全局誤差。</p><p>  第九步,判斷網(wǎng)絡(luò)誤差是否滿足要求。當(dāng)誤差達到預(yù)設(shè)精度或?qū)W習(xí)次數(shù)大于

22、設(shè)定的最大次數(shù),則結(jié)束算法。否則,選取下一個學(xué)習(xí)樣本及對應(yīng)的期望輸出,返回到第三步,進入下一輪學(xué)習(xí)。</p><p>  2.4 BP神經(jīng)網(wǎng)絡(luò)的主要功能</p><p>  目前,在人工神經(jīng)網(wǎng)絡(luò)的實際應(yīng)用中。絕大部分的神經(jīng)網(wǎng)絡(luò)模型都采用BP神經(jīng)網(wǎng)絡(luò)及其變化形式。它也是前向網(wǎng)絡(luò)的核心部分,體現(xiàn)了人工神經(jīng)網(wǎng)絡(luò)的精華。</p><p>  BP網(wǎng)絡(luò)主要用于以下四方面。&l

23、t;/p><p> ?。?)函數(shù)逼近:用輸入向量和相應(yīng)的輸出向量訓(xùn)練一個網(wǎng)絡(luò)以逼近一個函數(shù)。</p><p> ?。?)模式識別:用一個待定的輸出向量將它與輸入向量聯(lián)系起來。</p><p> ?。?)分類:把輸入向量所定義的合適方式進行分類。</p><p>  (4)數(shù)據(jù)壓縮:減少輸出向量維數(shù)以便傳輸或存儲。</p><p

24、>  3 基于BP神經(jīng)網(wǎng)絡(luò)的面部識別應(yīng)用的設(shè)計</p><p>  3.1 BP網(wǎng)絡(luò)神經(jīng)實現(xiàn)人臉識別過程:</p><p>  人臉識別就是對于輸入的人臉圖像或者視頻,首先判斷其中是否存在人臉,如果存在人臉,則進一步的給出每個人臉的位置、大小和各個主要面部器官的位置信息,并依據(jù)這些信息,進一步提取每個人臉中所蘊含的身份特征,并將其與已知人臉庫中的人臉進行對比,從而識別每個人臉的身份。

25、圖3為人臉識別過程。人臉識別的過程可以分為以下三個部分:</p><p>  1、人臉檢測:判斷輸入圖像中是否存在人臉,如果有,給出每個人臉的位置,大??;</p><p>  2、面部特征定位:對找到的每個人臉,檢測其主要器官的位置和形狀等信息;</p><p>  3、人臉比對:根據(jù)面部特征定位的結(jié)果,與庫中人臉對比,判斷該人臉的身份信息; </p>

26、<p><b>  圖3 人臉識別過程</b></p><p>  3.2 BP神經(jīng)網(wǎng)絡(luò)分類器的設(shè)計</p><p>  標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)分3層,即輸入層,隱含層和輸出層.記輸入層神經(jīng)元數(shù)為I,隱含層神經(jīng)元數(shù)為H,輸出層神經(jīng)元數(shù)為J.對于人臉類別數(shù)為p的人臉識別問題來說,網(wǎng)絡(luò)輸出層的神經(jīng)元數(shù)J就取為人臉類別數(shù)p,對于任意一個人臉測試圖像,可根據(jù)網(wǎng)絡(luò)輸出層輸

27、出矢量的最大分量分類.人臉圖像矢量的維數(shù)N通常比較大,而訓(xùn)練樣本數(shù)K通常比較小,所以設(shè)計用于人臉識別的BP神經(jīng)網(wǎng)絡(luò)分類器比較困難.為了實現(xiàn)具有推廣能力強的BP神經(jīng)網(wǎng)絡(luò)分類器,可以從特征壓縮著手,壓縮輸入矢量的維數(shù),并適當(dāng)?shù)剡x擇隱含層的神經(jīng)元數(shù).為了加快網(wǎng)絡(luò)訓(xùn)練的收斂速度,可對輸入矢量作標(biāo)準(zhǔn)化處理,并給各連接權(quán)值適當(dāng)?shù)刭x予初值。</p><p><b>  1 特征壓縮</b></p&g

28、t;<p>  KL變換是在最小均方誤差準(zhǔn)則意義下獲得數(shù)據(jù)壓縮的最佳變換.KL變換的產(chǎn)生矩陣常取為訓(xùn)練樣本集的總體散布矩陣或類間散布矩陣,本文將類間相關(guān)矩陣取作為KL變換的產(chǎn)生矩陣:</p><p><b>  (1)</b></p><p>  這里mi(i=1,?,p)是訓(xùn)練樣本集中各類模式樣本的均值矢量.</p><p> 

29、 產(chǎn)生矩陣Rb的秩一般為p,由奇異值分解定理,可以得到Rb的p個正交歸一特征向量,對于任意N維的人臉圖像矢量,通過向特征向量投影可將人臉圖像的特征維數(shù)從N維壓縮到p維.</p><p>  2 隱含層神經(jīng)元數(shù)的選取</p><p>  網(wǎng)絡(luò)的隱含層可以認(rèn)為是通過輸入層與隱含層之間的連接權(quán)值的“自組織化”對輸入模式進行特征抽取,并將抽取出的特征傳遞給輸出層,關(guān)于隱含層的神經(jīng)元數(shù)H的選取尚無理

30、論上的指導(dǎo).一般地,隱含層的神經(jīng)元數(shù)H大,網(wǎng)絡(luò)的冗余性大,增加了網(wǎng)絡(luò)一次訓(xùn)練的訓(xùn)練時間,盡管使網(wǎng)絡(luò)收斂的訓(xùn)練次數(shù)會減少,但會降低分類器的推廣能力.為了保證分類器的穩(wěn)定性,顯然網(wǎng)絡(luò)未知的連接權(quán)值的個數(shù)不宜超過訓(xùn)練樣本值的個數(shù),所以隱含層的神經(jīng)元數(shù)H的選取宜滿足如下要求:</p><p>  (I+1)H+(H+1)J≤KI (2)</p><p>  人臉識別網(wǎng)絡(luò)輸出層的神經(jīng)元數(shù)J取為人臉類

31、別數(shù)p,而通過特征壓縮,網(wǎng)絡(luò)輸入層的神經(jīng)元數(shù)I也是取為人臉類別數(shù)p,這樣可按下式選取隱含層的神經(jīng)元數(shù)H:</p><p><b>  H≈K/2 (3)</b></p><p>  即網(wǎng)絡(luò)隱含層的神經(jīng)元數(shù)宜取為訓(xùn)練樣本數(shù)的一半.</p><p>  3 輸入矢量的標(biāo)準(zhǔn)化</p><p>  由于Sigmoid激勵函數(shù)F(

32、s)的曲線兩端平坦,中間部分變化劇烈,為了提高網(wǎng)絡(luò)的收斂速度,對網(wǎng)絡(luò)輸入矢量的每個分量宜作如下形式的標(biāo)準(zhǔn)化處理:</p><p><b>  (4)</b></p><p>  這里與σ(xi)分別為所有訓(xùn)練樣本矢量的第i個分量xi的均值與均方差.</p><p>  4 連接權(quán)值初值選取</p><p>  將網(wǎng)絡(luò)輸入

33、、隱含兩層神經(jīng)元連接權(quán)值與隱含、輸出層兩層神經(jīng)元連接權(quán)值分別記為wih與whj(i=0,?,I;h=0,?,H;j=1,?,J),這里woh與woj為神經(jīng)元閾值.一般認(rèn)為連接權(quán)值初值可在區(qū)間[-0.5,0.5]內(nèi)隨機選取。</p><p>  假設(shè)網(wǎng)絡(luò)連接權(quán)值初值在區(qū)間[-θ,θ]內(nèi)隨機選取,網(wǎng)絡(luò)輸入矢量x的分量xi相互獨立,其均值為0,方差為1,并取神經(jīng)元閾值初值為0,則在網(wǎng)絡(luò)隱含層每個神經(jīng)元上的輸入為wihx

34、i,由中心極限定理可認(rèn)為它近似服從正態(tài)分布,其均值與方差為:</p><p><b>  (5)</b></p><p>  式中的近似等式可由統(tǒng)計知識得到.</p><p>  由于當(dāng)自變量s在區(qū)間[-5,5]上變化時,Sigmoid激勵函數(shù)F(s)才起作用,因此根據(jù)正態(tài)分布的3σ規(guī)則,連接權(quán)值的初值選取宜滿足如下要求:

35、 </p><p><b>  (6)</b></p><p>  3.3 BP網(wǎng)絡(luò)的面部識別的程序設(shè)計</p><p>  3.3.1 面部圖像信息提取</p><p> ?。?)本文采用已得的面部圖形,如圖:</p><p><b>  圖4面部圖形</b&g

36、t;</p><p> ?。?)以臉向右為例,從面部取8個信息點,包括兩眼間距等面部特征值,如下:</p><p>  0.8700 </p><p>  1.4300 </p><p>  0.9100 </p><p>  3.1900 </p><p>  0

37、.5500 </p><p><b>  0 </b></p><p><b>  0.1000</b></p><p><b>  0 </b></p><p>  因為一共是8個特征值,所以可知用二值定義的用3個數(shù)表示向左的期望值:</p&

38、gt;<p><b>  1</b></p><p><b>  0</b></p><p><b>  0</b></p><p>  以此類推,可以定義出各種面部方向期望值為:</p><p>  1 1 0 0 0</p

39、><p>  0 0 0 1 1</p><p>  0 0 0 0 0</p><p><b>  程序如下:</b></p><p>  images=[ ];</p><p>  M_train=1; %表示人臉</p>

40、<p>  N_train=5; %表示方向</p><p>  sample=[];</p><p>  pixel_value=[];</p><p>  sample_number=0;</p><p>  for j=1:N_train</p><p>  for i=1:M_train</

41、p><p>  str=strcat('Images\',num2str(i),'_',num2str(j),'.bmp');</p><p>  %讀取圖像,連接字符串形成圖像文件名。</p><p>  img=imread(str);</p><p>  [rows cols]=size(im

42、g); %獲得圖像的行和列值</p><p>  img_edge=edge(img,'Sobel'); %由于在分割圖片中我們可以看到這個人臉的眼睛部分也就是位于分割后的第二行中,位置變化比較大,而且眼睛邊緣檢測效果很好</p><p>  sub_rows=floor(rows/6); %最接近的最小整數(shù),分成6行</p><p>  sub_c

43、ols=floor(cols/8); %最接近的最小整數(shù),分成8列</p><p>  sample_num=M_train*N_train; %前5個是第一幅人臉的5個角度</p><p>  sample_number=sample_number+1;</p><p>  for subblock_i=1:8 %因為這還在i,j的循環(huán)中,所以不可以用i</

44、p><p>  block_num=subblock_i;</p><p>  pixel_value(sample_number,block_num)=0;</p><p>  for ii=sub_rows:(2*sub_rows)</p><p>  for jj=(subblock_i-1)*sub_cols+1:subblock_i*s

45、ub_cols</p><p>  pixel_value(sample_number,block_num)=pixel_value(sample_number,block_num)+img_edge(ii,jj);</p><p><b>  end</b></p><p><b>  end</b></p>

46、<p><b>  end</b></p><p><b>  end</b></p><p><b>  end</b></p><p>  %將特征值轉(zhuǎn)換為小于1的值</p><p>  max_pixel_value=max(pixel_value); &l

47、t;/p><p>  max_pixel_value_1=max(max_pixel_value);</p><p><b>  for i=1:3</b></p><p>  mid_value=10^i;</p><p>  if(((max_pixel_value_1/mid_value)>1)&&

48、;((max_pixel_value_1/mid_value)<10))</p><p>  multiple_num=1/mid_value;</p><p>  pixel_value=pixel_value*multiple_num;</p><p><b>  break;</b></p><p><

49、b>  end</b></p><p><b>  end </b></p><p>  % T 為目標(biāo)矢量 </p><p>  t=zeros(3,sample_number); </p><p>  %因為有五類,所以至少用3個數(shù)表示,5介于2的2次方和2的3次方之間</p><

50、;p>  for i=1:sample_number</p><p>  % if((mod(i,5)==1)||(mod(i,5)==4)||(mod(i,5)==0))</p><p>  if((i<3)||(i>9)&&(i<=12))||((i>12)&&(i<=15))</p><p>

51、<b>  t(1,i)=1;</b></p><p><b>  end</b></p><p>  %if(mod(i,5)==2||(mod(i,5)==4))</p><p>  if((i>3)&&(i<=6))||((i>9)&&(i<=12))</

52、p><p><b>  t(2,i)=1;</b></p><p><b>  end</b></p><p>  %if((mod(i,5)==3||(mod(i,5)==0))</p><p>  if((i>6)&&(i<=9))||((i>12)&&am

53、p;(i<=15))</p><p><b>  t(3,i)=1;</b></p><p><b>  end</b></p><p><b>  end</b></p><p>  3.3.2 BP網(wǎng)絡(luò)設(shè)計的程序</p><p><b&g

54、t;  程序如下:</b></p><p>  % NEWFF——生成一個新的前向神經(jīng)網(wǎng)絡(luò) </p><p>  % TRAIN——對 BP 神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練 </p><p>  % SIM——對 BP 神經(jīng)網(wǎng)絡(luò)進行仿真 </p><p>  % 定義訓(xùn)練樣本 </p><p>  % P 為輸入矢量

55、</p><p>  P=pixel_value'</p><p>  % T 為目標(biāo)矢量 </p><p><b>  T=t</b></p><p><b>  size(P)</b></p><p><b>  size(T)</b><

56、;/p><p><b>  % size(P)</b></p><p><b>  % size(T)</b></p><p>  % 創(chuàng)建一個新的前向神經(jīng)網(wǎng)絡(luò) </p><p>  net_1=newff(minmax(P),[10,3],{'tansig','pureli

57、n'},'traingdm')</p><p>  % 當(dāng)前輸入層權(quán)值和閾值 </p><p>  inputWeights=net_1.IW{1,1} </p><p>  inputbias=net_1.b{1} </p><p>  % 當(dāng)前網(wǎng)絡(luò)層權(quán)值和閾值 </p><p>  la

58、yerWeights=net_1.LW{2,1} </p><p>  layerbias=net_1.b{2} </p><p><b>  % 設(shè)置訓(xùn)練參數(shù)</b></p><p>  net_1.trainParam.show = 50; </p><p>  net_1.trainParam.lr = 0.05

59、; </p><p>  net_1.trainParam.mc = 0.9; </p><p>  net_1.trainParam.epochs = 10000; %每次練1000次就顯示一個結(jié)果</p><p>  net_1.trainParam.goal = 1e-3; %訓(xùn)練目標(biāo),誤差小于0.001,就可以停止訓(xùn)練。</p><p&g

60、t;  % 調(diào)用 TRAINGDM 算法訓(xùn)練 BP 網(wǎng)絡(luò)</p><p>  [net_1,tr]=train(net_1,P,T); </p><p>  % 對 BP 網(wǎng)絡(luò)進行仿真</p><p>  A = sim(net_1,P); </p><p>  % 計算仿真誤差 </p><p>  E =

61、T - A; </p><p>  MSE=mse(E) </p><p>  x=[0.14 0 1 1 0 1 1 1.2]';</p><p>  sim(net_1,x)</p><p>  其中設(shè)計的BP網(wǎng)絡(luò)是包含一個隱含層,一個輸出層,隱含層設(shè)計了10個神經(jīng)元,傳遞函數(shù)采用的是tansig,輸出層設(shè)計了3個神經(jīng)元,傳遞函數(shù)

62、采用的是purelin。最后計算仿真誤差。</p><p>  3.4 設(shè)計仿真結(jié)果</p><p>  通過計算可得到最后的誤差為 9.8588e-004,近似為0,可以達到要求,實現(xiàn)對面部的識別,如圖5所示。使用該BP神經(jīng)網(wǎng)絡(luò)設(shè)計,將能實現(xiàn)的效果,舉例說明。如果采樣輸入為</p><p>  X=[0.14 0 1 1 0 1 1 1.2]、sim(net_1,

63、x),得到仿真結(jié)果ans=0.3888 、-0.0781、1.2998</p><p>  由這組數(shù)據(jù)判斷人臉的方向。</p><p><b>  圖5 誤差防真結(jié)果</b></p><p><b>  其中部分結(jié)果如下:</b></p><p>  (1)當(dāng)前輸入層權(quán)值和閾值</p>

64、<p>  inputWeights =</p><p>  2.0293 0.1735 -0.7195 -0.5960 0.4144 -0.4572 -0.0045 0.5240</p><p>  -1.3790 0.4991 -0.2724 0.3452 -0.6698 0.3092 0.5887 -0

65、.5006</p><p>  0.6020 0.7922 0.6370 -0.0844 0.2777 -0.3676 0.5203 0.9760</p><p>  -0.0830 0.4701 -1.0475 0.6972 -0.1940 0.0816 0.2463 0.2062</p><

66、p>  1.9531 -0.5386 -0.6507 -0.0463 0.4502 -0.5764 0.4557 -0.3310</p><p>  2.1315 -0.2556 -0.8726 -0.1804 0.0062 0.5324 0.3741 0.8438</p><p>  -0.2675 0.89

67、18 -0.6682 0.5801 0.3499 -0.2472 -0.2788 0.1464</p><p>  -2.6701 0.7706 0.2078 0.0380 -0.1072 0.6604 -0.3348 -0.1564</p><p>  1.9952 -0.1857 -0.5105 -0.503

68、4 -0.3297 0.7262 -0.2831 0.6181</p><p>  -0.3756 0.8912 -0.7385 0.3189 -0.5731 0.2102 0.0665 0.4216</p><p>  (2)當(dāng)前輸入層閾值</p><p>  inputbias =</p>

69、<p><b>  1.6589</b></p><p><b>  1.3770</b></p><p><b>  -4.5447</b></p><p><b>  -0.1503</b></p><p><b>  0.1323

70、</b></p><p><b>  -1.0410</b></p><p><b>  -1.7268</b></p><p><b>  -1.2491</b></p><p><b>  1.7206</b></p><

71、;p><b>  -2.3039</b></p><p>  (3)當(dāng)前網(wǎng)絡(luò)層權(quán)值和閾值</p><p>  layerWeights =</p><p>  0.5896 0.7603 -0.4571 0.4746 0.7878 0.3229 -0.8704 -0.1530 -0.1342

72、0.5207</p><p>  0.9137 -0.6541 -0.4953 -0.7270 -0.6017 -0.4312 0.9767 0.0310 -0.5481 0.0596</p><p>  0.0452 0.9595 0.7515 -0.9765 -0.4026 -0.0616 0.1656 -0.

73、3321 0.1596 0.2811</p><p>  layerbias =</p><p><b>  -0.5819</b></p><p><b>  -0.2404</b></p><p><b>  0.5667</b></p><

74、p>  4 BP神經(jīng)網(wǎng)絡(luò)的改進與優(yōu)化</p><p>  4.1 標(biāo)準(zhǔn)BP算法的缺陷:</p><p>  1)易形成局部極?。▽儇澙匪惴?,局部最優(yōu))而得不到全局最優(yōu);   </p><p>  2)訓(xùn)練次數(shù)多使得學(xué)習(xí)效率低下,收斂速度慢(需做大量運算);   </p><p>  3)隱節(jié)點的選取缺乏理論支持;&#

75、160;  </p><p>  4)訓(xùn)練時學(xué)習(xí)新樣本有遺忘舊樣本趨勢。 </p><p>  4.2 BP網(wǎng)絡(luò)的優(yōu)點以及局限性</p><p>  BP神經(jīng)網(wǎng)絡(luò)最主要的優(yōu)點是具有極強的非線性映射能力。理論上,對于一個三層和三層以上的BP網(wǎng)絡(luò),只要隱層神經(jīng)元數(shù)目足夠多,該網(wǎng)絡(luò)就能以任意精度逼近一個非線性函數(shù)。其次,BP神經(jīng)網(wǎng)絡(luò)具有對外界刺激和輸入信息進行聯(lián)

76、想記憶的能力。這是因為它采用了分布并行的信息處理方式,對信息的提取必須采用聯(lián)想的方式,才能將相關(guān)神經(jīng)元全部調(diào)動起來。BP 神經(jīng)網(wǎng)絡(luò)通過預(yù)先存儲信息和學(xué)習(xí)機制進行自適應(yīng)訓(xùn)練,可以從不完整的信息和噪聲干擾中恢復(fù)原始的完整信息。這種能力使其在圖像復(fù)原、語言處理、模式識別等方面具有重要應(yīng)用。再次,BP 神經(jīng)網(wǎng)絡(luò)對外界輸入樣本有很強的識別與分類能力。由于它具有強大的非線性處理能力,因此可以較好地進行非線性分類, 解決了神經(jīng)網(wǎng)絡(luò)發(fā)展史上的非線性分類

77、難題。另外, BP 神經(jīng)網(wǎng)絡(luò)具有優(yōu)化計算能力。BP神經(jīng)網(wǎng)絡(luò)本質(zhì)上是一個非線性優(yōu)化問題, 它可以在已知的約束條件下,尋找一組參數(shù)組合,使該組合確定的目標(biāo)函數(shù)達到最小。不過,其優(yōu)化計算存在局部極小問題,必須通過改進完善。</p><p>  由于BP網(wǎng)絡(luò)訓(xùn)練中穩(wěn)定性要求學(xué)習(xí)效率很小,所以梯度下降法使得訓(xùn)練很慢。動量法因為學(xué)習(xí)率的提高通常比單純的梯度下降法要快一些,但在實際應(yīng)用中還是速度不夠,這兩種方法通常只應(yīng)用于遞增

78、訓(xùn)練。</p><p>  多層神經(jīng)網(wǎng)絡(luò)可以應(yīng)用于線性系統(tǒng)和非線性系統(tǒng)中,對于任意函數(shù)模擬逼近。當(dāng)然,感知器和線性神經(jīng)網(wǎng)絡(luò)能夠解決這類網(wǎng)絡(luò)問題。但是,雖然理論上是可行的,但實際上BP網(wǎng)絡(luò)并不一定總能有解。</p><p>  對于非線性系統(tǒng),選擇合適的學(xué)習(xí)率是一個重要的問題。在線性網(wǎng)絡(luò)中,學(xué)習(xí)率過大會導(dǎo)致訓(xùn)練過程不穩(wěn)定。相反,學(xué)習(xí)率過小又會造成訓(xùn)練時間過長。和線性網(wǎng)絡(luò)不同,對于非線性多層網(wǎng)

79、絡(luò)很難選擇很好的學(xué)習(xí)率。對那些快速訓(xùn)練算法,缺省參數(shù)值基本上都是最有效的設(shè)置。</p><p>  非線性網(wǎng)絡(luò)的誤差面比線性網(wǎng)絡(luò)的誤差面復(fù)雜得多,問題在于多層網(wǎng)絡(luò)中非線性傳遞函數(shù)有多個局部最優(yōu)解。尋優(yōu)的過程與初始點的選擇關(guān)系很大,初始點如果更靠近局部最優(yōu)點,而不是全局最優(yōu)點,就不會得到正確的結(jié)果,這也是多層網(wǎng)絡(luò)無法得到最優(yōu)解的一個原因。為了解決這個問題,在實際訓(xùn)練過程中,應(yīng)重復(fù)選取多個初始點進行訓(xùn)練,以保證訓(xùn)練結(jié)

80、果的全局最優(yōu)性。</p><p>  網(wǎng)絡(luò)隱層神經(jīng)元的數(shù)目也對網(wǎng)絡(luò)有一定的影響。神經(jīng)元數(shù)目太少會造成網(wǎng)絡(luò)的不適性,而神經(jīng)元數(shù)目太多又會引起網(wǎng)絡(luò)的過適性。</p><p>  4.3 改進的BP網(wǎng)絡(luò)算法</p><p>  1 改進算法概述   </p><p>  此前有人提出:任意選定一組自由權(quán),通過對傳遞函數(shù)建立線性方程組,解得待求權(quán)。本

81、文在此基礎(chǔ)上將給定的目標(biāo)輸出直接作為線性方程等式代數(shù)和來建立線性方程組,不再通過對傳遞函數(shù)求逆來計算神經(jīng)元的凈輸出,簡化了運算步驟。沒有采用誤差反饋原理,因此用此法訓(xùn)練出來的神經(jīng)網(wǎng)絡(luò)結(jié)果與傳統(tǒng)算法是等效的。其基本思想是:由所給的輸入、輸出模式對通過作用于神經(jīng)網(wǎng)絡(luò)來建立線性方程組,運用高斯消元法解線性方程組來求得未知權(quán)值,而未采用傳統(tǒng)BP網(wǎng)絡(luò)的非線性函數(shù)誤差反饋尋優(yōu)的思想。   </p><p>  2

82、改進算法的具體步驟</p><p>  對給定的樣本模式對,隨機選定一組自由權(quán),作為輸出層和隱含層之間固定權(quán)值,通過傳遞函數(shù)計算隱層的實際輸出,再將輸出層與隱層間的權(quán)值作為待求量,直接將目標(biāo)輸出作為等式的右邊建立方程組來求解。   </p><p>  現(xiàn)定義如下符號(見圖1):x (p)輸入層的輸入矢量;y (p)輸入層輸入為x (p)時輸出層的實

83、際輸出矢量;t (p)目標(biāo)輸出矢量;n,m,r分別為輸入層、隱層和輸出層神經(jīng)元個數(shù);W為隱層與輸入層間的權(quán)矩陣;V為輸出層與隱層間的權(quán)矩陣。</p><p>  具體步驟如下:   </p><p> ?。?)隨機給定隱層和輸入層間神經(jīng)元的初始權(quán)值wij。   </p><p> ?。?)由給定的樣本輸入xi(p)計算出隱層的實際輸出a

84、j(p)。為方便起見將圖1網(wǎng)絡(luò)中的閥值寫入連接權(quán)中去,令:隱層閥值θj=wnj,x(n)=-1,則:   aj(p)=f(wijxi(p)) (j=1,2…m-1)。   </p><p>  (3)計算輸出層與隱層間的權(quán)值vjr。以輸出層的第r個神經(jīng)元為對象,由給定的輸出目標(biāo)值tr(p)作為等式的多項式值建立方程,</p><p>  用線性方程組表示為:&

85、#160;  a0(1)v1r+a1(1)v2r+…+am(1)vmr=tr(1)a0(2)v1r+a1(2)v2r+…+am(2)vmr=tr(2) ……a0(p)v1r+a1(p)v2r+…+am(p)vmr=tr(p) 簡寫為: Av=T   為了使該方程組有唯一解,方程矩陣A為非奇異矩陣,其秩等于其增廣矩陣的秩,即:r(A)=r(A┊B),且方程的個數(shù)等于未知數(shù)的個數(shù),故取m=p,此時方程

86、組的唯一解為: Vr=[v0r,v2r,…vmr](r=0,1,2…m-1)   </p><p> ?。?)重復(fù)第三步就可以求出輸出層m個神經(jīng)元的權(quán)值,以求的輸出層的權(quán)矩陣加上隨機固定的隱層與輸入層的權(quán)值就等于神經(jīng)網(wǎng)絡(luò)最后訓(xùn)練的權(quán)矩陣。</p><p><b>  5結(jié)論</b></p><p>  在這幾個月里,面對著諸

87、多的問題和考驗,我一次又一次享受了難題解決前的困惑和難題解決后的興奮。雖然本次設(shè)計的成品還存在著一些問題,但是,對于我自己來說,卻是不小的收獲。還有在編寫論文時,由于論文篇幅和時間的因素,有很多需要論述的地方都已經(jīng)省略,本論文只著重論述各種功能的基本算法,至于基本輸入輸出并沒有包括在內(nèi),還有很多地方是一筆帶過的,希望讀者見諒。</p><p><b>  致 謝</b></p&g

88、t;<p>  經(jīng)過幾個月的努力,查找資料、深入分析,此次畢業(yè)論文終于圓滿完成。雖然自己查閱了大量資料、還進行了深入分析,做了許多相關(guān)的工作,但沒有導(dǎo)師的悉心指導(dǎo)和其他老師同學(xué)的大力幫助,我也是無法完成此次畢業(yè)設(shè)計的,特在此向在我完成此次畢業(yè)論文過程中給了我許多鼓勵和幫助的老師同學(xué)一并致謝。</p><p>  在整個畢業(yè)論文的寫作當(dāng)中,初稿是很重要的部分。在我創(chuàng)作初稿的時候有很多疑惑,正是有了老師

89、的指導(dǎo),初審,修改,審稿,校正,論文的初稿才能順利的完成。在進行設(shè)計的這段時間,我學(xué)習(xí)了很多專業(yè)知識,逐步學(xué)會了理論知識與實際操作的相結(jié)合。通過本次設(shè)計,充分認(rèn)識到了理論與實踐之間的緊密聯(lián)系,對我今后的學(xué)習(xí)和工作當(dāng)中起到很大的作用。本次畢業(yè)設(shè)計是針對我們大學(xué)四年來所學(xué)知識而進行的一次全面性的檢驗,它涵蓋的知識面廣,涉及到多個領(lǐng)域,需要我們具有較高的綜合知識水平及較強的解決問題的能力。同時也是對我們工作能力的一次考驗。</p>

90、<p>  在這里首先我要感謝我的導(dǎo)師,她從下達任務(wù)書,資料查閱、文章結(jié)構(gòu)的安排、文字表述等各個環(huán)節(jié)和各個方面都給了我悉心的指導(dǎo)。雖然她平時的工作也很繁忙,但她還是擠出許多時間,給了我許多指導(dǎo)和啟發(fā)。她淵博的知識,前沿的理論研究,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神以及誨人不倦的高尚品德都讓我無比欽佩和無比感激,我也會以她為榜樣在今后的工作和學(xué)習(xí)中繼續(xù)努力。</p><p>  最后,向評審我的論文的老師們表示深深的敬意

91、!并向答辯委員會的全體老師表示衷心的感謝!</p><p><b>  參考文獻</b></p><p>  [1] 鄭君里,楊行峻.《人工神經(jīng)網(wǎng)絡(luò)》. 北京: 高等教育出版社,1992.5:15-30</p><p>  [2] 郝中華.《B P神經(jīng)網(wǎng)絡(luò)的非線性思想》. 洛陽師范學(xué)院學(xué)報2008.3(4)</p><p&g

92、t;  [3] 董長虹 編著 .《Matlab神經(jīng)網(wǎng)絡(luò)與應(yīng)用》. 北京:國防工業(yè)出版社,2007.9:1-13</p><p>  [4] 胡守仁,等.《神經(jīng)網(wǎng)絡(luò)導(dǎo)論》.長沙:國防科技大學(xué)出版社,1993:23-45</p><p>  [5] 張玲,張鈸.《人工神經(jīng)網(wǎng)絡(luò)理及應(yīng)用》. 浙江:浙江科技大學(xué)出版社,1997.5:20-62</p><p>  [6] 樓

93、順天,等.《基于Matlab的系統(tǒng)分析與設(shè)計---神經(jīng)網(wǎng)絡(luò)》. 西安:西安電子科技大學(xué)出版社,2000.8:23-40</p><p>  [7] 魏海坤.《神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計的理論與方法》.國防工業(yè)出版社,2005.9:20-30</p><p>  [8] 李學(xué)橋.《神經(jīng)網(wǎng)絡(luò)工程應(yīng)用》. 重慶:重慶大學(xué)出版社,1995.6:20-73</p><p>  [9]

94、馮蓉, 楊建華.《基于BP神經(jīng)網(wǎng)絡(luò)的函數(shù)逼近的MATLAB實現(xiàn)》[J]. 榆林學(xué)院學(xué)報, 2007,(02)</p><p>  Based on the application of BP neural network</p><p>  Abstract: In recent years, the neural network of information science, brain

95、 science, neuropsychology, and many other subjects of mutual concern and research hot spot. Since it has good abstract classification, characteristic has been applied to image recognition system of research and developme

96、nt, and become the effective tool to solve the problem of identifying relevant. Articles about image recognition process on the basis of focus on BP neural network is used to analyse the human face recogni</p><

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論