• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      BP神經(jīng)網(wǎng)絡(luò)算法改進(jìn)

      2017-09-13 04:51:05黃尚晴趙志勇孫立波
      科技創(chuàng)新導(dǎo)報(bào) 2017年20期
      關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò)

      黃尚晴+趙志勇+孫立波

      摘 要:BP神經(jīng)網(wǎng)絡(luò)因其理論成熟及泛化能力強(qiáng)而被廣泛的應(yīng)用在不同的領(lǐng)域。盡管如此,其仍然存在著兩大缺陷:其一,收斂速度慢;其二,容易陷入局部極小。特別是在解決大樣本問題時(shí),BP算法的缺陷更加突出。本文首先從樣本訓(xùn)練方法上入手對(duì)BP算法進(jìn)行改進(jìn)從而保證收斂速度,提出一種交叉批量梯度下降算法(Cross - batch gradient descent algorithm,以下簡(jiǎn)稱CBGD)。將改進(jìn)后的算法用于手寫數(shù)字的識(shí)別,相比于普通的BP算法在收斂速度及測(cè)試準(zhǔn)確率上都有明顯的提高。

      關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò) 算法改進(jìn) 交叉梯度下降 手寫體數(shù)字識(shí)別

      中圖分類號(hào):TP273 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2017)07(b)-0146-02

      BP神經(jīng)網(wǎng)絡(luò)中的線性神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)上演化而來的,其一般包含輸入層、隱含層和輸出層。BP學(xué)習(xí)算法是Rumelhrat和Hintond等學(xué)者于1986年提出[1],理論上包含一層隱含層神經(jīng)元的BP網(wǎng)絡(luò)可以逼近任意的函數(shù)[2],而在實(shí)際應(yīng)用中,BP神經(jīng)網(wǎng)絡(luò)的層數(shù)通常是大于或等于3,尤其對(duì)于復(fù)雜的問題,網(wǎng)絡(luò)的層數(shù)都會(huì)滿足這個(gè)條件。自從該算法后期研究主要分為兩大類:其一就是通過變固定的學(xué)習(xí)速率為變化的學(xué)習(xí)速率、增加動(dòng)量因子等方法對(duì)迭代算法本身作出修改;另一方面,就是通過啟發(fā)式算法來實(shí)現(xiàn)對(duì)BP算法收斂性的優(yōu)化,其中包含粒子群算法和蟻群算法等。這些改進(jìn)雖然對(duì)BP算法有了很不錯(cuò)的改善,但是都很少涉及到通過改進(jìn)訓(xùn)練樣本方法來改善收斂性的,只有向國(guó)全等在[3]中提到通過對(duì)樣本訓(xùn)練方法的改進(jìn)來提升BP神經(jīng)網(wǎng)絡(luò)的收斂能力,然而由于其改進(jìn)限于當(dāng)時(shí)的硬件以及算法本身對(duì)樣本數(shù)據(jù)的過多重復(fù)使用,導(dǎo)致對(duì)收斂速度沒有很大得到提高。

      1 BP神經(jīng)網(wǎng)絡(luò)介紹

      BP算法具有自適應(yīng)誤差反向?qū)W習(xí)能力,其將輸入信號(hào)通過輸入層傳輸?shù)捷敵鰧?,再通過誤差函數(shù)反向修正各層神經(jīng)元的權(quán)重及偏置。僅看輸入輸,BP神經(jīng)網(wǎng)絡(luò)相當(dāng)于映射,不同的網(wǎng)絡(luò)代表不同的映射機(jī)制。假設(shè)神經(jīng)網(wǎng)絡(luò)的輸入特征向量為X=(x1,x2,…,xi,…,xl)T,隱含層輸出為Y=(y1,y2,…,yj,…,ym)T,輸出層的輸出為Z=(z1,z2,…,zk,…,zn)T,其中l(wèi),m和n分別是輸入層、隱含層和輸出層神經(jīng)元的個(gè)數(shù)。

      令隱含層第j個(gè)神經(jīng)元到輸入層第i個(gè)神經(jīng)元的權(quán)值為wji,輸出層第k個(gè)神經(jīng)元到隱含層第k個(gè)神經(jīng)元你的權(quán)重為vkj,此外,設(shè)隱含層第j個(gè)神經(jīng)元的偏置為θ1,其對(duì)應(yīng)的激活函數(shù)為f1(x),而輸出層第k個(gè)神經(jīng)元的偏置為θ2,其對(duì)應(yīng)的激活函數(shù)為f2(x),由此可得出隱含層和輸出層的表達(dá)式為。為了便于本文的討論,選擇隱含層的激活函數(shù)為S型函數(shù)f1(x)=1/(1+exp(-x));選擇輸出層的激活函數(shù)為f2(x)=x。若該神經(jīng)網(wǎng)絡(luò)的期望輸出為T={t1,t2,…,ti,…,tk},則針對(duì)每個(gè)訓(xùn)練樣本選擇如下誤差函數(shù):,其中,由于BP網(wǎng)絡(luò)對(duì)系統(tǒng)的仿真不可能一步到位,所以涉及到一個(gè)調(diào)整的過程,主要就是通過調(diào)整BP網(wǎng)絡(luò)的權(quán)值和偏置來實(shí)現(xiàn)。根據(jù)式E可知,誤差函數(shù)值要盡量趨近于0也就是取最小值。所以BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練的過程就是為以E為目標(biāo)函數(shù)的優(yōu)化問題。

      為了找到最優(yōu)解,給出梯度下降算法[4]:,此處給出一層BP網(wǎng)絡(luò)的權(quán)值和偏置的迭代公式,根據(jù)設(shè)定的網(wǎng)絡(luò)層數(shù)也可以求出其他參數(shù)。根據(jù)梯度下降可得出針對(duì)每個(gè)樣本訓(xùn)練完后權(quán)值和偏置調(diào)整的步長(zhǎng)。

      2 樣本訓(xùn)練方法的改進(jìn)

      在實(shí)際應(yīng)用中,往往會(huì)涉及到多個(gè)樣本,所以使得所有訓(xùn)練樣本的誤差函數(shù)和最小才能實(shí)現(xiàn)對(duì)目標(biāo)系統(tǒng)更加逼近的仿真。為實(shí)現(xiàn)這一目標(biāo),目前主流的研究思路主要包含三種,一種是批量梯度下降法、隨機(jī)梯度下降算法和隨機(jī)批量梯度下降算法。這些算法雖然都對(duì)BP算法的收斂性有所改善,但是都沒有考慮樣本之間的重復(fù)性與其內(nèi)在的聯(lián)系所造成的訓(xùn)練過程的繁瑣。

      綜合以上考慮,本文作以下改進(jìn)。對(duì)于給定輸入樣本為X=(X1,X2,…,XN),其中N為輸入樣本個(gè)數(shù),對(duì)應(yīng)的期望輸出為T=(T1,T2,…,TN),而相應(yīng)的BP網(wǎng)絡(luò)輸出為Z=(Z1,Z2,…,ZN);首先將整個(gè)輸入樣本集X分成C1,C2,…,Cc組,但需要滿足以下條件:,。根據(jù)上述條件,可知任意相鄰兩個(gè)樣本的分組之間的交集個(gè)數(shù)可變。很顯然,各個(gè)樣本組交集個(gè)數(shù)越多,訓(xùn)練量越大,從而增大樣本的訓(xùn)練時(shí)間;但是如果另一方面來看,當(dāng)樣本組Cp和Cq的交集越多時(shí),訓(xùn)練樣本組Cp得到的最優(yōu)權(quán)值在很大程度上對(duì)樣本組Cq來說也是最優(yōu)的,所以整體訓(xùn)練下來將會(huì)減少訓(xùn)練樣本的時(shí)間。因此,目的是找到一個(gè)較好的分組,用于訓(xùn)練整個(gè)樣本。因此給出如下選擇相鄰樣本組樣本交集的方案:,,1≤。min_batch為相鄰的訓(xùn)練樣本組數(shù)量的最小值,一般人為給出。

      不失一般性,假設(shè)采集的數(shù)據(jù)樣本是相互獨(dú)立的。下面給出確定樣本集分組數(shù)量c的一種方案:,其中的[·]表示對(duì)方括號(hào)內(nèi)的值進(jìn)行取整。為了提高神經(jīng)網(wǎng)絡(luò)檢測(cè)的可靠性,需要同時(shí)對(duì)樣本進(jìn)行不同數(shù)量的多次分組,并分別對(duì)其進(jìn)行訓(xùn)練,也就是最后訓(xùn)練好的權(quán)值和偏置有多組,再分別對(duì)所需要仿真的系統(tǒng)進(jìn)行檢測(cè),從多組網(wǎng)絡(luò)中選擇最好的網(wǎng)絡(luò)作為測(cè)試網(wǎng)絡(luò)。

      3 改進(jìn)算法在手寫數(shù)字識(shí)別上的應(yīng)用

      本文將利用MNIST手寫數(shù)據(jù)庫對(duì)算法進(jìn)行試驗(yàn),目前已經(jīng)有很多學(xué)者利用MNIST完成了自己的算法的研究[4]。數(shù)據(jù)集中共包含手寫體數(shù)字0到9的訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù),本文選擇訓(xùn)練樣本集中50000個(gè)樣本用于訓(xùn)練,并選擇測(cè)試樣本集中的10000個(gè)樣本用于測(cè)試。由于其中每個(gè)樣本數(shù)據(jù)是32×32的矩陣,其要轉(zhuǎn)化成784維特征向量,并根據(jù)上一節(jié)中提到的樣本分組方案。選擇min_batch=20,s=5,計(jì)算出c=[50000/15]+1=3334。對(duì)樣本編號(hào)成X1, X2,…,X50000,可將這50000個(gè)樣本分為以下幾組:,,…,。endprint

      除了最后一個(gè)分組只包含5個(gè)樣本外,其他每個(gè)分組都包含20個(gè)樣本,而且相鄰兩個(gè)樣本組中都具有5個(gè)相同的樣本。根據(jù)圖1所提到的樣本訓(xùn)練方法可知,首先訓(xùn)練樣本集C1,然后將訓(xùn)練好的權(quán)值和偏置保留,并用于訓(xùn)練接下來的樣本集C2,并以此類推。本算法用Python實(shí)現(xiàn),只是分兩種訓(xùn)練方式:一種是將50000個(gè)訓(xùn)練樣本均勻的分成2500個(gè)組,然后依次進(jìn)行訓(xùn)練;另外就是用前文介紹的方法來訓(xùn)練。最后得到對(duì)比結(jié)果如下:

      圖1給出迭代第78次到298次的結(jié)果,可以清晰的看出CGDB在收斂效果上的優(yōu)越性。因?yàn)闃颖居?xùn)練出來的效果僅僅只能反應(yīng)模型對(duì)訓(xùn)練樣本的表達(dá)能力,但是不能說明模型對(duì)整個(gè)分類問題能力。為了驗(yàn)證模型的泛化能力,用上述訓(xùn)練好的模型,去訓(xùn)練數(shù)據(jù)集中10000個(gè)測(cè)試集樣本。得出最終的測(cè)試結(jié)果如圖2所示。從圖2的變化趨勢(shì)來看,從測(cè)試結(jié)果來看,通過使用CBGD方法進(jìn)行樣本訓(xùn)練,在收斂速度上明顯比普通的BGD方法要快,而且在收斂效果上,前者訓(xùn)練誤差一直比后者的訓(xùn)練誤差小,可知相比較而言,本文的方法在樣本的表達(dá)上效果更佳。再通過樣本測(cè)試結(jié)果來看,CBGD也比普通的CBGD表現(xiàn)得更好。

      參考文獻(xiàn)

      [1] Williams D,Hinton G E.Learning representations by back-propagating errors[J]. Nature,1986,323:533-536.

      [2] White H.Connectionist nonparametric regression:Multilayer feedforward networks can learn arbitrary mappings[J].Neural Networks,1990,3(90):535-549.

      [3] composition using ACO-BP neural network[J]. Thermochimica Acta,2007,454(1):64-68.

      [4] 向國(guó)全,董道珍.BP模型中的激勵(lì)函數(shù)和改進(jìn)的網(wǎng)絡(luò)訓(xùn)練法[J].計(jì)算機(jī)研究與發(fā)展,1997(2):113-117.

      [5] 李望晨.BP神經(jīng)網(wǎng)絡(luò)改進(jìn)及其在手寫數(shù)字識(shí)別中的應(yīng)用[D].哈爾濱工業(yè)大學(xué),2006.endprint

      猜你喜歡
      BP神經(jīng)網(wǎng)絡(luò)
      基于神經(jīng)網(wǎng)絡(luò)的北京市房?jī)r(jià)預(yù)測(cè)研究
      商情(2016年43期)2016-12-23 14:23:13
      一種基于OpenCV的車牌識(shí)別方法
      基于遺傳算法—BP神經(jīng)網(wǎng)絡(luò)的乳腺腫瘤輔助診斷模型
      一種基于改進(jìn)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)T/R組件溫度的方法
      基于BP神經(jīng)網(wǎng)絡(luò)的光通信系統(tǒng)故障診斷
      科技視界(2016年26期)2016-12-17 17:57:49
      提高BP神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)速率的算法研究
      考試周刊(2016年21期)2016-12-16 11:02:03
      就bp神經(jīng)網(wǎng)絡(luò)銀行選址模型的相關(guān)研究
      基于DEA—GA—BP的建設(shè)工程評(píng)標(biāo)方法研究
      基于BP神經(jīng)網(wǎng)絡(luò)的旅行社發(fā)展方向研究
      商情(2016年39期)2016-11-21 09:30:36
      復(fù)雜背景下的手勢(shì)識(shí)別方法
      瑞昌市| 遵义县| 张家口市| 陈巴尔虎旗| 巴南区| 阿拉善盟| 鄄城县| 吴江市| 贵阳市| 襄垣县| 绥化市| 仙游县| 开封县| 钟山县| 五指山市| 筠连县| 石楼县| 巢湖市| 凤山县| 孝昌县| 沂水县| 金坛市| 青阳县| 长春市| 神池县| 长治县| 巴林左旗| 尉犁县| 鄂伦春自治旗| 遂昌县| 台北县| 巴东县| 晋州市| 林芝县| 菏泽市| 鹤庆县| 龙南县| 邢台县| 剑阁县| 隆尧县| 永德县|