尹 征,唐春暉,張軒雄
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上?!?00093)
基于改進(jìn)型稀疏自動(dòng)編碼器的圖像識(shí)別
尹征,唐春暉,張軒雄
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上海200093)
摘要傳統(tǒng)的稀疏自動(dòng)編碼器不具備平移不變性,同時(shí)對(duì)非高斯噪聲較為敏感。為增加網(wǎng)絡(luò)平移不變的特性,借鑒卷積神經(jīng)網(wǎng)絡(luò)的相關(guān)理論,通過(guò)對(duì)原始的像素塊進(jìn)行卷積運(yùn)算以達(dá)到上述目的;而為了提高對(duì)非高斯噪聲的魯棒性,自動(dòng)編碼器的代價(jià)函數(shù)由均方誤差改為了最大相關(guān)熵準(zhǔn)則。通過(guò)在MNIST和CIFAR-10數(shù)據(jù)集上進(jìn)行試驗(yàn),結(jié)果證明,改進(jìn)后的方法較傳統(tǒng)的自動(dòng)編碼器具有更好地識(shí)別效果,識(shí)別率提高了2%~6%。
關(guān)鍵詞深度學(xué)習(xí);自動(dòng)編碼器;卷積神經(jīng)網(wǎng)絡(luò);最大相關(guān)熵
Image Recognition Based on Improved Sparse Auto-encoder
YIN Zheng,TANG Chunhui,ZHANG Xuanxiong
(School of Optical-Electrical and Computer Engineering,University of Shanghai for
Science and Technology,Shanghai 200093,China)
AbstractThe traditional sparse auto-encoder lacks invariant translation and is sensitive to non-Gauss noise.A method convolving the original pixel block is proposed to increase the network invariance with the mean square error (MSE) replaced by the maximum correntropy criterion (MCC) in cost function to improve the anti-noise ability.The proposed method is evaluated using the MINIST and CIFAR-10 datasets.Experimental results show that the proposed approach improves the recognition rate by 2% in the condition of non-noise and by 6% in the noise condition.
Keywordsdeep learning;auto-encoder;convolutional neural network;maximum correntropy criterion
由于深度學(xué)習(xí)能夠具有模擬人類(lèi)大腦結(jié)構(gòu)的功能,通過(guò)組合底層特征形成更加抽象有效的特征表達(dá)來(lái)完成對(duì)圖像的整體描述[1]。深度學(xué)習(xí)可看成是神經(jīng)網(wǎng)絡(luò)發(fā)展的產(chǎn)物,傳統(tǒng)的多層神經(jīng)網(wǎng)絡(luò)在采用深度架構(gòu)時(shí),因采用BP訓(xùn)練算法,系統(tǒng)容易陷入局部最優(yōu)。而深度學(xué)習(xí)有效地克服了這種弊端,已成功應(yīng)用于圖像識(shí)別、語(yǔ)音識(shí)別、人臉識(shí)別等領(lǐng)域。
自動(dòng)編碼器(Auto-Encoder)是典型的深度學(xué)習(xí)框架之一,由Bourlard在文獻(xiàn)[2]中被提出,但主要的應(yīng)用和發(fā)展是在2006年Hinton在文獻(xiàn)[3]中提出了一種解決深度信念網(wǎng)(Deep Belief Network,DBN)不易訓(xùn)練問(wèn)題的方法--貪婪逐層訓(xùn)練算法,該種算法通過(guò)無(wú)監(jiān)督學(xué)習(xí)對(duì)網(wǎng)絡(luò)進(jìn)行逐層訓(xùn)練,與傳統(tǒng)的BP算法訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)相比,主要有3大優(yōu)勢(shì):(1)無(wú)需大量含有標(biāo)簽的數(shù)據(jù)集,降低了網(wǎng)絡(luò)對(duì)數(shù)據(jù)集的要求;(2)加快了神經(jīng)網(wǎng)絡(luò)的收斂速度;(3)通過(guò)無(wú)監(jiān)督學(xué)習(xí),系統(tǒng)在進(jìn)行微調(diào)之前,網(wǎng)絡(luò)參數(shù)已設(shè)定在最優(yōu)參數(shù)附近,解決了傳統(tǒng)神經(jīng)網(wǎng)絡(luò)易陷入局部最優(yōu)的問(wèn)題。在文獻(xiàn)[4]中將這種算法應(yīng)用到自動(dòng)編碼器中,解決了多層自動(dòng)編碼器—堆疊自動(dòng)編碼器(Stacked Auto-Encoder,SAE)不易訓(xùn)練的問(wèn)題。
1基本理論
傳統(tǒng)的自動(dòng)編碼器分為3層,分別為輸入層、隱層和輸出層。
編碼器通過(guò)非線性映射函數(shù)將輸入向量x以一定的方式映射到隱層y,由此y便成為了輸入x的另一種表現(xiàn)形式。編碼器的原理為
y=fθ(x)=s(Wx+b)
(1)
s(t)=1/(1+exp(-t))
(2)
其中,x∈[0,1]d,y∈[0,1]d,W是d×d′的權(quán)重矩陣;b為輸入層偏置向量;θ={W,b},s(·)為Sigmoid函數(shù),如式(2)所示。
解碼器負(fù)責(zé)將隱層形成的編碼y映射到輸出層z,輸出層具有和輸入層相同的單元數(shù),映射關(guān)系如下所示
z=gθ′(y)=s(W′+y+b′)
(3)
其中,z∈[0,1]d,W′是隱層到輸出層的權(quán)重矩陣;在數(shù)值上與W的轉(zhuǎn)置相同;b′為隱層的偏置向量;θ′={W′,b′},將參數(shù)合并為θ={θ,θ′}={W,b,b′}。
文中通過(guò)訓(xùn)練來(lái)調(diào)節(jié)參數(shù)θ,使得輸入與輸出之間重構(gòu)誤差函數(shù)—代價(jià)函數(shù)最小。傳統(tǒng)自動(dòng)編碼器采用的代價(jià)函數(shù)為MSE
(4)
其中,m為樣本的數(shù)量;xi為輸入向量;zi為輸出向量;θ為網(wǎng)絡(luò)中所有參數(shù)的集合。
但為解決自動(dòng)編碼器中過(guò)擬合的問(wèn)題,通常會(huì)在代價(jià)函數(shù)中增加一個(gè)權(quán)重衰減項(xiàng),權(quán)重衰減項(xiàng)相當(dāng)于對(duì)網(wǎng)絡(luò)的權(quán)重矩陣做了一定的限制,代價(jià)函數(shù)變?yōu)?/p>
(5)
其中,λ決定了權(quán)重衰減項(xiàng)在代價(jià)函數(shù)中所起的作用;l為網(wǎng)絡(luò)的層數(shù);sl為l層單元的個(gè)數(shù);wji為權(quán)重矩陣中角標(biāo)為j,i的元素值。
稀疏自動(dòng)編碼器是自動(dòng)編碼器的一種改進(jìn)形式。在計(jì)算機(jī)視覺(jué)中,稀疏性約束能夠使得編碼后的表達(dá)更有意義,在獨(dú)立成分分析(ICA),稀疏編碼等算法中已經(jīng)表現(xiàn)出了良好的性能[5],因此人們?cè)谏疃葘W(xué)習(xí)的優(yōu)化過(guò)程中也加入了稀疏性的限制,主要是通過(guò)對(duì)每個(gè)隱層單元的響應(yīng)添加約束條件,使隱層單元的大多數(shù)神經(jīng)元處于“抑制”狀態(tài),只有少數(shù)神經(jīng)元處于“興奮”狀態(tài)。這種約束反映到數(shù)學(xué)模型中是通過(guò)向代價(jià)函數(shù)中添加稀疏約束項(xiàng)來(lái)實(shí)現(xiàn)的,公式如下
Jcost(θ)=JMSE(θ)+Jweight(θ)+Jsparse(θ)
(6)
(7)
(8)
其中,ρj為隱層單元神經(jīng)元的平均激活度;ρ是人為設(shè)置的參數(shù),一般比較小,從式(8)可看出,ρj和ρ越接近,代價(jià)函數(shù)就越小;β決定了稀疏約束項(xiàng)在代價(jià)函數(shù)中所起的作用。
2改進(jìn)的稀疏自動(dòng)編碼器
傳統(tǒng)的稀疏自動(dòng)編碼器雖然已經(jīng)具有良好的分類(lèi)性能,但其不具有空間平移不變的特性。本文通過(guò)將卷積神經(jīng)網(wǎng)絡(luò)中卷積層的相關(guān)理論與稀疏自動(dòng)編碼器相結(jié)合,形成卷積稀疏自動(dòng)編碼器;同時(shí)為了增加網(wǎng)絡(luò)的抗躁能力,用MCC取代MSE作為編碼器的代價(jià)函數(shù)。
卷積稀疏自動(dòng)編碼器結(jié)構(gòu)如圖1所示。
圖1 卷積自動(dòng)編碼器結(jié)構(gòu)圖
從圖像中隨機(jī)抽取一個(gè)8×8的圖像塊作為輸入,之后用相同大小的卷積核分別與此圖像塊進(jìn)行卷積,為實(shí)現(xiàn)稀疏性,采用卷積核種類(lèi)數(shù)與圖像塊像素?cái)?shù)相等的策略,即64種;64種卷積核對(duì)應(yīng)隱層中的神經(jīng)元個(gè)數(shù)為64,每一個(gè)神經(jīng)元所需參數(shù)為8×8+1=65個(gè),而64個(gè)神經(jīng)元參數(shù)共為4 160個(gè);在解碼階段,輸出層的每個(gè)神經(jīng)元與隱層的所有神經(jīng)元全連接,參數(shù)個(gè)數(shù)為64×64+1=4 097個(gè)。對(duì)不同的圖像塊進(jìn)行編碼、解碼時(shí),由CNN的權(quán)重共享[6]可知,同一種卷積核對(duì)應(yīng)不同的神經(jīng)元,網(wǎng)絡(luò)參數(shù)值不變。這樣當(dāng)組合輸入圖像時(shí),雖然隱層的神經(jīng)元總數(shù)增加了,但參數(shù)個(gè)數(shù)并未改變。
此算法采用無(wú)重疊滑動(dòng)窗口策略進(jìn)行遍歷,即步長(zhǎng)與窗口大小相同。每個(gè)圖像塊都按照上面的過(guò)程進(jìn)行編、解碼,在編碼階段通過(guò)加入稀疏性約束,使得隱層響應(yīng)稀疏。最后,通過(guò)合并各個(gè)圖像塊的表示來(lái)形成整幅圖像的描述,原理如圖2所示。
圖2 完整圖像描述原理示意圖
從文獻(xiàn)[7]可得到不同的代價(jià)函數(shù)對(duì)網(wǎng)絡(luò)的性能起著至關(guān)重要的作用。傳統(tǒng)自動(dòng)編碼器的代價(jià)函數(shù)采用MSE,但MSE對(duì)于非高斯噪聲敏感。針對(duì)此問(wèn)題,本文提出用MCC替換代價(jià)函數(shù)中的MSE以達(dá)到抑制非高斯噪聲的目的。
2.2.1相關(guān)熵
在文獻(xiàn)[8]中,相關(guān)熵作為一種局部相似性衡量標(biāo)準(zhǔn)被提出,并已被應(yīng)用到信號(hào)處理領(lǐng)域中,在對(duì)抗非高斯噪聲上其比MSE具有更好的效果[9]。相關(guān)熵是對(duì)兩個(gè)隨機(jī)變量與相似度的通用計(jì)算方法,定義為[10]
Vσ(X,Y)=E[κσ(X-Y)]
(9)
其中,E[·]代表期望;κσ是滿足Mercer理論[11]的核函數(shù),本文采用高斯核函數(shù)
(10)
相關(guān)熵利用核函數(shù),將輸入空間非線性地映射到高維空間,但與傳統(tǒng)的核方法不同,其使每個(gè)樣本不相關(guān)。相關(guān)熵是一種局部的相似性度量方法,這點(diǎn)與全局的MSE不同。
(11)
2.2.2MCC代價(jià)函數(shù)
在傳統(tǒng)的稀疏自動(dòng)編碼器中,網(wǎng)絡(luò)的代價(jià)函數(shù)如式(6)所示,本文將用MCC代替MSE,網(wǎng)絡(luò)的代價(jià)函數(shù)變?yōu)?/p>
Jcost(θ)=-JMSE(θ)+Jweight(θ)+Jsparse(θ)
(12)
(13)
其中,m為樣本數(shù)量;n為每個(gè)樣本的維數(shù),從式(12)和式(13)可知,要使代價(jià)函數(shù)最小,則需要相關(guān)熵項(xiàng)最大。
3實(shí)驗(yàn)結(jié)果與分析
為驗(yàn)證本文算法的有效性,選取MINIS和CIFAR-10數(shù)據(jù)集進(jìn)行實(shí)驗(yàn)。自動(dòng)編碼器只完成了圖像的特征提取,本文選用Soft-Max分類(lèi)器作為網(wǎng)絡(luò)的輸出層來(lái)實(shí)現(xiàn)分類(lèi),并在Matlab-2010軟件上進(jìn)行仿真實(shí)驗(yàn)。
MNIST是一個(gè)手寫(xiě)的數(shù)字庫(kù),其共有60 000張訓(xùn)練圖片,10 000張測(cè)試圖片,每張圖片大小為28×28像素,MNIST數(shù)據(jù)集,圖片背景單一,相對(duì)而言較易識(shí)別。
CIFAR-10是一種小圖像的數(shù)據(jù)集,每幅圖像的大小為32×32像素、彩色圖像,共有60 000張圖像,其中50 000張作為訓(xùn)練圖像,10 000張作為測(cè)試圖像。
在實(shí)驗(yàn)之初,首先對(duì)CIFAR-10圖像數(shù)據(jù)進(jìn)行簡(jiǎn)單的預(yù)處理,包括灰度轉(zhuǎn)換及歸一化處理。
實(shí)驗(yàn)采用3層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并以識(shí)別錯(cuò)誤率為標(biāo)準(zhǔn)。實(shí)驗(yàn)1對(duì)MNIST數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),分別采用傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)、稀疏自動(dòng)編碼器、深度信念網(wǎng)和本文提出的標(biāo)準(zhǔn)卷積自動(dòng)編碼器(代價(jià)函數(shù)為MSE)進(jìn)行實(shí)驗(yàn)。網(wǎng)絡(luò)的各層單元數(shù)為784-784-10,卷積自動(dòng)編碼器采用49種7×7大小的卷積核,步長(zhǎng)為7。采用MSE作為編碼器的代價(jià)函數(shù),是為了與實(shí)驗(yàn)3中將對(duì)加入非高斯噪聲的樣本進(jìn)行分類(lèi),屆時(shí)再采用MCC的卷積自動(dòng)編碼器,這樣有利于更好地分析MCC的性能。在實(shí)驗(yàn)1中,由于MNIST數(shù)據(jù)集相對(duì)容易識(shí)別,文中將迭代次數(shù)(包括預(yù)訓(xùn)練和微調(diào)階段)設(shè)置為20和50,每種網(wǎng)絡(luò)進(jìn)行5次實(shí)驗(yàn),取其平均值作為結(jié)果,如表1所示。
表1 MNIST的分類(lèi)結(jié)果
從表1可看出,本文所提方法較傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)(NN),DBN,SpAE在識(shí)別率上有了一定的提高。與傳統(tǒng)的稀疏自動(dòng)編碼器相比,識(shí)別率提高了2%,說(shuō)明將卷積層的相關(guān)理論應(yīng)用到自動(dòng)編碼器中能夠提高網(wǎng)絡(luò)的識(shí)別性能。
實(shí)驗(yàn)2采用CIFAR-10數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),各層網(wǎng)絡(luò)單元數(shù)為1024-1024-10,迭代次數(shù)為50和100;卷積自動(dòng)編碼器采用64種不同的8×8卷積核,步長(zhǎng)為8,代價(jià)函數(shù)為MSE。實(shí)驗(yàn)結(jié)果,如表2所示。
表2 CIFAR-10的分類(lèi)結(jié)果
從表2可看出,在CIFAR-10數(shù)據(jù)集上,卷積自動(dòng)編碼器比傳統(tǒng)的稀疏自動(dòng)編碼器識(shí)別錯(cuò)誤率低了將近6%,比DBN網(wǎng)絡(luò)低了將近5%。
實(shí)驗(yàn)3在MNIST數(shù)據(jù)集中加入非高斯噪聲,實(shí)驗(yàn)參數(shù)與實(shí)驗(yàn)1基本相同,但卷積自動(dòng)編碼器的代價(jià)函數(shù)由MCC代替MSE,結(jié)果如表3所示。
表3 加噪聲的MNIST數(shù)據(jù)集分類(lèi)結(jié)果
從表3中可看出,與實(shí)驗(yàn)1相比所有模型的錯(cuò)誤識(shí)別率均有不同程度地提高,但采用MCC代價(jià)函數(shù)的卷積自動(dòng)編碼器相對(duì)于其他模型錯(cuò)誤率增加較小;當(dāng)加大非高斯噪聲的強(qiáng)度時(shí),MCC編碼器識(shí)別變化速率最小,說(shuō)明MCC作為代價(jià)函數(shù)對(duì)于非高斯噪聲具有良好的魯棒性。
4結(jié)束語(yǔ)
本文通過(guò)對(duì)傳統(tǒng)的自動(dòng)編碼器進(jìn)行改進(jìn),將CNN和MCC理論應(yīng)用到稀疏自動(dòng)編碼器中,實(shí)驗(yàn)證明此方法是有效的。雖然深度學(xué)習(xí)已經(jīng)得到了廣泛地應(yīng)用,但仍有諸多方面需要研究,例如探索新的深度學(xué)習(xí)模型等。此外,有效的可并行訓(xùn)練算法也是值得研究的方向之一。
參考文獻(xiàn)
[1]BengioY,DelalleauO.Ontheexpressivepowerofdeeparchitectures[C].Berlin,Heidelberg:AlgorithmicLearningTheory,Springer:2011.
[2]BourlardH,KampY.Auto-associationbymultilayerperceptronsandsingularvaluedecomposition[J].BiologicalCybernetics,1988,59(4-5):291-294.
[3]HintonG,OsinderoS,TehYW.Afastlearningalgorithmfordeepbeliefnets[J].NeuralComputation,2006,18(7):1527-1554.
[4]BengioY,LamblinP,PopoviciD,etal.Greedylayer-wisetrainingofdeepnetworks[J].AdvancesinNeuralInformationProcessingSystems,2007(19):153-160.
[5]鄭胤,陳權(quán)崎,章毓晉.深度學(xué)習(xí)及其在目標(biāo)和行為識(shí)別中的新進(jìn)展[J].中國(guó)圖象圖形報(bào),2014,19(2):175-184.
[6]LeCunY,BottouL,BengioY,etal.Gradient-basedlearningappliedtodocumentrecognition[J].ProceedingsoftheIEEE,1998,86(11):2278-2324.
[7]AmaralT,SilvaLM,AlexandreLA,etal.Usingdifferentcostfunctionstotrainstackedauto-encoders[C].12thMexicanInternationalConferenceonArtificialIntelligence(MICAI),IEEE,2013.
[8]LiuW,PokharelPP,PrincipeJC.Correntropy:Alocalizedsimilaritymeasure[C].IJCNN’06,InternationalJointConferenceonNeuralNetworks,IEEE,2006.
[9]HeR,ZhengWS,HuBG,etal.Aregularizedcorrentropyframeworkforrobustpatternrecognition[J].NeuralComputation,2011,23(8):2074-2100.
[10]LiuW,PokharelPP,PríncipeJC.Correntropy:propertiesandapplicationsinnon-gaussiansignalprocessing[J].IEEETransactionsonSignalProcessing,2007,55(11):5286-5298.
[11]VapnikV.Thenatureofstatisticallearningtheory[M].Berlin:SpringerConpration,2000.
作者簡(jiǎn)介:尹征(1989—),男,碩士研究生。研究方向:計(jì)算機(jī)視覺(jué)等。唐春暉(1971—),男,講師。研究方向:數(shù)字圖像處理等。張軒雄(1965—),男,教授。研究方向:微電子機(jī)械系統(tǒng)等。
收稿日期:2015- 05- 05
中圖分類(lèi)號(hào)TN762;TP242
文獻(xiàn)標(biāo)識(shí)碼A
文章編號(hào)1007-7820(2016)01-124-04
doi:10.16180/j.cnki.issn1007-7820.2016.01.034