基于bp神經(jīng)網(wǎng)絡(luò)的數(shù)字字母識(shí)別系統(tǒng)設(shè)計(jì)——系統(tǒng)的matlab實(shí)現(xiàn)【畢業(yè)論文】_第1頁(yè)
已閱讀1頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  本科畢業(yè)論文(設(shè)計(jì))</p><p><b> ?。ǘ?屆)</b></p><p>  基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字字母識(shí)別系統(tǒng)設(shè)計(jì)——系統(tǒng)的MATLAB實(shí)現(xiàn)</p><p>  所在學(xué)院 </p><p>  專業(yè)班級(jí) 電氣工程及其

2、自動(dòng)化 </p><p>  學(xué)生姓名 學(xué)號(hào) </p><p>  指導(dǎo)教師 職稱 </p><p>  完成日期 年 月 </p><p><b>  摘 要</b></p&g

3、t;<p>  本課題利用MATLAB將應(yīng)用于數(shù)字識(shí)別的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)程序化,并進(jìn)行仿真實(shí)驗(yàn),考察網(wǎng)絡(luò)結(jié)構(gòu)對(duì)系統(tǒng)實(shí)時(shí)性、識(shí)別效果的影響以及初始權(quán)值對(duì)收斂速度的影響, 選取最佳的隱層節(jié)點(diǎn)數(shù)和權(quán)值初始化函數(shù), 實(shí)現(xiàn)了基于BP 神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別系統(tǒng)。實(shí)驗(yàn)結(jié)果表明該系統(tǒng)能夠?qū)崿F(xiàn)對(duì)數(shù)字的有效識(shí)別</p><p>  關(guān)鍵詞: 數(shù)字識(shí)別,BP神經(jīng)網(wǎng)絡(luò),MATLAB仿真</p><p>

4、;<b>  Abstract</b></p><p>  In this paper,MATLAB is used to program the BP neural network structure which is applied to digit recognition and conduct simulation experiment. For fulfilling the rea

5、l time and veracity demands of digit recognition,the structure of neural networks is researched. The influence of initial weights on convergent speed is also considered. Select the best hidden layer node number and weigh

6、t initialization function, realized the digit recognition system based on BP neural network. Experimental results</p><p>  Key Words: digit recognition,BP neural network,MATLAB simulation

7、 </p><p><b>  目 錄</b></p><p>  1 引言..............................................................1</p><p>  2 神經(jīng)網(wǎng)絡(luò).................................................

8、.........2</p><p>  2.1人工神經(jīng)元......................................................2</p><p>  2.2人工神經(jīng)網(wǎng)絡(luò)....................................................2</p><p>  2.2.1人工神經(jīng)網(wǎng)絡(luò)的定...

9、..........................................2</p><p>  2.2.2人工神經(jīng)網(wǎng)絡(luò)的工作原理.......................................2</p><p>  2.2.3人工神經(jīng)網(wǎng)絡(luò)的特征...........................................3</p><p

10、>  2.2.4幾種典型的神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介.......................................4</p><p>  2.2.5人工神經(jīng)網(wǎng)絡(luò)的發(fā)展前景.......................................4</p><p>  3 BP神經(jīng)網(wǎng)絡(luò)................................................

11、........5</p><p>  3.1 BP神經(jīng)網(wǎng)絡(luò)概述.................................................5</p><p>  3.2 BP算法.........................................................5</p><p>  3.2.1 BP算法的學(xué)習(xí)方

12、式............................................5</p><p>  3.2.2 BP算法的主要思想............................................5</p><p>  3.2.3 BP算法的組成................................................6</p

13、><p>  3.2.4 BP算法的不足及解決辦法......................................7</p><p>  3.3 BP算法在數(shù)字識(shí)別中的應(yīng)用.......................................8</p><p>  4 軟件開發(fā)環(huán)境和平臺(tái)...............................

14、...............10</p><p>  4.1 MATLAB概述....................................................10</p><p>  4.2 MATLAB語(yǔ)言特點(diǎn)................................................10</p><p>  4.3

15、MATLAB中的神經(jīng)網(wǎng)絡(luò)工具箱......................................10</p><p>  5 神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)和MATLAB編程.......................................11</p><p>  5.1神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì).................................................1

16、1</p><p>  5.1.1系統(tǒng)輸入信號(hào)的提取與表示....................................11</p><p>  5.1.2系統(tǒng)輸出信號(hào)的表示..........................................12</p><p>  5.1.3 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的建立......................

17、...................13</p><p>  5.2 數(shù)字識(shí)別系統(tǒng)的MATLAB語(yǔ)言編程.................................14</p><p>  5.2.1數(shù)字識(shí)別系統(tǒng)MATLAB編程流程圖...............................14</p><p>  5.2.2程序的初始化........

18、........................................15</p><p>  5.2.3 網(wǎng)絡(luò)訓(xùn)練...................................................15</p><p>  5.2.4系統(tǒng)性能....................................................16</p

19、><p>  5.2.5 生成輸入向量矩陣和輸出向量方陣的MATLAB函數(shù)文件............18</p><p>  5.2.6 繪制數(shù)字字符圖像的MATLAB函數(shù)文件..........................19</p><p>  5.2.7 數(shù)字字符識(shí)別測(cè)試仿真程序...................................19<

20、;/p><p>  6 結(jié)論.............................................................21</p><p>  致謝...............................................................22</p><p>  參考文獻(xiàn)................

21、...........................................23</p><p><b>  1引言</b></p><p>  數(shù)字識(shí)別是字符識(shí)別中的一個(gè)特例,是圖像處理技術(shù)和模式識(shí)別技術(shù)相結(jié)合的研究課題。隨著國(guó)家信息化進(jìn)程的加速,數(shù)字識(shí)別的應(yīng)用越來(lái)越廣泛,如郵政編碼的自動(dòng)識(shí)別、銀行稅表和銀行支票的自動(dòng)處理以及大規(guī)模的統(tǒng)計(jì)數(shù)據(jù)庫(kù)的數(shù)據(jù)自動(dòng)識(shí)

22、別輸人等。 當(dāng)這些領(lǐng)域涉及到數(shù)字識(shí)別時(shí),特別是有關(guān)金額數(shù)額的識(shí)別時(shí), 要求識(shí)別器具有很高的可靠性。針對(duì)這類問(wèn)題的關(guān)鍵就是設(shè)計(jì)出高可靠性和高識(shí)別率的數(shù)字識(shí)別方法。 人工神經(jīng)網(wǎng)絡(luò)技術(shù)源于人腦神經(jīng)系統(tǒng)的模型 ,是模擬人工智能的一種重要方法 ,具有模擬人的部分形象思維的能力。人工神經(jīng)網(wǎng)絡(luò)技術(shù)的迅速發(fā)展 ,為模式識(shí)別開辟了新的途徑。誤差反向傳播(Back-Propagation) ,即 BP神經(jīng)網(wǎng)絡(luò) ,就是一種典型的人工神經(jīng)網(wǎng)絡(luò) , 它具有信息并

23、行分布式處理能力和自學(xué)習(xí)功能等顯著優(yōu)點(diǎn),有著廣泛的應(yīng)用。本文在對(duì) BP神經(jīng)網(wǎng)絡(luò)基本原理研究的基礎(chǔ)上 ,結(jié)合這一課題 , 利用 BP神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)數(shù)字的識(shí)別。 再利用MATLAB中神經(jīng)網(wǎng)絡(luò)的工具箱編制程序,把數(shù)字識(shí)別系統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)模型變?yōu)槌绦蚰P汀ATLAB仿真表明,BP神經(jīng)網(wǎng)絡(luò)識(shí)別數(shù)字具有良好的效果。</p><p><b>  2 神經(jīng)網(wǎng)絡(luò)</b></p><

24、p><b>  2.1 人工神經(jīng)元</b></p><p>  人工神經(jīng)元模擬了大腦的簡(jiǎn)單特性。人工神經(jīng)元是神經(jīng)網(wǎng)絡(luò)最基本的組成,一般是多輸入、單輸出的非線性器件[1]。人工神經(jīng)元模型如圖2-1。.</p><p>  圖2-1 神經(jīng)元模型結(jié)構(gòu)</p><p><b>  2.2人工神經(jīng)網(wǎng)絡(luò)</b></p&g

25、t;<p>  2.2.1人工神經(jīng)網(wǎng)絡(luò)的定義</p><p>  人工神經(jīng)網(wǎng)絡(luò)是一種模范動(dòng)物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型。這種網(wǎng)絡(luò)依靠系統(tǒng)的復(fù)雜程度,通過(guò)調(diào)整內(nèi)部大量節(jié)點(diǎn)之間相互連接的關(guān)系,從而達(dá)到處理信息的目的[2]。</p><p>  2.2.2人工神經(jīng)網(wǎng)絡(luò)的工作原理</p><p>  人工神經(jīng)網(wǎng)絡(luò)具有自學(xué)習(xí)和自適應(yīng)的

26、能力,可以通過(guò)預(yù)先提供的一批相互對(duì)應(yīng)的輸入-輸出數(shù)據(jù),分析掌握兩者之間潛在的規(guī)律,最終根據(jù)這些規(guī)律,用新的輸入數(shù)據(jù)來(lái)推算輸出結(jié)果,這種學(xué)習(xí)分析的過(guò)程被稱為“訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)的工作原理[3]。</p><p>  人工神經(jīng)網(wǎng)絡(luò)首先要以一定的學(xué)習(xí)準(zhǔn)則進(jìn)行學(xué)習(xí),然后才能工作?,F(xiàn)以人工神經(jīng)網(wǎng)絡(luò)對(duì)手寫“A”、“B”兩個(gè)字母的識(shí)別為例進(jìn)行說(shuō)明,規(guī)定當(dāng)“A”輸入網(wǎng)絡(luò)時(shí),應(yīng)該輸出“1”,而當(dāng)輸入為“B”時(shí),輸出為“0”。

27、0; 所以網(wǎng)絡(luò)學(xué)習(xí)的準(zhǔn)則應(yīng)該是:如果網(wǎng)絡(luò)作出錯(cuò)誤的的判決,則通過(guò)網(wǎng)絡(luò)的學(xué)習(xí),應(yīng)使得網(wǎng)絡(luò)減少下次犯同樣錯(cuò)誤的可能性。首先,給網(wǎng)絡(luò)的各連接權(quán)值賦予(0,1)區(qū)間內(nèi)的隨機(jī)值,將“A”所對(duì)應(yīng)的圖象模式輸入給網(wǎng)絡(luò),網(wǎng)絡(luò)將輸入模式加權(quán)求和、與門限比較、再進(jìn)行非線性運(yùn)算,得到網(wǎng)絡(luò)的輸出。在此情況下,網(wǎng)絡(luò)輸出為“1”和“0”的概率各為50%,也就是說(shuō)是完全隨機(jī)的。這時(shí)如果輸出為“1”(結(jié)果正確),則使連接權(quán)值增大,以便使網(wǎng)絡(luò)再次遇到“A”模式輸入時(shí),仍

28、然能作出正確的判斷。</p><p>  如果輸出為“0”(即結(jié)果錯(cuò)誤),則把網(wǎng)絡(luò)連接權(quán)值朝著減小綜合輸入加權(quán)值的方向調(diào)整,其目的在于使網(wǎng)絡(luò)下次再遇到“A”模式輸入時(shí),減小犯同樣錯(cuò)誤的可能性。如此操作調(diào)整,當(dāng)給網(wǎng)絡(luò)輪番輸入若干個(gè)手寫字母“A”、“B”后,經(jīng)過(guò)網(wǎng)絡(luò)按以上學(xué)習(xí)方法進(jìn)行若干次學(xué)習(xí)后,網(wǎng)絡(luò)判斷的正確率將大大提高。這說(shuō)明網(wǎng)絡(luò)對(duì)這兩個(gè)模式的學(xué)習(xí)已經(jīng)獲得了成功,它已將這兩個(gè)模式分布地記憶在網(wǎng)絡(luò)的各個(gè)連接權(quán)值上。

29、當(dāng)網(wǎng)絡(luò)再次遇到其中任何一個(gè)模式時(shí),能夠作出迅速、準(zhǔn)確的判斷和識(shí)別。一般說(shuō)來(lái),網(wǎng)絡(luò)中所含的神經(jīng)元個(gè)數(shù)越多,則它能記憶、識(shí)別的模式也就越多[4]。</p><p>  2.2.3人工神經(jīng)網(wǎng)絡(luò)的基本特征</p><p>  (1)非線性 非線性關(guān)系是自然界的普遍特性。大腦的智慧就是一種非線性現(xiàn)象。人工神經(jīng)元處于激活或抑制二種不同的狀態(tài),這種行為在數(shù)學(xué)上表現(xiàn)為一種非線性關(guān)系。具有閾值的神經(jīng)元構(gòu)成的

30、網(wǎng)絡(luò)具有更好的性能,可以提高容錯(cuò)性和存儲(chǔ)容量。</p><p>  (2)非局限性 一個(gè)神經(jīng)網(wǎng)絡(luò)通常由多個(gè)神經(jīng)元廣泛連接而成。一個(gè)系統(tǒng)的整體行為不僅取決于單個(gè)神經(jīng)元的特征,而且可能主要由單元之間的相互作用、相互連接所決定。通過(guò)單元之間的大量連接模擬大腦的非局限性。聯(lián)想記憶是非局限性的典型例子。</p><p>  (3)非常定性 人工神經(jīng)網(wǎng)絡(luò)具有自適應(yīng)、自組織、自學(xué)習(xí)能力。神經(jīng)網(wǎng)絡(luò)不但處理

31、的信息可以有各種變化,而且在處理信息的同時(shí),非線性動(dòng)力系統(tǒng)本身也在不斷變化。經(jīng)常采用迭代過(guò)程描寫動(dòng)力系統(tǒng)的演化過(guò)程[5]。</p><p>  (4)非凸性 一個(gè)系統(tǒng)的演化方向,在一定條件下將取決于某個(gè)特定的狀態(tài)函數(shù)。例如能量函數(shù),它的極值相應(yīng)于系統(tǒng)比較穩(wěn)定的狀態(tài)。非凸性是指這種函數(shù)有多個(gè)極值,故系統(tǒng)具有多個(gè)較穩(wěn)定的平衡態(tài),這將導(dǎo)致系統(tǒng)演化的多樣性。</p><p>  2.2.4幾種典型

32、的神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介 </p><p>  神經(jīng)網(wǎng)絡(luò)模型各種各樣, 各式各樣的模型從不同的角度對(duì)生物神經(jīng)系統(tǒng)進(jìn)行不同層次的描述和模擬。代表性的網(wǎng)絡(luò)模型有BP網(wǎng)絡(luò)、RBF網(wǎng)絡(luò)、H opfie ld網(wǎng)絡(luò)、自組織特征映射網(wǎng)絡(luò)等。運(yùn)用這些網(wǎng)絡(luò)模型可實(shí)現(xiàn)函數(shù)逼近、數(shù)據(jù)聚類、模式分類、優(yōu)化計(jì)算等功能。因此, 神經(jīng)網(wǎng)絡(luò)廣泛應(yīng)用于人工智能、自動(dòng)控制、機(jī)器人、統(tǒng)計(jì)學(xué)等領(lǐng)域的信息處理中[6]。</p><p&

33、gt;  2.2.5人工神經(jīng)網(wǎng)絡(luò)的發(fā)展前景</p><p>  由于現(xiàn)代高性能計(jì)算機(jī)的研發(fā),人工神經(jīng)網(wǎng)絡(luò)的發(fā)展將在趨向于微觀器件同宏觀功能的結(jié)合, 并在智能化傳感器、隨機(jī)模式識(shí)別、實(shí)時(shí)知識(shí)處理、控制應(yīng)用、最優(yōu)化問(wèn)題等方面克服現(xiàn)時(shí)的理論和技術(shù)障礙, 從實(shí)驗(yàn)室和專門應(yīng)用逐步地滲入到實(shí)際生活和各類工作系統(tǒng)中去。我們可以想象到那時(shí)聲控電視、電話、計(jì)算機(jī)、打字機(jī)等將進(jìn)入尋常百姓家; 人類可以直接同機(jī)器進(jìn)行接口對(duì)話;具有思維

34、、語(yǔ)言、感情的智能機(jī)器人將替代我們?nèi)プ鲈S多繁瑣和人類自身不適合做的事情。</p><p><b>  3.BP神經(jīng)網(wǎng)絡(luò)</b></p><p>  3.1 BP神經(jīng)網(wǎng)絡(luò)概述</p><p>  BP(Back Propagation)網(wǎng)絡(luò)是1986年由Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前

35、饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。BP網(wǎng)絡(luò)能學(xué)習(xí)和存貯大量的輸入-輸出模式映射關(guān)系,而無(wú)需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程[7]。</p><p><b>  3.2 BP算法</b></p><p>  3.2.1 BP算法的學(xué)習(xí)方式</p><p>  神經(jīng)網(wǎng)絡(luò)具有初步的自適應(yīng)與自組織能力。在學(xué)習(xí)或訓(xùn)練過(guò)程中改變突觸權(quán)重值,以適

36、應(yīng)周圍環(huán)境的要求。同一網(wǎng)絡(luò)因?qū)W習(xí)方式及內(nèi)容不同可具有不同的功能。神經(jīng)網(wǎng)絡(luò)是一個(gè)具有學(xué)習(xí)能力的系統(tǒng),可以發(fā)展知識(shí),以致超過(guò)設(shè)計(jì)者原有的知識(shí)水平。通常,它的學(xué)習(xí)訓(xùn)練方式可分為兩種,一種是有監(jiān)督或稱有導(dǎo)師的學(xué)習(xí),這時(shí)利用給定的樣本標(biāo)準(zhǔn)進(jìn)行分類或模仿;另一種是無(wú)監(jiān)督學(xué)習(xí)或稱無(wú)導(dǎo)師學(xué)習(xí),這時(shí),只規(guī)定學(xué)習(xí)方式或某些規(guī)則,則具體的學(xué)習(xí)內(nèi)容隨系統(tǒng)所處環(huán)境 (即輸入信號(hào)情況)而異,系統(tǒng)可以自動(dòng)發(fā)現(xiàn)環(huán)境特征和規(guī)律性,具有更近似人腦的功能。BP算法即誤差反向

37、傳播(Error Back Propagation, BP)算法。BP算法屬于δ算法, 是一種監(jiān)督式的學(xué)習(xí)算法[8]。</p><p>  3.2.2 BP算法的主要思想</p><p>  BP算法的主要思想:輸入學(xué)習(xí)樣本,使用反向傳播算法對(duì)網(wǎng)絡(luò)的權(quán)值和偏差進(jìn)行反復(fù)的調(diào)整訓(xùn)練,使輸出的向量與期望向量盡可能地接近,當(dāng)網(wǎng)絡(luò)輸出層的誤差平方和小于指定的誤差時(shí)訓(xùn)練完成,保存網(wǎng)絡(luò)的權(quán)值和偏差。即對(duì)

38、于n個(gè)輸入學(xué)習(xí)樣本:X1,X2,……,Xn,已知與其對(duì)應(yīng)的輸出樣本為:Y1,Y2,…….,Yn。使網(wǎng)絡(luò)輸出層的誤差平方和達(dá)到最小。用網(wǎng)絡(luò)的實(shí)際輸出A1,A2,……,An,與目標(biāo)矢量T1,T2,…….,Tn之間的誤差修改其權(quán)值,使Am與期望的Tm(m=1,……,n)盡可能接近。</p><p>  3.2.3 BP算法的組成</p><p>  BP算法由2部分組成,即信息的正向傳播和誤差的

39、反向傳播。</p><p>  輸入層各神經(jīng)元負(fù)責(zé)接收來(lái)自外界的輸入信息,并傳遞給中間層各神經(jīng)元;中間層是內(nèi)部信息處理層,負(fù)責(zé)信息變換,根據(jù)信息變化能力的需求,中間層可以設(shè)計(jì)為單隱層或者多隱層結(jié)構(gòu);最后一個(gè)隱層傳遞到輸出層各神經(jīng)元的信息,經(jīng)進(jìn)一步處理后,完成一次學(xué)習(xí)的正向傳播處理過(guò)程,由輸出層向外界輸出信息處理結(jié)果[9]。</p><p>  當(dāng)實(shí)際輸出與期望輸出不符時(shí),進(jìn)入誤差的反向傳播

40、階段。誤差通過(guò)輸出層,按誤差梯度下降的方式修正各層權(quán)值,向隱層、輸入層逐層反傳。周而復(fù)始的信息正向傳播和誤差反向傳播過(guò)程,是各層權(quán)值不斷調(diào)整的過(guò)程,也是神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)訓(xùn)練的過(guò)程,此過(guò)程一直進(jìn)行到網(wǎng)絡(luò)輸出的誤差減少到可以接受的程度,或者預(yù)先設(shè)定。BP算法的網(wǎng)絡(luò)結(jié)構(gòu)如圖3-1,流程如圖3-2。.</p><p>  圖3-1 BP算法的網(wǎng)絡(luò)結(jié)構(gòu)示意圖</p><p><b>  Y&

41、lt;/b></p><p><b>  N</b></p><p><b>  N</b></p><p><b>  Y</b></p><p>  圖3-2 BP算法流程圖</p><p>  3.2.4 BP算法的不足及解決辦法</

42、p><p>  雖然BP網(wǎng)絡(luò)得到了廣泛的應(yīng)用,但自身也存在一些缺陷和不足,主要包括以下幾個(gè)方面的問(wèn)題。 </p><p>  首先,由于學(xué)習(xí)速率是固定的,因此網(wǎng)絡(luò)的收斂速度慢,需要較長(zhǎng)的訓(xùn)練時(shí)間。對(duì)于一些復(fù)雜問(wèn)題,BP算法需要的訓(xùn)練時(shí)間可能非常長(zhǎng),這主要是由于學(xué)習(xí)速率太小造成的,可采用變化的學(xué)習(xí)速率或自適應(yīng)的學(xué)習(xí)速率加以改進(jìn)。 </p><p>  其次,BP算法可以使

43、權(quán)值收斂到某個(gè)值,但并不保證其為誤差平面的全局最小值,這是因?yàn)椴捎锰荻认陆捣赡墚a(chǎn)生一個(gè)局部最小值。對(duì)于這個(gè)問(wèn)題,可以采用附加動(dòng)量法來(lái)解決。 </p><p>  再次,網(wǎng)絡(luò)隱含層的層數(shù)和單元數(shù)的選擇尚無(wú)理論上的指導(dǎo),一般是根據(jù)經(jīng)驗(yàn)或者通過(guò)反復(fù)實(shí)驗(yàn)確定。因此,網(wǎng)絡(luò)往往存在很大的冗余性,在一定程度上也增加了網(wǎng)絡(luò)學(xué)習(xí)的負(fù)擔(dān)。 </p><p>  最后,網(wǎng)絡(luò)的學(xué)習(xí)和記憶具有不穩(wěn)定性。也就是說(shuō),

44、如果增加了學(xué)習(xí)樣本,訓(xùn)練好的網(wǎng)絡(luò)就需要從頭開始訓(xùn)練,對(duì)于以前的權(quán)值和閾值是沒(méi)有記憶的[10]。</p><p>  3.3 BP算法在數(shù)字識(shí)別中的應(yīng)用</p><p>  BP算法在數(shù)字識(shí)別中的應(yīng)用如圖3-3。.</p><p>  圖 3-3 BP算法在數(shù)字識(shí)別中的應(yīng)用</p><p>  數(shù)字識(shí)別還有一個(gè)前提工作,即將視覺(jué)圖像轉(zhuǎn)化為可

45、由計(jì)算機(jī)處理的二值圖像,即用給定閾值法把圖像中的像素根據(jù)一定標(biāo)準(zhǔn)化為兩種顏色。但二值化的圖像在很多情況下字體模糊,或出現(xiàn)雜亂散布的白點(diǎn)或黑點(diǎn),給識(shí)別造成一定的困難,可采用梯度銳化的方法對(duì)圖像進(jìn)行銳化,使模糊的圖像變的清晰,同時(shí)可以對(duì)噪聲起到一定的去除作用。</p><p>  由于識(shí)別時(shí)只能根據(jù)每個(gè)數(shù)字字符的特征進(jìn)行判斷,所以對(duì)銳化后的二值圖像還需分割成單個(gè)的字符,對(duì)字符進(jìn)行細(xì)化。常用的脫殼算法,即從字符的邊界逐

46、層移去黑點(diǎn),直到尋找到一個(gè)集合,此集合與其邊界相重合(即厚度為1或2)。為了對(duì)任意字符的特征提取,還需要對(duì)數(shù)字字符進(jìn)行規(guī)范化處理,即把字符的尺寸變換成統(tǒng)一大小,字符位置(旋轉(zhuǎn)、平移)糾正。從被分割處理完畢的字符中,提取最能體現(xiàn)這個(gè)字符特點(diǎn)的特征向量,代入BP網(wǎng)絡(luò)之中,對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。然后提取出待識(shí)別的的樣本中的特征向量代入到訓(xùn)練好的BP網(wǎng)絡(luò)中,就可以對(duì)字符進(jìn)行識(shí)別。常用的特征向量的提取方法有逐像素提取法、骨架特征提取法、垂直方向數(shù)據(jù)統(tǒng)計(jì)

47、提取法等[11]。</p><p>  4 軟件開發(fā)環(huán)境和平臺(tái)</p><p>  4.1 MATLAB概述</p><p>  MATLAB是由美國(guó)mathworks公司發(fā)布的主要面對(duì)科學(xué)計(jì)算、可視化以及交互式程序設(shè)計(jì)的高科技計(jì)算環(huán)境。它將數(shù)值分析、矩陣計(jì)算、科學(xué)數(shù)據(jù)可視化以及非線性動(dòng)態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個(gè)易于使用的視窗環(huán)境中,為科學(xué)研究、工

48、程設(shè)計(jì)以及必須進(jìn)行有效數(shù)值計(jì)算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計(jì)語(yǔ)言(如C、Fortran)的編輯模式,代表了當(dāng)今國(guó)際科學(xué)計(jì)算軟件的先進(jìn)水平。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語(yǔ)言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測(cè)、金融建模設(shè)計(jì)與分析等領(lǐng)域。</p><p>  4.2 MATLA

49、B語(yǔ)言特點(diǎn)</p><p>  新版本MATLAB語(yǔ)言是基于最為流行的C++語(yǔ)言基礎(chǔ)上的,因此語(yǔ)法特征與C++語(yǔ)言極為相似,而且更加簡(jiǎn)單,更加符合科技人員對(duì)數(shù)學(xué)表達(dá)式的書寫格式用戶可以在命令窗口中將輸入語(yǔ)句與執(zhí)行命令同步,也可以先編寫好一個(gè)較大的復(fù)雜的應(yīng)用程序(M文件)后再一起運(yùn)行。使之更利于非計(jì)算機(jī)專業(yè)的科技人員使用。而且這種語(yǔ)言可移植性好、可拓展性極強(qiáng)。</p><p>  4.3 M

50、ATLAB中的神經(jīng)網(wǎng)絡(luò)工具箱</p><p>  MATLAB軟件中包含MATLAB神經(jīng)網(wǎng)絡(luò)工具箱,工具箱以人工神經(jīng)網(wǎng)絡(luò)為基礎(chǔ),只要根據(jù)自己需要調(diào)用函數(shù),就可以完成網(wǎng)絡(luò)設(shè)計(jì)、權(quán)值初始化、網(wǎng)絡(luò)訓(xùn)練等。MATLAB神經(jīng)工具箱包括的網(wǎng)絡(luò)有感知器、線性網(wǎng)絡(luò)、BP神經(jīng)網(wǎng)絡(luò)、徑向基網(wǎng)絡(luò)、自組織網(wǎng)絡(luò)和回歸網(wǎng)絡(luò)。因此系統(tǒng)的軟件實(shí)現(xiàn)使用MATLAB。</p><p>  5 神經(jīng)網(wǎng)絡(luò)設(shè)計(jì)和MATLAB編程

51、</p><p>  5.1神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì)</p><p>  5.1.1系統(tǒng)輸入信號(hào)的提取與表示</p><p>  本課題中將需要識(shí)別的0-9十個(gè)數(shù)字字符納入4×7的網(wǎng)格中,圖5-1—圖5-4所示就是數(shù)字0-9十個(gè)數(shù)字的網(wǎng)格圖。用數(shù)字1~28表示網(wǎng)格的序號(hào),設(shè)計(jì)了一個(gè)具有28個(gè)分量的輸入向量X,其中每個(gè)分量的下標(biāo)與網(wǎng)絡(luò)的序號(hào)相對(duì)應(yīng),其取值為1或0,它們

52、分別代表網(wǎng)絡(luò)內(nèi)字符筆跡的有無(wú)。則代表十個(gè)數(shù)字字符樣本的輸入向量分別為:</p><p>  X0=(1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1)T;</p><p>  X1=(0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0)T;</p><

53、;p>  X2=(1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1)T;</p><p>  X3=(1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1)T;</p><p>  X4= (1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 0 0 1

54、 0 0 0 1 0 0 0 1 0) T;</p><p>  X5= (1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1) T;</p><p>  X6= (1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1) T;</p><p>  X

55、7= (1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1) T;</p><p>  X8= (1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1) T;</p><p>  X9= (1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0

56、0 0 1 1 1 1 1) T;</p><p>  在程序中輸入向量被定義成一個(gè)變量X。</p><p>  圖5-1 數(shù)字0-2字符的網(wǎng)絡(luò)表示</p><p>  圖5-2 數(shù)字3-5字符的網(wǎng)絡(luò)表示</p><p>  圖5-3 數(shù)字6-8字符的網(wǎng)絡(luò)表示</p><p>  圖5-4 數(shù)字9字符的網(wǎng)絡(luò)表示

57、</p><p>  5.1.2系統(tǒng)輸出信號(hào)的表示</p><p>  本課題采用了語(yǔ)言變量表示方法中的“n中取1”表示法。即期望輸出向量含有10個(gè)元素,數(shù)字字母在數(shù)字表中所占位置處元素為1,其他位置為0。因此十個(gè)數(shù)字字符輸出信號(hào)向量表示為:</p><p>  Y0=(1 0 0 0 0 0 0 0 0 0);</p><p>  Y1=(

58、0 1 0 0 0 0 0 0 0 0);</p><p>  Y2=(0 0 1 0 0 0 0 0 0 0);</p><p>  Y3=(0 0 0 1 0 0 0 0 0 0);</p><p>  Y4=(0 0 0 0 1 0 0 0 0 0);</p><p>  Y5=(0 0 0 0 0 1 0 0 0 0);</p&

59、gt;<p>  Y6=(0 0 0 0 0 0 1 0 0 0);</p><p>  Y7=(0 0 0 0 0 0 0 1 0 0);</p><p>  Y8=(0 0 0 0 0 0 0 0 1 0);</p><p>  Y9=(0 0 0 0 0 0 0 0 0 1);</p><p>  在程序中輸出向量被定義成

60、一個(gè)變量Y。</p><p>  5.1.3網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的建立</p><p>  根據(jù)輸入、輸出信號(hào)的表示方法,本文建立了三層BP神經(jīng)網(wǎng)絡(luò),其中輸入層神經(jīng)元節(jié)點(diǎn)數(shù)為28,隱層神經(jīng)元節(jié)點(diǎn)數(shù)為10,輸出層神經(jīng)元節(jié)點(diǎn)數(shù)為10,其拓?fù)浣Y(jié)構(gòu)如圖5-2</p><p>  圖5-2 數(shù)字識(shí)別系統(tǒng)神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖</p><p>  5.2 數(shù)字識(shí)別

61、系統(tǒng)的Matlab語(yǔ)言編程</p><p>  5.2.1數(shù)字識(shí)別系統(tǒng)Matlab編程流程圖</p><p>  本文的Matlab編程流程圖如下圖5-3。</p><p>  圖5-3 Matlab編程流程圖</p><p>  5.2.2程序的初始化</p><p>  程序的初始化。首先生成10個(gè)數(shù)字字符的布爾

62、值樣本數(shù)據(jù),然后應(yīng)用函數(shù)newff()構(gòu)建一個(gè)三層BP神經(jīng)網(wǎng)絡(luò)。程序如下:</p><p>  [X,Y]=XY; %調(diào)用函數(shù)XY生成10個(gè)數(shù)字字符輸入向量矩陣X和輸出向量方陣Y</p><p>  [R,Q]=size(X); %確定輸入向量矩陣的大小為(R×Q)</p><p>  [S2,Q]=size(Y); %確定輸出向量方陣的大小為(S2

63、15;Q)</p><p>  S1=10; %確定隱層節(jié)點(diǎn)數(shù)大小為10</p><p>  P=X; %把輸入向量矩陣賦值給P</p><p>  net=newff(minmax(P),[S1,S2],{'logsig','logsig'},'traingdx'); %建立三層BP神經(jīng)網(wǎng)絡(luò)</p>

64、<p>  net.LW{2,1}=net.LW{2,1}*0.01; %輸出層權(quán)值初始化</p><p>  net.b{2}=net.b{2}+0.01; %輸出層神經(jīng)元閾值初始化</p><p>  5.2.3 網(wǎng)絡(luò)訓(xùn)練</p><p>  為了使建立的網(wǎng)絡(luò)對(duì)輸入向量具有一定的容錯(cuò)能力,采用的訓(xùn)練辦法是既使用理想的信號(hào),又使用帶有噪聲的信號(hào)對(duì)網(wǎng)絡(luò)

65、進(jìn)行訓(xùn)練。為了保證網(wǎng)絡(luò)同時(shí)具有對(duì)理想輸入和有噪聲輸入同時(shí)分類的能力,訓(xùn)練有噪聲的輸入矢量是通過(guò)對(duì)兩組無(wú)噪聲訓(xùn)練的同時(shí),加上兩對(duì)有隨機(jī)噪聲輸入矢量來(lái)實(shí)現(xiàn)的。網(wǎng)絡(luò)訓(xùn)練完成后,為保證網(wǎng)絡(luò)能夠準(zhǔn)確無(wú)誤地識(shí)別出理想的數(shù)字,我們可以再用理想的無(wú)噪聲輸入矢量對(duì)網(wǎng)絡(luò)再訓(xùn)練一次。將最終的訓(xùn)練結(jié)果存入一個(gè)數(shù)據(jù)文件,作為下一步網(wǎng)絡(luò)識(shí)別用的權(quán)矢量。具體過(guò)程如下:</p><p><b>  1.無(wú)噪聲訓(xùn)練</b>&

66、lt;/p><p>  應(yīng)用理想的輸入信號(hào)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,直到均方差達(dá)到精度要求,程序如下:</p><p>  T=Y; %把輸出向量方陣賦值給目標(biāo)輸出向量矩陣T</p><p>  net.performFcn='sse';</p><p>  net.trainParam.goal=0.1; %最小誤差設(shè)置為0.1<

67、;/p><p>  net.trainParam.show=20; %每隔20次顯示一次結(jié)果</p><p>  net.trainParam.epochs=5000; %最大訓(xùn)練次數(shù)為5000</p><p>  net.trainParam.mc=0.95;</p><p>  [net,tr]=train(net,P,T) %對(duì)新建立

68、的BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練</p><p><b>  2.有噪聲訓(xùn)練</b></p><p>  為了保證設(shè)計(jì)的網(wǎng)絡(luò)對(duì)于噪聲信號(hào)有一定的容錯(cuò)能力,采用由兩套理想數(shù)字字符向量和兩套帶有一定噪聲的數(shù)字字符向量作為新的訓(xùn)練樣本,那兒期望輸出向量信號(hào)就包括4組重復(fù)數(shù)字字母向量方陣。加入的噪聲采用均值為0.1和0.2兩種信號(hào),并且在循環(huán)中重復(fù)10次,而每一次循環(huán)訓(xùn)練300次,誤差

69、精度為0.6。程序如下:</p><p>  netn=net; %把前面訓(xùn)練好的的BP網(wǎng)絡(luò)賦給netn</p><p>  netn.trainParam.goal=0.6; %設(shè)置誤差精度為0.6</p><p>  netn.trainParam.epochs=300;%訓(xùn)練次數(shù)為300</p><p>  T=[Y Y Y Y];

70、 %設(shè)置目標(biāo)向量矩陣</p><p>  for pass=1:10 %重復(fù)循環(huán)訓(xùn)練10次</p><p>  P=[X,X,(X+randn(R,Q)*0.2),(X+randn(R,Q)*0.3)]; %設(shè)置輸入信號(hào)矩陣</p><p>  [netn,tr]=train(net,P,T); %進(jìn)行有噪聲網(wǎng)絡(luò)訓(xùn)練</p><p>

71、<b>  3.再次無(wú)噪聲訓(xùn)練</b></p><p>  通過(guò)這次訓(xùn)練使得網(wǎng)絡(luò)進(jìn)行理想信號(hào)識(shí)別時(shí),節(jié)省資源。程序如下:</p><p>  netn.trainParam.goal=0.1; %設(shè)置網(wǎng)絡(luò)訓(xùn)練誤差精度</p><p>  netn.trainParam.epochs=500; %設(shè)置網(wǎng)絡(luò)訓(xùn)練次數(shù)</p>&l

72、t;p>  netn.trainParam.show=5; %設(shè)置每訓(xùn)練5次顯示一次結(jié)果</p><p>  P=X; %給網(wǎng)絡(luò)輸入矩陣P賦值</p><p>  T=Y; %給網(wǎng)絡(luò)輸出目標(biāo)矩陣賦值</p><p>  [net,tr]=train(netn,P,T) %訓(xùn)練BP神經(jīng)網(wǎng)絡(luò)</p><p><b>  5

73、.2.4系統(tǒng)性能</b></p><p>  為了測(cè)量所設(shè)計(jì)的神經(jīng)網(wǎng)絡(luò)模式識(shí)別系統(tǒng)的可靠性,應(yīng)用上百個(gè)輸入向量加入不同的噪聲信號(hào)進(jìn)行測(cè)試,并繪制網(wǎng)絡(luò)識(shí)別錯(cuò)誤與噪聲信號(hào)的比較曲線。加入網(wǎng)絡(luò)輸入向量的噪聲均值為0,標(biāo)準(zhǔn)差范圍為0~0.5。在每個(gè)噪聲級(jí)別上,分別利用100個(gè)不同的噪聲信號(hào)進(jìn)行試驗(yàn),并將噪聲信號(hào)加到每個(gè)字符向量上,然后通過(guò)仿真計(jì)算網(wǎng)絡(luò)輸出,將輸出通過(guò)競(jìng)爭(zhēng)傳遞函數(shù),保證輸出向量10個(gè)元素中有一個(gè)

74、值為1,其余均為0。程序如下:</p><p>  noise_range=0:0.05:0.5; %設(shè)置噪聲均值范圍</p><p>  max_test=100; %設(shè)置噪聲信號(hào)個(gè)數(shù)</p><p>  network1=[]; %矩陣賦值語(yǔ)句</p><p>  network2=[]; %矩陣賦值語(yǔ)句</p>

75、<p>  T=Y; %設(shè)置輸出目標(biāo)信號(hào)矩陣</p><p>  for noiselevel=noise_range %利用for循環(huán)語(yǔ)句設(shè)置噪聲均值</p><p>  errors1=0; %給變量賦初始值</p><p>  errors2=0; %給變量賦初始值</p><p>  for i=1:max_tes

76、t %利用for循環(huán)語(yǔ)句設(shè)置100個(gè)噪聲信號(hào)</p><p>  P=X+randn(28,10)*noiselevel; %設(shè)置帶有噪聲的輸入信號(hào)</p><p>  A=sim(net,P); %利用無(wú)噪聲網(wǎng)絡(luò)仿真求實(shí)際輸出信號(hào)</p><p>  AA=compet(A); %確定輸出向量方陣的每個(gè)列向量的10個(gè)分量元素中有一個(gè)值為1,其余為0<

77、/p><p>  errors1=errors1+sum(sum(abs(AA-T)))/2; %計(jì)算識(shí)別誤差</p><p>  An=sim(netn,P); %利用有噪聲網(wǎng)絡(luò)仿真求實(shí)際輸出信號(hào)</p><p>  AAn=compet(An); %確定輸出向量方陣的每個(gè)列向量的10個(gè)分量元素中有一個(gè)值為1,其余為0</p><p> 

78、 errors2=errors2+sum(sum(abs(AAn-T)))/2; %計(jì)算識(shí)別誤差</p><p><b>  end</b></p><p>  network1=[network1 errors1/10/100];</p><p>  network2=[network2 errors2/10/100];</p>

79、<p><b>  end</b></p><p>  plot(noise_range,network1*100,'r',noise_range,network2*100); %繪制識(shí)別誤差與噪聲指標(biāo)的關(guān)系圖</p><p>  title('識(shí)別誤差'); %設(shè)置圖形標(biāo)題</p><p> 

80、 xlabel('噪聲指標(biāo)'); %設(shè)置橫坐標(biāo)標(biāo)題</p><p>  ylabel('無(wú)噪聲訓(xùn)練網(wǎng)絡(luò) – 有噪聲訓(xùn)練網(wǎng)絡(luò) ---'); %設(shè)置縱坐標(biāo)標(biāo)題</p><p>  識(shí)別誤差與噪聲的關(guān)系圖如圖5-4</p><p>  圖5-4 識(shí)別誤差與噪聲的關(guān)系圖</p><p>  5.2.5 生成輸入向

81、量矩陣和輸出向量方陣的MATLAB函數(shù)文件</p><p>  function [X,Y] = XY()</p><p>  %生成(28×10)的輸入向量矩陣X</p><p>  letter0 = [1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1]’;</p><p

82、>  letter1 = [0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0]';</p><p>  letter2 = [1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1]';</p><p>  letter3 = [1 1 1 1 0 0

83、 0 1 0 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1]';</p><p>  letter4 = [1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 0 0 1 0 0 0 1 0 0 0 1 0]';</p><p>  letter5 = [1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0

84、 1 0 0 0 1 1 1 1 1]';</p><p>  letter6 = [1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1]';</p><p>  letter7 = [1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1]';

85、</p><p>  letter8 = [1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1]';</p><p>  letter9 = [1 1 1 1 1 0 0 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 0 1 1 1 1 1]';</p><p>  X=[

86、letter0,letter1,letter2,letter3,letter4,letter5,letter6,letter7,letter8,letter9];</p><p>  %生成(10×10)的輸出方陣Y</p><p>  Y = eye(10) </p><p>  5.2.6 繪制數(shù)字字符圖像的MATLAB函數(shù)文件</p>

87、<p>  function plotcharsz(c)</p><p>  x1 = [-0.5 -0.5 +0.5 +0.5 -0.5];</p><p>  y1 = [-0.5 +0.5 +0.5 -0.5 -0.5];</p><p>  x2 = [x1 +0.5 +0.5 -0.5];</p><p>  y2 =

88、[y1 +0.5 -0.5 +0.5];</p><p>  newplot; %繪制新圖形</p><p>  axis([-1.5 6.5 -0.5 7.5]); %坐標(biāo)比例控制,即x軸范圍為[-1.5,6.5],y軸范圍為[-0.5,7.5]</p><p>  axis('equal') %將圖形的x,y坐標(biāo)軸的單位刻度設(shè)置為相等<

89、;/p><p>  axis off </p><p>  hold on %保持當(dāng)前圖形及軸系的所有特性</p><p>  for i=1:length(c)</p><p>  x = rem(i-1,4)+.5;</p><p>  y = 5-floor((i-1)/4)+1.5;</p>&l

90、t;p>  plot(x2*c(i)+x,y2*c(i)+y); %繪制數(shù)字字符圖形</p><p><b>  end</b></p><p>  hold off %解除hold on函數(shù)</p><p>  5.2.7 數(shù)字字符識(shí)別測(cè)試仿真程序</p><p>  用訓(xùn)練好的BP網(wǎng)絡(luò)仿真識(shí)別帶有噪聲的數(shù)字

91、“9”,其仿真識(shí)別程序如下:</p><p>  noisyJ=X(:,10)+randn(28,1)*0.3; %設(shè)置帶有噪聲的數(shù)字字符“9”的輸入信號(hào)</p><p>  subplot(121) %繪圖區(qū)域分割為1行2列,本圖畫在第1列位置處</p><p>  plotcharsz(noisyJ); %調(diào)用plotcharsz函數(shù)文件繪制帶有噪聲的數(shù)字

92、字符“9”的圖像</p><p>  A2=sim(net,noisyJ); %利用訓(xùn)練好的網(wǎng)絡(luò)仿真求輸出信號(hào)</p><p>  A2=compet(A2); %確定輸出信號(hào)向量的10個(gè)分量中有一個(gè)元素為1,其余元素為0</p><p>  answer=find(compet(A2)==1); %求出仿真輸出信號(hào)在輸出目標(biāo)信號(hào)方陣中的位置(即第幾列)<

93、;/p><p>  subplot(122) %繪圖區(qū)域分割為1行2列,本圖繪制在第2列位置處</p><p>  plotcharsz(X(:,answer)); %調(diào)用plotcharsz函數(shù)文件繪制仿真后所得數(shù)字字符圖像</p><p>  數(shù)字字符識(shí)別系統(tǒng)程序運(yùn)行后,識(shí)別結(jié)果如圖5-5所示:</p><p>  圖5-5 識(shí)別數(shù)字字母

94、“9”</p><p><b>  6 結(jié)論和展望</b></p><p>  本文在對(duì)BP神經(jīng)網(wǎng)絡(luò)進(jìn)行深入分析的基礎(chǔ)上,通過(guò)實(shí)驗(yàn)探索了BP神經(jīng)網(wǎng)絡(luò)用于數(shù)字識(shí)別的可行性和有效性。MATLAB實(shí)驗(yàn)結(jié)果表明,基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別系統(tǒng)能夠有效地完成識(shí)別任務(wù)??梢灶A(yù)見,在科技高度發(fā)展的未來(lái),神經(jīng)網(wǎng)絡(luò)將會(huì)被運(yùn)用的越來(lái)越廣泛。</p><p><

95、;b>  參考文獻(xiàn)</b></p><p>  [1]黨建武.神經(jīng)網(wǎng)絡(luò)技術(shù)及應(yīng)用[M].北京: 中國(guó)鐵道出版, 2000,7.</p><p>  [2]Simon Haykin. Neural networks a comprehensive foundation[M]2nd ed.北京: 清華大學(xué)出版, 2001,10.</p><p>  [

96、3]張德豐.MATLAB神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,2009,1.</p><p>  [4]樓順天,施陽(yáng).基于MATLAB的系統(tǒng)分析與設(shè)計(jì)-神經(jīng)網(wǎng)絡(luò)[M] .西安:西安電子科技大學(xué)出版社,1998,9.</p><p>  [5]聞新,周露,王丹力,熊曉英.MATLAB神經(jīng)網(wǎng)絡(luò)應(yīng)用設(shè)計(jì)[M] .北京:科學(xué)出版社,2000,9.</p><p> 

97、 [6]張寶偉,聞新,李翔,周露.MATLAB神經(jīng)網(wǎng)絡(luò)仿真與應(yīng)用[M].北京:科學(xué)出版社,2003,7.</p><p>  [7]甘俊英,張有為.基于BP神經(jīng)網(wǎng)絡(luò)的人臉識(shí)別[J].系統(tǒng)工程與電子技術(shù),2003,25(1).</p><p>  [8]周忠海,張奚寧,張濤,泮利.BP神經(jīng)網(wǎng)絡(luò)及其在圖像壓縮中的應(yīng)用[J].中國(guó)水運(yùn)(理論版),2006,4(6).</p><

98、;p>  [9]郭榮艷,胡雪惠. BP神經(jīng)網(wǎng)絡(luò)在車牌字符識(shí)別中的應(yīng)用研究[J].計(jì)算機(jī)仿真,2010,9,27(9).</p><p>  [10]馮必波.BP 神經(jīng)網(wǎng)絡(luò)在教學(xué)質(zhì)量評(píng)價(jià)體系中的應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2010,1,38(4).</p><p>  [11] 林康紅,施惠昌,盧強(qiáng). 基于神經(jīng)網(wǎng)絡(luò)的傳感器非線性誤差校正[J].傳感器技術(shù),2002,21(1).<

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論