亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種基于BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別新方法

        2012-11-24 02:17:32湯傳玲石文瑩趙小蘭

        劉 煬,湯傳玲,王 靜,石文瑩,趙小蘭

        (合肥工業(yè)大學(xué),安徽 合肥 230009)

        神經(jīng)網(wǎng)絡(luò)是一種由簡單單元組成的具有適應(yīng)性的廣泛并行互連的網(wǎng)絡(luò),其組織能夠?qū)φ鎸?shí)世界物體做模擬生物神經(jīng)系統(tǒng)的交互反應(yīng)。神經(jīng)網(wǎng)絡(luò)已經(jīng)成為一門比較重要的交叉性學(xué)科,被廣泛應(yīng)用于智能控制、模式識(shí)別、輔助決策、信號(hào)處理和計(jì)算機(jī)視覺等領(lǐng)域。BP(Back Propagation)神經(jīng)網(wǎng)絡(luò)在各門學(xué)科領(lǐng)域中都有非常重要的實(shí)用價(jià)值,也是在模式識(shí)別中應(yīng)用最廣泛的一種人工神經(jīng)網(wǎng)絡(luò),它具有很強(qiáng)的自學(xué)習(xí)、自適應(yīng)能力以及非線性逼近能力。由于基于誤差梯度下降的BP算法易于陷入局部極小點(diǎn)而不收斂,目前,已經(jīng)有很多學(xué)者對(duì)BP算法進(jìn)行了研究,并針對(duì)它的這些缺陷提出了一些改進(jìn)方法。

        1 基本BP算法

        1.1 BP算法原理

        BP網(wǎng)絡(luò)是采用誤差反向傳播算法的多層前饋網(wǎng)絡(luò),網(wǎng)絡(luò)的輸入和輸出是一種非線性映射關(guān)系,其中,神經(jīng)元的傳遞函數(shù)為Sigmod函數(shù)。

        BP網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則是采用梯度下降算法。在網(wǎng)絡(luò)學(xué)習(xí)的過程中,將輸出層節(jié)點(diǎn)的期望輸出(目標(biāo)輸出)與實(shí)際輸出(計(jì)算輸出)的均方誤差一一逐層向輸入層進(jìn)行反向傳播,再分配給各連接節(jié)點(diǎn),并且計(jì)算出各連接節(jié)點(diǎn)的參考誤差。在這個(gè)基礎(chǔ)上可以調(diào)整各連接權(quán)值,使所獲得的網(wǎng)絡(luò)的期望輸出與實(shí)際輸出的均方誤差達(dá)到最小。

        將第j個(gè)樣本輸入到網(wǎng)絡(luò)時(shí),得到均方誤差為:

        其中,ei,j表示輸入第 j個(gè)樣本時(shí),輸出層第 i個(gè)節(jié)點(diǎn)的期望輸出值 yi,j與實(shí)際輸出值間 的 差 值 , 即 ei,j=yi,j-;n0為輸出層的節(jié)點(diǎn)數(shù)。

        連接權(quán)的調(diào)整主要有成批處理和逐個(gè)處理兩種方法。成批處理是指一次性將所有訓(xùn)練樣本輸入,并計(jì)算總誤差,然后調(diào)整連接權(quán)。逐個(gè)處理是指每輸入一個(gè)樣本就調(diào)整一次連接權(quán)值。本文采用逐個(gè)處理的方法,并根據(jù)誤差的負(fù)梯度來修改連接權(quán)值。

        BP網(wǎng)絡(luò)的學(xué)習(xí)規(guī)則為:

        設(shè)BP網(wǎng)絡(luò)有1個(gè)隱含層,由神經(jīng)元的輸入與輸出關(guān)系得:

        BP網(wǎng)絡(luò)可以存儲(chǔ)和學(xué)習(xí)大量的輸入—輸出模式映射關(guān)系,且無需事先揭示和描述這種映射關(guān)系的數(shù)學(xué)方程。在人工神經(jīng)網(wǎng)絡(luò)的實(shí)際應(yīng)用中,很多神經(jīng)網(wǎng)絡(luò)模型就是采用BP網(wǎng)絡(luò)及其變化形式的。

        BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層、隱層和輸出層3層,如圖1所示。

        圖1 BP神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)

        1.2 BP算法的程序?qū)崿F(xiàn)

        BP算法的程序?qū)崿F(xiàn)的具體步驟如下:

        (1)網(wǎng)絡(luò)初始化。設(shè)計(jì)網(wǎng)絡(luò)連接結(jié)構(gòu),規(guī)定輸入變量和輸出變量個(gè)數(shù)、隱含的層數(shù)和各層神經(jīng)元的個(gè)數(shù),對(duì)W(位于隱層到輸出層之間)、權(quán)值矩陣V(位于輸入層到隱層之間)賦隨機(jī)數(shù),將訓(xùn)練次數(shù)計(jì)數(shù)器q和樣本模式計(jì)數(shù) p置為 1,學(xué)習(xí)率 η設(shè)為 0~1內(nèi)的小數(shù),誤差 E置0,網(wǎng)絡(luò)訓(xùn)練后達(dá)到的精度Emax設(shè)為一個(gè)正的小數(shù)。

        (2)輸入訓(xùn)練樣本對(duì),利用現(xiàn)有的權(quán)值來計(jì)算網(wǎng)絡(luò)中各神經(jīng)元的實(shí)際輸出。用當(dāng)前樣本xp、dp對(duì)d(期望輸出向量)、向量數(shù)組 X(輸入向量)賦值,用式(5)和式(6)計(jì)算O(輸出層輸出向量)和 Y(隱層輸出向量)中各分量。

        (5)各層權(quán)值間的調(diào)整。 應(yīng)用式(9)和式(10)計(jì)算V、W中的各個(gè)分量。

        (6)檢驗(yàn)是否對(duì)所有的樣本完成了一次輪訓(xùn)。若p<P,計(jì)數(shù)器 p、q 加 1,返回步驟(2);否則,進(jìn)行步驟(7)。

        (7)檢驗(yàn)網(wǎng)絡(luò)總誤差是否達(dá)到精度要求。如當(dāng)用ERME作為網(wǎng)絡(luò)的總誤差時(shí),若滿足 ERME<Emin,則訓(xùn)練結(jié)束;否則,E 置 0,p 置 1,返回步驟(2)。

        2 BP算法的缺陷及其改進(jìn)

        2.1 BP算法的缺陷

        3層前饋網(wǎng)絡(luò)已經(jīng)得到越來越廣泛的應(yīng)用,因?yàn)樗幸粋€(gè)非凡優(yōu)勢(shì),即將BP 算法用于具有非線性轉(zhuǎn)移函數(shù)的3層前饋網(wǎng)絡(luò),可以以任意精度逼近任何非線性函數(shù)。但是標(biāo)準(zhǔn)的BP算法在應(yīng)用中還有一些內(nèi)在的缺陷:

        (1)誤差下降緩慢、迭代次數(shù)多、調(diào)整時(shí)間長,影響收斂的速度,會(huì)造成收斂速度慢,如果加快收斂速度則易于產(chǎn)生振蕩。

        (2)存在局部極小問題,但是卻得不到全局最優(yōu)。訓(xùn)練時(shí)會(huì)因陷入某個(gè)局部極小點(diǎn)而不能自拔,使得訓(xùn)練很難收斂在給定的誤差內(nèi)。

        2.2 BP算法的改進(jìn)

        盡管標(biāo)準(zhǔn)的BP算法原理簡單、實(shí)現(xiàn)方便,但由于訓(xùn)練過程中使用的是一個(gè)較小的常數(shù),因此存在局部極小的點(diǎn)收斂速度慢問題。對(duì)于復(fù)雜的問題,訓(xùn)練過程則需要迭代幾千甚至幾萬次才能將結(jié)果收斂到期望的精度。并且訓(xùn)練中的穩(wěn)定性又要求學(xué)習(xí)率很小,因此梯度下降法會(huì)使得訓(xùn)練很慢。因此,標(biāo)準(zhǔn)的BP網(wǎng)絡(luò)在很多方面表現(xiàn)出了不實(shí)用性,特別是對(duì)實(shí)時(shí)性很強(qiáng)的系統(tǒng)。鑒于傳統(tǒng)的BP算法存在著以上的問題,國內(nèi)外學(xué)者已經(jīng)提出不少有效的改進(jìn)方法,主要有兩類:一類是基于標(biāo)準(zhǔn)梯度下降(如附加動(dòng)量法、自適應(yīng)學(xué)習(xí)率法等)進(jìn)行改進(jìn);另一類是基于標(biāo)準(zhǔn)數(shù)值優(yōu)化(如變步長法、牛頓法以及Levenberg-Marquardt算法等)進(jìn)行改進(jìn)。

        2.2.1 基于變步長法改進(jìn)

        BP 算法之所以收斂速度慢,一個(gè)主要原因是學(xué)習(xí)速率η選取不當(dāng)。η值選取過大,在算法收斂接近目標(biāo)時(shí)易產(chǎn)生震蕩,無法收斂到正確解;而η值選得過小,又會(huì)使整體學(xué)習(xí)速率變慢。因此,可以結(jié)合濾波器的思想設(shè)計(jì)一種自適應(yīng)學(xué)習(xí)速率η。

        假如第t-1次計(jì)算的誤差為 εt-1,第t次計(jì)算的學(xué)習(xí)速率為 ηt,第 t+1 次計(jì)算的學(xué)習(xí)速率為 ηt+1,誤差為 εt??梢远x β=sgn(εt-εt-1),則 ηt+1=ηte-λβ。 其中,λ 為自適應(yīng)系數(shù),取值為 0.01~0.2;而 β實(shí)質(zhì)上起到了一個(gè)濾波器的作用,導(dǎo)致誤差減小的學(xué)習(xí)速率得以加強(qiáng),反之則會(huì)被抑制。

        2.2.2 基于牛頓法改進(jìn)

        由于梯度法在搜索過程中收斂速度較慢,牛頓法在這方面有所改進(jìn),它不但利用了準(zhǔn)則函數(shù)在搜索點(diǎn)的梯度,還利用了它的二次導(dǎo)數(shù)。牛頓法的原理是求ε的二次近似的駐點(diǎn),它用一個(gè)二次函數(shù)逼近ε,然后再求其駐點(diǎn)。若該函數(shù)為有強(qiáng)極小點(diǎn)的二次函數(shù),它就能實(shí)現(xiàn)一步極小化。如果ε不是二次函數(shù),則牛頓法一般就不能在一步內(nèi)收斂。實(shí)際上根本無法確定它是否收斂,因?yàn)檫@取決于具體的函數(shù)和初始點(diǎn)。其主要改進(jìn)是改變更新規(guī)則為:

        2.2.3 基于Lebenberg-Marquardt算法改進(jìn)

        BP網(wǎng)絡(luò)的訓(xùn)練實(shí)質(zhì)是非線性目標(biāo)函數(shù)的優(yōu)化問題,基于數(shù)值優(yōu)化的LM算法不但利用了目標(biāo)函數(shù)的一階導(dǎo)數(shù)信息,還利用了目標(biāo)函數(shù)的二階導(dǎo)數(shù)信息。LM算法的迭代公式為:

        其中,I為單位矩陣,μ為阻尼因子,J是包含網(wǎng)絡(luò)誤差對(duì)權(quán)值和閾值一階導(dǎo)數(shù)的Jacobin矩陣。

        2.3 已提出的較好的改進(jìn)方法

        [1]中提出了將附加動(dòng)量法和自適應(yīng)學(xué)習(xí)率調(diào)整法兩種策略結(jié)合起來的一種方法。這兩種方法相結(jié)合既可有效地抑制網(wǎng)絡(luò)陷入局部極小,又有利于縮短學(xué)習(xí)時(shí)間。但上述兩種改進(jìn)方法都是在標(biāo)準(zhǔn)梯度下降法基礎(chǔ)上發(fā)展起來的,它們只利用了目標(biāo)函數(shù)對(duì)網(wǎng)絡(luò)權(quán)值和閾值的一階導(dǎo)數(shù)信息。因此,當(dāng)用于較復(fù)雜的問題時(shí),仍存在收斂速度不夠快的問題。

        基于數(shù)值優(yōu)化的LM算法是根據(jù)迭代的結(jié)果動(dòng)態(tài)地調(diào)整阻尼因子,即動(dòng)態(tài)地調(diào)整迭代的收斂方向,可使每次的迭代誤差函數(shù)值都有所下降。它是梯度下降法和牛頓法的結(jié)合,收斂速度較快。但LM算法在計(jì)算過程中會(huì)產(chǎn)生大量的中間結(jié)果矩陣,因此,需要較大的內(nèi)存空間,比較適宜中型網(wǎng)絡(luò)使用。

        可以考慮設(shè)計(jì)一個(gè)新的數(shù)字識(shí)別系統(tǒng),以變步長法和牛頓法來改進(jìn)BP算法,使其能夠適應(yīng)對(duì)數(shù)字樣本組成的樣本集的訓(xùn)練。

        3 基于BP網(wǎng)絡(luò)對(duì)數(shù)字識(shí)別系統(tǒng)的設(shè)計(jì)

        本文采用逐像素特征提取方法提取數(shù)字樣本的特征向量。設(shè)定歸一化后的圖像形成一個(gè)8×16的像素矩陣,依次取每列的元素轉(zhuǎn)化為128×1的列矩陣,即數(shù)字字符的特征向量。這樣把最后提取到的樣本特征向量送到數(shù)字識(shí)別模塊中,經(jīng)過神經(jīng)網(wǎng)絡(luò)樣本訓(xùn)練并記錄下網(wǎng)絡(luò)參數(shù),最后對(duì)識(shí)別數(shù)據(jù)進(jìn)行識(shí)別并給出結(jié)果。BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別系統(tǒng)數(shù)據(jù)處理流程如圖2所示。

        圖2 BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別系統(tǒng)數(shù)據(jù)處理流程圖

        3.1 確定輸入層神經(jīng)元節(jié)點(diǎn)數(shù)

        BP神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元節(jié)點(diǎn)數(shù)就是圖像預(yù)處理后所輸出的特征的個(gè)數(shù)。采用8×16的歸一化處理以及逐像素特征提取方法,利用每個(gè)點(diǎn)的像素值作為特征,設(shè)定每個(gè)字符的標(biāo)準(zhǔn)歸一化的寬度為 8,高度為 16,那么每個(gè)字符就有8×16=128個(gè)特征像素點(diǎn),這樣對(duì)于每個(gè)輸入的樣本,就有128個(gè)特征,由此可以確定輸入層的節(jié)點(diǎn)數(shù)為128。

        3.2 確定隱含層神經(jīng)元節(jié)點(diǎn)數(shù)

        相對(duì)而言,隱含層神經(jīng)元節(jié)點(diǎn)數(shù)沒有特別的要求,隱含層神經(jīng)元的數(shù)目越多,BP 網(wǎng)絡(luò)也就越精確, 訓(xùn)練時(shí)間也就會(huì)加長。然而,需要注意的是,隱含層節(jié)點(diǎn)不宜選取太多,否則會(huì)造成識(shí)別率的急劇下降,同時(shí)還會(huì)降低網(wǎng)絡(luò)的抗噪聲能力。到目前為止,隱含層的神經(jīng)元的設(shè)定要不斷地試驗(yàn)才有可能得到最佳的數(shù)目,在這里可以設(shè)定隱含層神經(jīng)元的個(gè)數(shù)為10。

        3.3 確定輸出層神經(jīng)元節(jié)點(diǎn)數(shù)

        對(duì)數(shù)字字符,不管它的訓(xùn)練樣本中有多少種字體,有多少個(gè)訓(xùn)練樣本,也只有10個(gè)數(shù)需要編碼,只需設(shè)定輸出神經(jīng)元個(gè)數(shù)為4就可滿足2m≥N的條件。其中,m為輸出層神經(jīng)元個(gè)數(shù),N是需要編碼的訓(xùn)練樣本個(gè)數(shù)。

        由于采用S函數(shù)做激活函數(shù),它的輸出不可能達(dá)到0或1,只能是無限接近??梢栽诰幋a時(shí)做一個(gè)簡單處理,將 0改為 0.1,1改為 0.9.

        根據(jù)要求采用10個(gè)節(jié)點(diǎn)確定輸入層的節(jié)點(diǎn)數(shù),編碼方案為:

        4 實(shí)驗(yàn)結(jié)果與分析

        在隱節(jié)點(diǎn)數(shù)一定的情況下,為了獲得較好的泛化能力,存在一個(gè)最佳次數(shù)t0,這時(shí)會(huì)使得測(cè)試數(shù)據(jù)的均方誤差最小。因此,可隨意設(shè)置最小均方誤差,本文設(shè)為0.000 1,設(shè)最大訓(xùn)練次數(shù)為16 000,這樣就不會(huì)出現(xiàn)訓(xùn)練不足的情況,使其可以達(dá)到最小的均方誤差。

        4.1 改進(jìn)前后的BP神經(jīng)網(wǎng)絡(luò)的性能比較

        將參考文獻(xiàn)[1]中提出的方法、基本BP算法與本文提出的方法進(jìn)行實(shí)驗(yàn)數(shù)據(jù)比較,收斂速度比較如表1所示。

        表1 3種算法比較

        從表1可以看出,標(biāo)準(zhǔn)BP算法的收斂速度很慢,使用參考文獻(xiàn)[1]中的方法可以加快網(wǎng)絡(luò)收斂速度,而使用本文提出的新方法,速度比這兩種方法更快。但由于本文提出的方法是兩種基于數(shù)值優(yōu)化方法的結(jié)合,它比參考文獻(xiàn)[1]算法需要更大的內(nèi)存空間,但需要的內(nèi)存空間少于Lebenberg-Marquardt算法。因此,對(duì)于一個(gè)給定的問題,采用何種BP算法,取決于問題的復(fù)雜程度、訓(xùn)練樣本數(shù)、權(quán)值以及閾值數(shù)目等各種因素。

        參考文獻(xiàn)

        [1]王婷,江文輝,肖南峰.基于改進(jìn)BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別[J].電子設(shè)計(jì)工程,2011,19(3):108-112.

        [2]萬紅,馮向榮,呂明相.改進(jìn)BP算法在識(shí)別含噪聲字符中 的 應(yīng) 用 [J]. 微 計(jì) 算 機(jī) 信 息 ,2008,24 (10):207-208,190.

        [3]趙長青,李歐迅,黃書童.BP神經(jīng)網(wǎng)絡(luò)數(shù)字識(shí)別系統(tǒng)的設(shè)計(jì)方法 [J].桂林航天工業(yè)高等??茖W(xué)校學(xué)報(bào),2010(3):292-294.

        [4]施少敏,馬彥恒,陳建泗.基于 BP神經(jīng)網(wǎng)絡(luò)的數(shù)字識(shí)別方法[J].網(wǎng)絡(luò)與信息技術(shù),2006,25(10):40-41.

        一本色道无码道dvd在线观看| 国产91成人自拍视频| 男女视频网站在线观看| 妺妺跟我一起洗澡没忍住| 中文字幕免费人成在线网站 | 麻豆视频在线观看免费在线观看| 日本人妻伦理在线播放| 性做久久久久久免费观看| 国产成人精品一区二区三区免费| 久久精品一品道久久精品9 | 中文字幕亚洲无线码高清| 福利视频在线一区二区三区| 伊人久久大香线蕉午夜av| 欧美两根一起进3p做受视频| 国产精品久久久久久久成人午夜| 亚洲国产AⅤ精品一区二区久| 国产三级在线观看不卡| 亚洲在线视频免费视频| 四虎国产精品免费久久| 久久精品国产亚洲av电影| 果冻蜜桃传媒在线观看| 国产成人精品一区二三区孕妇| 国产精品无码无片在线观看3d| 免费a级毛片无码a| 国产呦系列视频网站在线观看| 亚洲1区第2区第3区在线播放| 久久99热狠狠色精品一区| 日韩无码视频淫乱| 人妻色中文字幕免费视频| 日韩精品中文一区二区三区在线| 夜夜躁狠狠躁2021| 精品一二区| 久久亚洲宅男天堂网址| 无码国内精品人妻少妇蜜桃视频| 久久久www成人免费无遮挡大片| 久久亚洲国产中v天仙www| 亚洲精品乱码久久麻豆| 亚洲综合欧美色五月俺也去| 亚洲av无码av吞精久久| 国产日韩午夜视频在线观看| 久久久精品国产性黑人|