999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PSO算法與Dropout的改進CNN算法

2019-04-02 10:07:52王金哲王澤儒王紅梅
長春工業(yè)大學學報 2019年1期

王金哲, 王澤儒, 王紅梅

(長春工業(yè)大學 計算機科學與工程學院, 吉林 長春 130012)

0 引 言

近年來,伴隨著互聯(lián)網(wǎng)技術的飛速發(fā)展,人工智能已經(jīng)應用到生活的不同方面,其中自然語言處理、機器人學、人臉識別、人工神經(jīng)網(wǎng)絡、圖像理解和智能搜索等是目前人工智能領域的研究熱點。由于卷積神經(jīng)網(wǎng)絡(CNN)可以很好地應用于這些領域,因此,針對CNN性能的改進成為許多學者關注的焦點[1]。CNN通過局部感知與參數(shù)共享,有效降低網(wǎng)絡復雜度。該設計在針對圖像識別、變形、扭曲、傾斜等變形形式具有較高的適應性和優(yōu)越性[2],通過將圖像直接輸入,避免了特征提取和圖像重建等過程。因而CNN在語音識別、圖像分析和文本分類等很多問題中表現(xiàn)出色,而且在很多具體的領域得到了普及應用。

CNN結構特點如下:

1)CNN包含卷積層、池化層、全連接層這三層基本網(wǎng)絡結構,卷積層運算后,池化層開始進行,兩者是交替進行計算的,同時將特征提取和分類過程相互結合在一起,有效地簡化了傳統(tǒng)算法中特征提取的步驟;

2)CNN使用局部連接,單個的神經(jīng)元僅僅和一小部分神經(jīng)元相連,通過權重共享機制,可以有效地減少訓練權重的數(shù)目,一定程度上防止過擬合問題;

3)多層感知器包括輸入層、隱含層和輸出層這三個重要層,多層感知器對于圖像平移、縮放、扭曲有良好的魯棒性。

改進CNN算法[3]通過使用GPU來提升運算速度,但在CPU與GPU之間數(shù)據(jù)切換和進程的調(diào)度可能會出現(xiàn)進程中斷的情況;文獻[4]對于原有CNN訓練時間較長和過擬合等問題提出基于免疫系統(tǒng)改進CNN網(wǎng)絡,但是,這種改進在數(shù)據(jù)集測試僅有81.6%識別率;文獻[5]對MLP-CNN這一經(jīng)典模型進行改進,通過使用梯度下降算法和增加神經(jīng)元特征數(shù)等來提高模型性能,但是這種改進會出現(xiàn)誤差收斂緩慢的情況;文獻[6]提出在CNN中加入波爾茲曼機制,并進行圖像分類,該方法提升了圖像分類的準確率,但是對系統(tǒng)內(nèi)存要求比較高;文獻[7]對正則化策略進行微調(diào),以偵聽卷積的濾波器和非線性激活函數(shù),將會在一定程度上使得訓練的時間有所增加;文獻[8]在CNN中引入了雙線性插值,可以對圖像進行預測和分類,不過針對圖片集過擬合現(xiàn)象沒有提出切實可行的方案。

CNN算法一般存在以下問題[9]:

1) CNN采用梯度下降算法,在反向傳播中的調(diào)節(jié)網(wǎng)絡連接權重的過程中,誤差將會緩慢下降,網(wǎng)絡的收斂速度會受到不小的影響;

2)Sigmoid激活函數(shù)使原來在較大范圍內(nèi)變化的輸入數(shù)據(jù)映射到[0,1]內(nèi)輸出,在數(shù)據(jù)集的規(guī)模逐漸增大時,參數(shù)不易得到很好的訓練,網(wǎng)絡權重不能及時更新,從而減緩收斂的速度;

3)CNN中常采用的weight decay方法與提前停止的方式緩解過擬合問題,不過解決過擬合現(xiàn)象的能力會隨著學習層數(shù)目的增多逐漸下降。針對上述問題,為了可以讓誤差反傳方法具有可靠的的理論意義和重要的實用價值,采用PSO算法進行優(yōu)化,提高CNN收斂速度,同時基于Dropout的改進CNN算法在很大程度上能夠減少過擬合現(xiàn)象的發(fā)生。

1 相關理論

1.1 粒子群算法(PSO算法)[10]

PSO是一種比較經(jīng)典的群體優(yōu)化算法,它通過模仿鳥群行為來找尋最優(yōu)值。PSO算法中每個求解問題的解都作為多維搜尋空間的一個粒子,設定適應值函數(shù),根據(jù)單個粒子自身獲得的最優(yōu)解,以及整體群簇所找尋到的最優(yōu)值,通過不停地改變各粒子的位置和速度,最后通過迭代獲得最優(yōu)解。PSO算法具有搜索速度快、算法易實現(xiàn)、精度較高等特點。基本PSO公式如下:

c2·rand()·(pgj-xij) (1)

1.2卷積神經(jīng)網(wǎng)絡(CNN)

CNN一般由輸入層、卷積層、激勵層、池化層、全連接層和輸出層組成。它通過卷積運算和降采樣等方法實現(xiàn)對有用信息的提取[11]。

輸入層,將所要用到的數(shù)據(jù)或者圖像進行輸入,為方便卷積層運算,需要對輸入數(shù)據(jù)做預處理。

卷積層,卷積層的卷積核主要對輸入信息進行特征提取。

激勵層,激活函數(shù)主要對運算的結果進行平滑處理,同時激活函數(shù)可以對網(wǎng)絡稀疏化,清除冗余數(shù)據(jù),保留數(shù)據(jù)主要特征。

池化層,整理卷積層輸出信息,減少網(wǎng)絡計算量,另外對特征進行壓縮,提取更為重要的特征,防止過擬合現(xiàn)象。

全連接層,通過特征變換,將有用信息進行整合,對提取結果進行分類和預測等處理。

輸出層,將前面運算的所得結果進行輸出處理。

2 改進著眼點

2.1 PSO算法在反向傳播的改進

2.1.1 CNN 算法前向傳播

首先CNN 進行前向傳播,包含卷積和池化操作,對于卷積層的計算:

(3)

式中:Mj----輸入特征圖集;

f()----激活函數(shù),使用Sigmoid函數(shù);

卷積層與池化層進行交替計算,卷積層之后是池化層,對于池化層的計算為:

(4)

輸出層得到結果前,在n層的卷積神經(jīng)中,作為輸入樣本,用fn表示各層池化的激活函數(shù),w(n)表示每個層的連接權重,這個過程的計算可以表示為:

y=fn(…(f2(f1(x·w1)w2))…)wn(5)

計算出前向傳播的結果,和已給出的養(yǎng)殖的標簽值作誤差計算,誤差函數(shù)表示為:

(6)

式中:N----CNN輸入圖像訓練樣本數(shù);

C----網(wǎng)絡輸出層神經(jīng)元數(shù);

yji----第i個樣本的第j個輸出節(jié)點的實際輸出值。

2.1.2 CNN算法的后向傳播

CNN算法的后向傳播是為了在計算期望輸出和實際輸出的誤差后,將需要運算的參數(shù)作為PSO算法的粒子,利用式(6)獲得粒子的局部最優(yōu)Pbest和全局最優(yōu)值Gbest,然后使用式(1)和式(2)來更新粒子。迭代運算后,更新后的粒子是CNN權值,再對CNN網(wǎng)絡重新進行前向傳播,直至誤差閾值收斂到最小范圍之內(nèi),然后停止算法。

算法的實現(xiàn)過程如下:

輸入:m(粒子個數(shù)),c1(加速常數(shù)),c2(加速常數(shù)),w(慣性權重),x(粒子的位置),v(粒子的速度)。

輸出:cw[](優(yōu)化后的權值)。

1)對于群體內(nèi)的每一個粒子,在CNN前向傳播中使用式(5)計算,再由式(6)計算誤差。

2)如果已經(jīng)達到誤差閾值的小值,停止算法,如果沒有收斂,則執(zhí)行式(1)與式(2)對粒子進行更新:

①將更新的粒子的信息傳回CNN中,同時更新需要訓練的權值,再次進行前向傳播誤差計算;

②回到2)。

2.2 CNN算法設計

2.2.1 CNN結構設計

構建的9層CNN模型如圖1所示。

圖1 神經(jīng)網(wǎng)絡模型設計

圖1由輸入層、5個由卷積層和池化層構成的隱含層、全連接層、Dropout層和輸出層組成。在這個新模型中,為了改善過擬合問題,將Dropout層添加到全連接層的后面,通過概率p摒棄神經(jīng)元結點。

2.2.2 基于Dropout防止過擬合問題

為了提升網(wǎng)絡的范化能力,將會在CNN網(wǎng)絡中增加Dropout層,在網(wǎng)絡的訓練過程中,對于神經(jīng)網(wǎng)絡中任意的一個神經(jīng)元,它都是使用相同的概率p將其從網(wǎng)絡中臨時拋棄,從而減小了網(wǎng)絡的大小,其公式為:

(7)

式中:pa----樣本a生成1的概率;

Ba----第i類神經(jīng)元中屬于樣本a的數(shù)量。

文中所提出的改進CNN結構,具體算法如下:

輸入:訓練集,測試集;

輸出:識別結果。

1)對神經(jīng)網(wǎng)絡濾波器進行訓練,同時初始化濾波器尺寸像素為P1*P2;

2)對圖片集進行訓練,將訓練集中的圖片經(jīng)過處理,轉換成尺寸大小一致的圖片,同時把圖片讀入到數(shù)據(jù)矩陣P中;

4)使用式(4)中所給的公式對第一層卷積特征矩陣P(1)進行計算;

5)通過調(diào)用PSO算法,來對權值wi進行更新,從而獲得特征矩陣P(2);

6)通過4)與5)進行第二次卷積計算,這樣會得到一個新的特征矩陣P(3);

7)將特征矩陣P(3)作為一個列向量神經(jīng)元,輸入到全連接層,而后將這個輸入乘以權重矩陣w,然后添加偏置,對其運用激活函數(shù),從而獲得特征向量b1;

8)將全連接層得到的結果作為Dropout層的輸入,通過式(7)運算獲得神經(jīng)元在Dropout層中的輸出概率,得到特征向量b2;

9)將8)得到的特征向量b2作為輸出層的輸入,通過輸出層Softmax分類器進行分類,最后輸出識別結果。

3 實驗與分析

3.1 測試環(huán)境

為了評估所改進算法的性能,在ubuntu16.04的操作系統(tǒng)中采用Python3語言編程來實現(xiàn)文中所提出PD-CNN算法。測試平臺為6臺相同配置的電腦,配置為:AMD10CPU@2.5 GHz,GPU為AMD Radeon HD 8670M+AMD Radeon HD 8610G,8.00 GB內(nèi)存。文中使用的測試數(shù)據(jù)集包括MNIST手寫體數(shù)據(jù)集與HCL200書寫漢字數(shù)據(jù)集。實驗次數(shù)為10次。

3.2 比較算法

文中改進算法和WCNN算法、MLP-CNN算法及SVM-ELM算法進行比較。其中WCNN算法為最近鄰規(guī)則的神經(jīng)網(wǎng)絡模型。為了實現(xiàn)對輸入的處理,使用了多個卷積層和池化層,并在連接層和輸出結果之間建立了映射關系,最后使用聚類算法對特征分類。算法MLP-CNN主要是增加網(wǎng)絡特征數(shù)和使用梯度下降算法進行優(yōu)化,來提高網(wǎng)絡模型的識別能力。SVM-ELM是基于支持向量機的優(yōu)化算法,可以減少隱層節(jié)點數(shù),通過SVM優(yōu)化每個結點的線性決策函數(shù)。以上3個算法都是比較經(jīng)典的CNN改進算法,通過與以上3個CNN改進算法進行測試比較,可以有效地說明文中提出的改進算法在性能上有很大的提高。

3.3 測試結果與分析

針對MNIST訓練數(shù)據(jù)集運行10次,在不同數(shù)據(jù)規(guī)模下各算法的識別結果如圖2所示。

圖2 各算法針對MNIST數(shù)據(jù)集的識別結果

由圖2可知,PD-CNN算法對于不同的數(shù)據(jù)規(guī)模識別率高于SVM-ELM、MLP-CNN與WCNN算法。數(shù)據(jù)規(guī)模的增長,使得MLP-CNN算法對圖片的識別率影響較大,識別性能波動幅度增加。當數(shù)據(jù)集的規(guī)模小于等于3.6×104時,隨著數(shù)據(jù)規(guī)模的增大,WCNN算法與PD-CNN算法識別率呈上升趨勢,但是,當數(shù)據(jù)規(guī)模大于3.6×104時,識別率有下降趨勢,隨著數(shù)據(jù)集的增大,WCNN算法與MLP-CNN算法識別率波動大于PD-CNN算法,說明了PD-CNN算法具有較好的魯棒性。

對每個測試數(shù)據(jù)集運行10次,在最小識別率RM、最大識別率RX、平均識別率R與運行時間t進行比較算法性能結果統(tǒng)計。

算法性能統(tǒng)計結果見表1。

表1 算法性能統(tǒng)計結果

通過觀察表1可知,在數(shù)據(jù)集MNIST上,相比較于WCNN、MLP-CNN和SVM-ELM算法,PD-CNN算法在最小識別率RM、最大識別率RX與平均識別率R上最高,表明了文中改進算法的可行性以及正確性。使用PSO算法在梯度下降中訓練CNN,在識別精度與收斂速度高于常規(guī)的訓練方法,通過在模型上添加一層Dropout層,防止可能出現(xiàn)的過擬合問題,同時可以使得CNN的正確率得到較大的提升。最后在運行時間上與另外三個CNN改進算法進行比較,可以看到PD-CNN算法時間小于三種算法的時間,說明PSO算法在反向傳播中提高了收斂速度。

4 結 語

針對CNN算法的收斂速度較慢、過擬合等問題,將PSO算法中需要訓練的參數(shù)作為粒子進行優(yōu)化,將更新的參數(shù)用于CNN算法的前向傳播,調(diào)整網(wǎng)絡連接權矩陣迭代,直到誤差收斂,停止算法。同時設計新的神經(jīng)網(wǎng)絡模型,將一層Dropout層添加到輸出層與全連接層之間,用于緩解過擬合風險,在識別率上得到了不小的提升,同時具有良好的魯棒性。最后,通過與經(jīng)典改進CNN算法WCNN、MLPCNN和SVM-ELM算法在數(shù)據(jù)集MNIST與HCL200進行實驗比較,PD-CNN算法在識別率、收斂速度均高于另外三個算法,證明了改進算法的正確性。

主站蜘蛛池模板: 国产视频一二三区| 中文国产成人精品久久一| 97精品久久久大香线焦| 国产一区三区二区中文在线| 自拍欧美亚洲| 国产玖玖视频| 国产美女主播一级成人毛片| 凹凸精品免费精品视频| 97成人在线视频| 国产欧美在线| 国产精品永久久久久| 精品国产电影久久九九| 四虎综合网| 国产第一页屁屁影院| www.亚洲色图.com| 亚洲男人天堂网址| 国产精品自拍露脸视频| 18禁影院亚洲专区| 1024国产在线| 亚洲国产清纯| 麻豆国产精品视频| 经典三级久久| 亚洲国产欧美中日韩成人综合视频| 中国国产一级毛片| 在线观看国产精品第一区免费 | 国产欧美精品一区二区 | 久久久久免费精品国产| 国产色婷婷视频在线观看| 青草91视频免费观看| 福利小视频在线播放| 又大又硬又爽免费视频| 国产欧美日韩视频一区二区三区| 日本一区高清| 免费人成又黄又爽的视频网站| 国产亚洲欧美日韩在线一区二区三区| 试看120秒男女啪啪免费| 91外围女在线观看| 欧美亚洲一区二区三区导航| 伊人91视频| 国产在线高清一级毛片| 22sihu国产精品视频影视资讯| аⅴ资源中文在线天堂| 亚洲天堂久久| AV熟女乱| 女人毛片a级大学毛片免费| 亚洲丝袜第一页| 欧美一区二区三区香蕉视| 天天综合网色| 国产91丝袜在线观看| 日韩小视频在线播放| 久久96热在精品国产高清| 免费毛片视频| 中文字幕无码电影| 国产精品久久久精品三级| 中文无码精品a∨在线观看| 91精品国产自产91精品资源| 亚洲黄网在线| 久久公开视频| 成人91在线| 亚洲综合天堂网| 色偷偷综合网| 欧美一级在线看| 伊人色综合久久天天| a级毛片免费网站| 国模在线视频一区二区三区| 国产无套粉嫩白浆| 国产欧美日韩91| 国产一级在线观看www色 | 免费aa毛片| 亚洲一区网站| 国产中文在线亚洲精品官网| 伊人久久久久久久| 亚洲最黄视频| 欧洲亚洲一区| 午夜毛片免费观看视频 | 婷婷在线网站| 黄色污网站在线观看| 天堂成人在线| 久草青青在线视频| 欧美黄网在线| 婷婷综合亚洲| 国产高潮流白浆视频|