程俊華 曾國(guó)輝 魯敦科 黃勃
摘 要:針對(duì)深度卷積神經(jīng)網(wǎng)絡(luò)(CNN)中的過擬合問題,提出一種基于Dropout改進(jìn)CNN的模型預(yù)測(cè)平均方法。首先,訓(xùn)練階段在池化層引入Dropout,使得池化層單元值具有稀疏性;然后,在測(cè)試階段將訓(xùn)練時(shí)池化層Dropout選擇單元值的概率與池化區(qū)域各單元值所占概率相乘作為雙重概率;最后,將提出的雙重概率加權(quán)的模型平均方法應(yīng)用于測(cè)試階段,使得訓(xùn)練階段池化層Dropout的稀疏效果能夠更好地反映到測(cè)試階段池化層上,從而使測(cè)試錯(cuò)誤率達(dá)到與訓(xùn)練的較低錯(cuò)誤率相近的結(jié)果。在給定大小的網(wǎng)絡(luò)中所提方法在MNIST和CIFAR-10數(shù)據(jù)集上的測(cè)試錯(cuò)誤率分別為0.31%和11.23%。實(shí)驗(yàn)結(jié)果表明:僅考慮池化層對(duì)結(jié)果的影響,所提方法與Prob.weighted pooling和Stochastic Pooling方法相比具有更低的錯(cuò)誤率,表明池化層Dropout使得模型更具泛化性,并且池化單元值對(duì)于模型泛化具有一定幫助,能夠更有效避免過擬合。
關(guān)鍵詞:深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò);Dropout正則化;過擬合;模型平均
中圖分類號(hào): TP183(人工神經(jīng)網(wǎng)絡(luò)與計(jì)算)
文獻(xiàn)標(biāo)志碼:A
Abstract: In order to effectively solve the overfitting problem in deep Convolutional Neural Network (CNN), a model prediction averaging method based on Dropout improved CNN was proposed. Firstly, Dropout was employed in the pooling layers to sparse the unit values of pooling layers in the training phase. Then, in the testing phase, the probability of selecting unit value according to pooling layer Dropout was multiplied by the probability of each unit value in the pooling area as a double probability. Finally, the proposed double-probability weighted model averaging method was applied to the testing phase, so that the sparse effect of the pooling layer Dropout in the training phase was able to be better reflected on the pooling layer in the testing phase, thus achieving the low testing error as training result. The testing error rates of the proposed method in the given size network on MNIST and CIFAR-10 data sets were 0.31% and 11.23% respectively. The experimental results show that the improved method has lower error rate than Prob. weighted pooling and Stochastic Pooling method with only the impact of pooling layer on the results considered. It can be seen that the pooling layer Dropout makes the model more generalized and the pooling unit value is helpful for model generalization and can effectively avoid overfitting.
Key words: deep learning; Convolution Neural Network (CNN); Dropout regularization; overfitting; model averaging
0 引言
近年來,隨著人工智能的快速發(fā)展,深度學(xué)習(xí)在各領(lǐng)域的應(yīng)用越來越廣泛[1-4 ]。其中,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)在機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺等領(lǐng)域擁有的出色表現(xiàn),使得它被應(yīng)用到更多問題的解決方案中。卷積神經(jīng)網(wǎng)絡(luò)的優(yōu)勢(shì)在于其能夠自動(dòng)提取特征,從而能夠避免人工提取特征的困難和麻煩,但不可避免地會(huì)出現(xiàn)由于數(shù)據(jù)集較小或者訓(xùn)練次數(shù)過多等原因出現(xiàn)的過度學(xué)習(xí)現(xiàn)象,又稱“過擬合”。對(duì)于分類任務(wù),過擬合問題體現(xiàn)在在訓(xùn)練集上錯(cuò)誤率較低,而在測(cè)試集上錯(cuò)誤率卻偏高。過度學(xué)習(xí)將訓(xùn)練集某類數(shù)據(jù)的特殊特征當(dāng)作該類數(shù)據(jù)的一般特征進(jìn)行學(xué)習(xí),使得學(xué)習(xí)的模型在測(cè)試集數(shù)據(jù)上進(jìn)行測(cè)試時(shí),將該類數(shù)據(jù)的特殊特征當(dāng)作一般特征進(jìn)行判斷,不能夠?qū)?shù)據(jù)進(jìn)行準(zhǔn)確分類,錯(cuò)誤率較高。這是監(jiān)督學(xué)習(xí)中一個(gè)普遍存在且相當(dāng)棘手的問題,本文致力于對(duì)卷積神經(jīng)網(wǎng)絡(luò)的過擬合問題提供解決方法。
目前,很多科研機(jī)構(gòu)和高校對(duì)于有效解決過擬合問題均進(jìn)行了深入研究。Dropout方法最早由Hinton等[5]提出用于解決過擬合問題。在訓(xùn)練時(shí)加入Dropout,一部分激活單元隨機(jī)受到抑制,每一次訓(xùn)練的網(wǎng)絡(luò)結(jié)構(gòu)均不同,訓(xùn)練結(jié)果可看作是不同神經(jīng)元子集的模型的組合,而在測(cè)試時(shí)保留所有神經(jīng)元,采用模型平均的方法來對(duì)訓(xùn)練過的所有可能模型求取平均近似值。Dropout剛開始被用于卷積神經(jīng)網(wǎng)絡(luò)的全連接層,全連接層占據(jù)卷積神經(jīng)網(wǎng)絡(luò)的大部分參數(shù),對(duì)于小型網(wǎng)絡(luò)表現(xiàn)較好,但在稍復(fù)雜的中大型網(wǎng)絡(luò)上,其他層的參數(shù)增多,表現(xiàn)不明顯。之后,Srivastava等[6]又嘗試在卷積層使用Dropout,但卷積層本身具有的參數(shù)共享和稀疏連接特性減少了參數(shù)的數(shù)量,從而降低了卷積層過擬合的可能性,因此Dropout在卷積層的優(yōu)勢(shì)并不明顯。隨后,Goodfellow等[7]采用一組線性函數(shù)中取最大值作為神經(jīng)單元激活值的方法,該方法基于Dropout建立了Maxout network。然而文獻(xiàn)[7]并沒有通過Dropout對(duì)修正對(duì)應(yīng)模型進(jìn)行訓(xùn)練,而是直接將其與Maxout network進(jìn)行比較,因此,對(duì)于是什么因素對(duì)取得的顯著成果產(chǎn)生的影響并不清楚。Wan等[8] 將Dropout用于抑制平坦層神經(jīng)元之間連接權(quán)重,提出了DropConnect方法,提升了特征學(xué)習(xí)的細(xì)膩度,從而更有效避免過擬合;但該方法只適用于全連接層,對(duì)于其他層具有局限性。Lambert等[9]提出了異方差Dropout,使Dropout方差成為特權(quán)信息函數(shù),顯著提高了學(xué)習(xí)過程的樣本效率,但對(duì)于過擬合并沒有顯著影響。Zeiler 等[10] 提出了隨機(jī)池化,從池化方法入手來進(jìn)一步解決過擬合問題。與最大值池化選取池化區(qū)域最具代表性特征作為池化激活值不同,隨機(jī)池化在池化區(qū)域內(nèi)隨機(jī)選取池化激活值,在測(cè)試時(shí)以池化區(qū)域內(nèi)各單元值概率加權(quán)到激活值上進(jìn)行模型平均,該方法類似于最大值池化Dropout方法,但最大值池化Dropout方法可能訓(xùn)練的模型數(shù)量更多,抑制過擬合效果更好。Wu等[11]在最大值池化中引入Dropout,隨機(jī)抑制池化值再利用最大值池化選取池化激活值,在測(cè)試階段采用Prob.weighted pooling模型預(yù)測(cè)平均方法作用于池化層得到模型平均,但Prob.weighted pooling方法僅考慮了池化激活值選擇概率。
受文獻(xiàn)[10-11]研究啟發(fā),本文針對(duì)最大值池化Dropout解決過擬合問題給出了一種更優(yōu)的模型平均方法,訓(xùn)練時(shí)在池化層采用最大值池化Dropout,在測(cè)試階段模型平均時(shí),與Prob.weighted pooling方法相比將單元值在池化區(qū)域中的概率考慮在內(nèi),結(jié)合池化激活值選擇概率共同加權(quán)到被選擇單元值的激活值上,得到遍歷所有可能模型近似平均的池化結(jié)果。相比于隨機(jī)池化,訓(xùn)練模型更具泛化性。實(shí)驗(yàn)結(jié)果表明,在同樣網(wǎng)絡(luò)結(jié)構(gòu)的卷積神經(jīng)網(wǎng)絡(luò)下,本文提出的方法具有更好的抑制過擬合效果。
1 傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
一般的CNN由卷積層、池化層和全連接層組成。卷積層和池化層交替連接用于特征提取,全連接層最后用于對(duì)提取特征進(jìn)行分類。CNN的局部連接和權(quán)值共享等特點(diǎn),使其比一般神經(jīng)網(wǎng)絡(luò)具有更少的參數(shù),具有平移不變性、特征降維以及強(qiáng)大的表征能力等優(yōu)點(diǎn),并且由于神經(jīng)元之間的稀疏連接,使得其具有良好的泛化性。
1.1 卷積層
在卷積層中輸入圖像與相應(yīng)的卷積核進(jìn)行卷積操作,用于對(duì)圖像進(jìn)行特征提取,一個(gè)二維步長(zhǎng)為1、無填充卷積操作過程可如圖1所示。
假設(shè)yli為輸入數(shù)據(jù)在第l層中的第i(i=1,2,…,nl)個(gè)feature map,yli與相應(yīng)的卷積核Wl+1,k卷積得到的卷積矩陣求和加上相對(duì)應(yīng)的偏置bl+1,k,即可得到第l+1層的輸入zl+1,k,經(jīng)過非線性激活函數(shù)處理即可得到數(shù)據(jù)在第l+1層的第k個(gè)輸出矩陣,即yl+1,k。其過程可表述為:
1.2 池化層
在卷積神經(jīng)網(wǎng)絡(luò)中,卷積層之后一般為池化層,池化層對(duì)卷積層得到的特征進(jìn)行下采樣,從而減小計(jì)算量,降低網(wǎng)絡(luò)復(fù)雜度,提高計(jì)算效率。通常的池化操作可表示為:
其中:alm, j表示Rlm區(qū)域內(nèi)第j(j=1,2,…,n)個(gè)池化單元值,l為第l層;n表示Rlm區(qū)域池化單元的數(shù)目;pool(·)表示池化操作。通常采用的池化方法為平均池化和最大值池化,平均池化方法在卷積神經(jīng)網(wǎng)絡(luò)剛提出時(shí)應(yīng)用較多;最大值池化因其能夠?qū)⒆罹叽硇缘奶卣鞅A舻奶攸c(diǎn),受到廣泛應(yīng)用,以2×2池化大小為例,最大值池化過程如圖2所示。
2 改進(jìn)CNN結(jié)構(gòu)
本文在CNN池化層引入Dropout,在訓(xùn)練階段池化層引入Dropout,在測(cè)試時(shí)使用雙重概率加權(quán)模型平均來代替采樣,將訓(xùn)練時(shí)池化層Dropout的可能訓(xùn)練的所有模型進(jìn)行有效的平均,實(shí)現(xiàn)模型預(yù)測(cè)。
2.1 訓(xùn)練階段最大值池化Dropout
在池化層引入Dropout后,在進(jìn)行池化操作之前,首先進(jìn)行掩模處理,使得池化區(qū)域中的部分神經(jīng)元激活值以一定概率被置為0,在保留下來的神經(jīng)元中再進(jìn)行最大值池化操作,其過程可表示為:
cx其中:rlm表示一個(gè)二進(jìn)制掩模,服從Bernoulli分布;lm表示對(duì)輸入alm掩模處理后的feature map, lm輸入到最大值池化中得到池化結(jié)果,即為最大值池化Dropout方法。該池化方法具有隨機(jī)性,以2×2池化為例,如圖3所示。
2.2 測(cè)試階段雙重概率加權(quán)模型平均
訓(xùn)練時(shí)在池化層引入Dropout,則池化單元值被隨機(jī)抑制,但在測(cè)試時(shí),整個(gè)網(wǎng)絡(luò)包括所有池化層的單元值都應(yīng)該參與網(wǎng)絡(luò)運(yùn)作,因此需要通過模型平均的方式將訓(xùn)練時(shí)池化層引入Dropout的效果體現(xiàn)到測(cè)試階段。文獻(xiàn)[11]在測(cè)試階段采用的模型平均方法利用式(7)得到池化區(qū)域輸出結(jié)果:
本文方法與Prob.weighted pooling相比,除了考慮池化值選擇概率外,還將池化區(qū)域單元值概率考慮在內(nèi),進(jìn)一步保證了測(cè)試階段池化輸出值與訓(xùn)練階段池化單元值的期望值的一致性。如2.1節(jié)所述,本文方法在l層可能訓(xùn)練的模型數(shù)量為(t+1)rs/t。就隨機(jī)池化而言,由于其未使用Dropout,每個(gè)池化區(qū)域只有t種選擇,即其在l層可能訓(xùn)練的模型數(shù)量為trs/t。例如,在第l層,s=32×32,r=96,t=2×2,則隨機(jī)池化方法可能訓(xùn)練的模型數(shù)量為4(1/4)×32×32×96,而本文方法最大值池化Dropout可能訓(xùn)練的模型數(shù)量為5(1/4)×32×32×96。雖然基數(shù)相差較小,但是本文方法可能訓(xùn)練的模型數(shù)量是隨機(jī)池化方法的1.2524576倍,因此本文最大值池化Dropout方法能夠比隨機(jī)池化方法提供更多可能訓(xùn)練的模型,從而能夠?qū)W習(xí)更廣泛的特征,使模型更具泛化性,避免過擬合。
這種雙重概率加權(quán)池化可以理解為模型平均的一種形式,每一個(gè)選擇的索引j對(duì)應(yīng)一個(gè)不同的模型。在訓(xùn)練階段,服從多項(xiàng)式分布進(jìn)行采樣以選擇一個(gè)新的索引,為每一個(gè)訓(xùn)練樣本的每個(gè)表示產(chǎn)生一個(gè)新的模型,可能的模型數(shù)量隨傳入到最大值池化層的單元值數(shù)量呈指數(shù)型增長(zhǎng)。在測(cè)試階段,使用雙重概率加權(quán)池化來代替采樣,可以有效地得到所有這些可能模型的平均值的近似值,而無需實(shí)例化它們。
3 實(shí)驗(yàn)參數(shù)與數(shù)據(jù)集
在經(jīng)過卷積層和全連接層的輸出后需要輸入到激活函數(shù)中進(jìn)行非線性處理使得神經(jīng)元更具表達(dá)性,常用的非線性激活函數(shù)有Tanh函數(shù)、Sigmoid函數(shù)以及Relu函數(shù)[9],前兩者為飽和非線性函數(shù),而Relu函數(shù)為非飽和非線性函數(shù),在達(dá)到相同訓(xùn)練誤差的情況下,非飽和激活函數(shù)要比飽和激活函數(shù)快許多倍,同時(shí)由于Relu函數(shù)的單側(cè)抑制作用,使得網(wǎng)絡(luò)具有稀疏激活性,減少網(wǎng)絡(luò)參數(shù)的相互協(xié)作,能夠更好地學(xué)習(xí)數(shù)據(jù)特征,且能夠避免梯度消失問題,使模型持續(xù)收斂,而不會(huì)像飽和激活函數(shù)那樣導(dǎo)致收斂停滯。本文在卷積層和全連接層均采用Relu函數(shù)作為激活函數(shù),網(wǎng)絡(luò)最后一個(gè)全連接層輸出連接Softmax層,使得網(wǎng)絡(luò)輸出分類結(jié)果,根據(jù)Relu函數(shù)的表達(dá)式,卷積層和全連接層的激活值可表達(dá)為:
網(wǎng)絡(luò)訓(xùn)練使用小批量梯度下降(mini-batch Stochastic Gradient Descent, mini-batch SGD)法,批次大小為100,動(dòng)量為0.9,學(xué)習(xí)率設(shè)置為0.1。使用均值為0、方差為0.01的正態(tài)分布來隨機(jī)初始化權(quán)重,偏置初始化為0,每當(dāng)誤差趨于平緩時(shí)就將學(xué)習(xí)率減小,默認(rèn)保留概率p為0.5。實(shí)驗(yàn)環(huán)境為:操作系統(tǒng)Win 10,處理器Intel core i7 CPU @ 3.00GHz,6個(gè)內(nèi)核12線程,RAM 16GB,GPU NVIDIA GTX 1080ti。實(shí)驗(yàn)采用MNIST、CIFAR-10數(shù)據(jù)集進(jìn)行驗(yàn)證。MNIST、CIFAR-10數(shù)據(jù)集的部分樣本分別如圖4(a)、(b)所示。
4 實(shí)驗(yàn)結(jié)果與分析
4.1 MNIST數(shù)據(jù)集
MNIST數(shù)據(jù)集是計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)領(lǐng)域廣泛使用的基準(zhǔn)數(shù)據(jù)集,可作為方法是否有效的一個(gè)衡量標(biāo)準(zhǔn),其包含60000張訓(xùn)練和10000張測(cè)試樣本,每個(gè)樣本為28×28的灰度圖像,包含0~9中的一個(gè)數(shù)字,在輸入CNN前將樣本歸一化到[0,1]。
在訓(xùn)練階段池化層引入Dropout,測(cè)試階段有與之對(duì)應(yīng)的模型平均方法,本文對(duì)文獻(xiàn)[11]中測(cè)試階段模型預(yù)測(cè)平均方法(Prob.weighted pooling)作出改進(jìn)。將改進(jìn)后的方法與原方法應(yīng)用于同一結(jié)構(gòu)CNN模型1×28×28-12C5-2P2-24C5-2P2-1000N-10N,在兩種方法中均使用全連接層Dropout,可消除全連接層對(duì)于結(jié)果的影響,從而關(guān)注方法在池化層的效果。對(duì)比改進(jìn)前后,在測(cè)試階段池化層上能夠反映訓(xùn)練階段池化層Dropout效果的優(yōu)劣性。圖5所示為使用三種方法在同一結(jié)構(gòu)下訓(xùn)練迭代300次所得模型的測(cè)試錯(cuò)誤率變化曲線。
在圖5中,使用全連接層Dropout錯(cuò)誤率曲線作為參考,可以看出:隨著迭代的不斷進(jìn)行,全連接層Dropout方法在收斂到一定程度時(shí),錯(cuò)誤率不再下降;本文方法與改進(jìn)前Prob.weighted pooling曲線能夠收斂并不斷下降,且本文方法的錯(cuò)誤率基本低于改進(jìn)前方法的錯(cuò)誤率,所以本文方法在測(cè)試階段池化層上能夠更好地反映出訓(xùn)練階段池化層引入Dropout后的效果,能更有效避免過擬合問題。
為了比較本文方法與隨機(jī)池化方法在抑制過擬合性能上的表現(xiàn),在CNN模型1×28×28-12C5-2P2-24C5-2P2-1000N-10N上對(duì)不同保留概率情況下本文方法與隨機(jī)池化方法進(jìn)行實(shí)驗(yàn),對(duì)于最大值池化Dropout訓(xùn)練的模型,在測(cè)試時(shí)僅使用提出的雙重概率加權(quán)的模型平均池化方法。圖6所示為使用隨機(jī)池化和不同保留概率下本文方法迭代300次的錯(cuò)誤率變化曲線。
從圖6可以看出,隨機(jī)池化的測(cè)試錯(cuò)誤率介于本文方法在p=0.7和p=0.9兩者之間,與本文方法(p=0.5)相差較多,p較大時(shí)(p=0.9),本文方法的抑制過擬合性能不如隨機(jī)池化,表明保留概率p與本文方法的性能有較大關(guān)系。這是因?yàn)榧訖?quán)概率受保留概率p的影響,在p較大時(shí)相當(dāng)于大多數(shù)神經(jīng)元都得到保留,Dropout稀疏化效果不明顯,因此不能很好抑制過擬合,錯(cuò)誤率較高。雖然隨機(jī)池化沒有超參數(shù)且不受保留概率p的影響,但具有典型值p(p=0.5)的本文方法在抑制過擬合問題上很大程度優(yōu)于隨機(jī)池化。
訓(xùn)練一個(gè)不同結(jié)構(gòu)模型采用不同的方法和不同保留概率p,只在池化層使用Dropout,以比較不同的p值對(duì)不同方法的影響,實(shí)驗(yàn)在1×28×28-20C5-2P2-40C5-2P2-1000N-10N的網(wǎng)絡(luò)上迭代1000次,圖7給出了測(cè)試階段不同池化方法的錯(cuò)誤率與保留概率p之間的關(guān)系。由圖7可以看出,不同的p值下,本文方法表現(xiàn)較好,且在p=0.5時(shí)的結(jié)果最優(yōu);Max pooling方法在較小的p值下,錯(cuò)誤率比較高,表現(xiàn)較差;Prob.weighted pooling方法和本文方法,在不同p值下的趨勢(shì)呈U型,且本文方法錯(cuò)誤率低于Prob.weighted pooling方法,在p值較大或較小時(shí),Prob.weighted pooling方法和本文方法錯(cuò)誤率均高于隨機(jī)池化(Stochastic Pooling),與圖6內(nèi)容相對(duì)應(yīng),再次驗(yàn)證了圖6所得結(jié)論的正確性。隨著p值的增加,不同方法之間的性能差異越來越小,特殊的情況當(dāng)p=1時(shí),差異將縮減為0。
同樣在1×28×28-20C5-2P2-40C5-2P2-1000N-10N結(jié)構(gòu)上,利用MNIST數(shù)據(jù)集對(duì)使用全連接層Dropout的本文方法與其他方法的錯(cuò)誤率進(jìn)行記錄比較。在不使用Dropout時(shí)的錯(cuò)誤率為0.81%,錯(cuò)誤率最高,因?yàn)槭苓^擬合的影響,在全連接層使用Dropout后的錯(cuò)誤率降為0.56%;文獻(xiàn)[7] 的Maxout+Dropout方法錯(cuò)誤率約為0.45%,文獻(xiàn)[10]的 Stochastic Pooling方法錯(cuò)誤率又降到0.47%,文獻(xiàn)[11]結(jié)合全連接層Dropout的最大值池化Dropout(Prob.weighted pooling)方法錯(cuò)誤率降為0.39%;同樣結(jié)合全連接層Dropout,而本文的方法錯(cuò)誤率約為0.31%,相比于其他方法在過擬合問題上表現(xiàn)要好,表明了本文方法具有更好的抑制作用。
4.2? CIFAR-10數(shù)據(jù)集
CIFAR-10數(shù)據(jù)集[15]是一個(gè)包含10類共60000張自然圖像的數(shù)據(jù)集,其中,訓(xùn)練集包含50000個(gè)樣本,測(cè)試集包含10000個(gè)樣本,每個(gè)樣本為一個(gè)32×32大小的RGB圖像。對(duì)數(shù)據(jù)集中的樣本像素值歸一化在[0,1],并減去每個(gè)圖像在數(shù)據(jù)集上計(jì)算的每個(gè)通道的平均值作為預(yù)處理。
相對(duì)于MNIST數(shù)據(jù)集,CIFAR-10數(shù)據(jù)集在每個(gè)類別中的差異更大,因此使用更深更寬的網(wǎng)絡(luò)結(jié)構(gòu):3×32×32-96C5-3P2-128C3-3P2-256C3-3P2-2000N-2000N-10N,來對(duì)復(fù)雜的非線性關(guān)系進(jìn)行建模,同樣只在池化層使用Dropout,比較在CIFAR-10數(shù)據(jù)集上不同方法取不同保留概率p(p=0.3,p=0.5和p=0.7)的影響。在上述CNN網(wǎng)絡(luò)結(jié)構(gòu)上訓(xùn)練迭代1000次,得到不同池化方法錯(cuò)誤率與保留概率p的關(guān)系如圖8所示。由圖8可以看出,本文方法在不同保留概率p下依然表現(xiàn)最好,在p=0.5時(shí)依舊最優(yōu),并且隨著p的增加不同方法之間的性能差異逐漸縮小。
利用CIFAR-10數(shù)據(jù)集在同一結(jié)構(gòu)的上述CNN模型下,記錄使用全連接層Dropout的本文方法與其他方法的錯(cuò)誤率:在不使用Dropout時(shí),錯(cuò)誤率約為16.50%,在全連接層使用Dropout、文獻(xiàn)[7] 的Maxout+Dropout、文獻(xiàn)[10] 的Stochastic Pooling、文獻(xiàn)[11] 結(jié)合全連接層Dropout的最大池化Dropout(Prob.weighted pooling)、結(jié)合全連接層Dropout的本文方法錯(cuò)誤率分別為14.24%、11.68%、15.14%、11.29%、11.23%,可以看出本文方法在較大型數(shù)據(jù)集上依然具有不錯(cuò)的抑制過擬合表現(xiàn)。
5 結(jié)語
本文利用Dropout,提出了一種雙重概率加權(quán)池化的模型預(yù)測(cè)平均方法,用于解決CNN中的過擬合問題。通過將池化區(qū)域內(nèi)各單元值概率引入到Prob.weighted pooling方法,并探索合適的保留概率p使算法具有更強(qiáng)的泛化性,能夠有效抑制過擬合,從而能夠?qū)y(cè)試階段的錯(cuò)誤率向訓(xùn)練階段靠攏,使得錯(cuò)誤率更低??梢娺x擇池化激活值時(shí),考慮池化值對(duì)整個(gè)池化區(qū)域的影響有助于降低網(wǎng)絡(luò)的錯(cuò)誤率。通過對(duì)本文改進(jìn)的方法與同樣解決過擬合問題的方法進(jìn)行實(shí)驗(yàn)對(duì)比,結(jié)果表明本文所提方法相較于其他已有解決過擬合方法的錯(cuò)誤率更低,且保留概率為0.5時(shí)效果較好,能夠有效降低錯(cuò)誤率,抑制過擬合,應(yīng)用于圖像分類任務(wù)可使識(shí)別率得到提升。但是在引入Dropout機(jī)制后的一個(gè)普遍現(xiàn)象是收斂速度變慢,考慮到不同目標(biāo)函數(shù)優(yōu)化器的收斂速度不同,下一步研究可在本文方法中加入不同目標(biāo)優(yōu)化函數(shù),使得模型訓(xùn)練測(cè)試時(shí)收斂速度更快。
參考文獻(xiàn) (References)
[1] BISHOP C. Pattern Recognition and Machine Learning[M]. Berlin: Springer, 2006: 560-571.
[2] SCHMIDHUBER J. Deep learning in neural networks: an overview[J]. Neural Networks, 2015, 61: 85-117.
[3] LECUN Y, BENGIO Y, HINTON G. Deep learning [J]. Nature, 2015, 521: 436-444.
[4] 周飛燕,金林鵬,董軍.卷積神經(jīng)網(wǎng)絡(luò)研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2017,40(6):1229-1251.(ZHOU F Y, JIN L P, DONG J. Review of convolutional neural network [J]. Chinese Journal of Computers, 2017, 40(6): 1229-1251.)
[5] HINTON G E, SRIVASTAVA N, KRIZHEVSKY A, et al. Improving neural networks by preventing co-adaptation of feature detector [J]. arXiv Preprint, 2012, 2012: arXiv.1207.0580.
Computer Science, 2012, 3(4): 212-223.
[6] SRIVASTAVA N, HINTON G, KRIZHEVSKY A,et al. Dropout: a simple way to prevent neural networks from overfitting [J]. The Journal of Machine Learning Research, 2014, 15(1): 1929-1958.
[7] GOOGFELLOW I, WARDE-FARLEY D, MIRZA M, et al. Maxout networks [C]// Proceedings of the 30th International Conference on Machine Learning. Atlanta, Georgia: JMLR W&CP, 2013: 1319-1327.
[8] WAN L, ZEILER M D, ZHANG S,et al. Regularization of neural networks using dropconnect [C]// Proceeding of the 30th International Conference on Machine Learning. Atlanta, Georgia: JMLR W&CP, 2013: 1058-1066.
[9] LAMBERT J, SENER O, SAVARESE S. Deep learning under privileged information using heteroscedastic dropout [EB/OL]. [2018-08-29]. https://arxiv.org/pdf/1805.11614.pdf.
[10] ZEILER M D, FERGUS R. Stochastic pooling for regularization of deep convolutional neural networks [EB/OL]. [2018-09-17]. https://arxiv.org/pdf/1301.3557.pdf.
[11] WU H, GU X. Towards dropout training for convolutional neural networks [J]. Neural Networks, 2015, 71: 1-10.
[12] LIN M, CHEN Q, YAN S. Network in network [J/OL]. arXiv Preprint, [2018-09-17]. https://arxiv.org/pdf/1312.4400.pdf.
[13] 趙慧珍,劉付顯,李龍躍,等.基于混合maxout單元的卷積神經(jīng)網(wǎng)絡(luò)性能優(yōu)化[J].通信學(xué)報(bào),2017,38(7):105-114.(ZHAO H Z, LIU F X, LI L Y, et al. Improving deep convolutional neural networks with mixed maxout units [J]. Journal on Communications, 2017, 38(7): 105-114.)
[14] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks [C]// Proceedings of the 25th International Conference on Neural Information Processing Systems. New York: Curran Associates Inc., 2012: 1097-1105.
[15] KRIZHEVSKY A. Learning multiple layers of features from tiny images [D]. Toronto: University of Toronto, 2009: 16-22.
[16] AL-SAFFAR A A M, TAO H, TALAB M A. Review of deep convolution neural network in image classification [C]// Proceedings of the 2017 International Conference on Radar, Antenna, Microwave, Electronics, and Telecommunications. Piscataway, NJ: IEEE, 2017: 26-31.
[17] XIE L, WANG J, LIN W, et al. Towards reversal-invariant image representation [J]. International Journal of Computer Vision, 2017, 123 (2): 226-250.
[18] GOODFELLOW I, BENGIO Y, COURVILLE A, et al. Deep Learning [M]. Cambridge, MA: MIT Press, 2016: 11-12.
[19] FENG Y, ZENG S, YANG Y, et al. Study on the optimization of CNN based on image identification [C]// Proceedings of the 17th International Symposium on Distributed Computing and Applications for Business Engineering and Science. Piscataway, NJ: IEEE, 2018: 123-126.