朱嘯天,張艷珠,王凡迪
(沈陽(yáng)理工大學(xué) 信息科學(xué)與工程學(xué)院,沈陽(yáng) 110159)
?
一種基于稀疏自編碼網(wǎng)絡(luò)的數(shù)據(jù)降維方法研究
朱嘯天,張艷珠,王凡迪
(沈陽(yáng)理工大學(xué) 信息科學(xué)與工程學(xué)院,沈陽(yáng) 110159)
高維數(shù)據(jù)的“維數(shù)災(zāi)難”問(wèn)題制約了機(jī)器學(xué)習(xí)、模式識(shí)別等諸多研究領(lǐng)域的發(fā)展研究。因此高維數(shù)據(jù)的降維方法,即將高維的特征數(shù)據(jù)化簡(jiǎn)投射到低維空間中,成為當(dāng)前研究熱點(diǎn)之一。稀疏自動(dòng)編碼器(Sparse Autoencoder)網(wǎng)絡(luò)通過(guò)訓(xùn)練具有多隱含層的神經(jīng)網(wǎng)絡(luò)將高維數(shù)據(jù)進(jìn)行降維,能有效地解決了高維數(shù)據(jù)由于維數(shù)過(guò)大導(dǎo)致的識(shí)別率低的問(wèn)題。將網(wǎng)絡(luò)用于手寫(xiě)體數(shù)字圖像識(shí)別及人臉圖像識(shí)別實(shí)驗(yàn),取得了較好地識(shí)別結(jié)果,表明稀疏自動(dòng)編碼網(wǎng)絡(luò)能有效地對(duì)高維數(shù)據(jù)降維。
高維數(shù)據(jù)降維 ;稀疏編碼;圖像識(shí)別
近年來(lái),隨著科學(xué)技術(shù)的發(fā)展,在實(shí)際應(yīng)用中經(jīng)常會(huì)碰到高維數(shù)據(jù),但由于“維數(shù)災(zāi)難”的影響,使得高維數(shù)據(jù)在機(jī)器學(xué)習(xí)及識(shí)別分類(lèi)領(lǐng)域變得異常困難。傳統(tǒng)方法是采用一些特殊的手段進(jìn)行處理,而最常見(jiàn)的處理方式之一就是降維。通過(guò)數(shù)據(jù)降維可以減輕維數(shù)災(zāi)難以及高維數(shù)據(jù)中相關(guān)性較弱的冗余特征,從而促進(jìn)高維數(shù)據(jù)的分類(lèi)、壓縮以及可視化。
目前已提出的許多降維方法[1-2],主要可分為線(xiàn)性和非線(xiàn)性?xún)深?lèi), 線(xiàn)性降維方法主要有主成分分析(PCA)和線(xiàn)性判別分析(LDA)等。它們?cè)诰哂芯€(xiàn)性結(jié)構(gòu)以及高斯分布的高維數(shù)據(jù)集上具有好的降維效果。然而當(dāng)高維數(shù)據(jù)呈現(xiàn)復(fù)雜以及非線(xiàn)性結(jié)構(gòu)時(shí),這些方法則難以發(fā)現(xiàn)能夠表現(xiàn)數(shù)據(jù)集的主要特征[3],從而無(wú)法對(duì)其進(jìn)行有效降維[4]。而根據(jù)先前的研究表明,大多數(shù)情況特征數(shù)據(jù)是分布在彎曲的流形空間中,因此流形學(xué)習(xí)方法即非線(xiàn)性降維方法如等度規(guī)映射(ISOMAP)[5]和局部線(xiàn)性嵌入算法(LLE)[4]等得到了廣泛的應(yīng)用。流形學(xué)習(xí)通常認(rèn)為數(shù)據(jù)集具有能表達(dá)數(shù)據(jù)本質(zhì)的維數(shù),然后可以通過(guò)將數(shù)據(jù)集降維至低維空間來(lái)避免維數(shù)災(zāi)難問(wèn)題,并發(fā)現(xiàn)隱含在數(shù)據(jù)中的內(nèi)在物理意義。然而,現(xiàn)有大多流形學(xué)習(xí)方法[6-7]也存在缺陷。例如ISOMAP具有拓?fù)洳环€(wěn)定性而且短環(huán)路會(huì)嚴(yán)重影響它的執(zhí)行;而LLE要求所學(xué)習(xí)的數(shù)據(jù)流行空間不能閉合而且局部要求線(xiàn)性,并且對(duì)噪聲敏感。因此,采用這類(lèi)降維方法必須聯(lián)合運(yùn)用其他復(fù)雜的技術(shù)來(lái)改進(jìn)這些缺陷。
本文引入一種新的非線(xiàn)性降維方法——稀疏編碼網(wǎng)絡(luò)方法。該網(wǎng)絡(luò)在自編碼網(wǎng)絡(luò)的基礎(chǔ)上加入約束條件,使自編碼網(wǎng)絡(luò)每次得到的表達(dá)數(shù)據(jù)盡量稀疏,即通過(guò)少量的特征來(lái)表達(dá)輸入。從而達(dá)到數(shù)據(jù)降維的效果。而將稀疏自編碼網(wǎng)絡(luò)用于手寫(xiě)體數(shù)字識(shí)別和人臉圖像識(shí)別的實(shí)驗(yàn)也表明,稀疏編碼網(wǎng)絡(luò)具有很好的降維功能。
本文在介紹稀疏編碼深層神經(jīng)網(wǎng)絡(luò)和它的結(jié)構(gòu)以及工作原理的基礎(chǔ)上,主要利用手寫(xiě)體數(shù)字和人臉圖像數(shù)據(jù)庫(kù)來(lái)檢測(cè)稀疏自編碼網(wǎng)絡(luò)對(duì)高維數(shù)據(jù)的降維效果。
1.1 稀疏自編碼機(jī)
稀疏自編碼機(jī)結(jié)構(gòu)和自編碼機(jī)結(jié)構(gòu)大體相同,如圖1所示,自動(dòng)編碼機(jī)將數(shù)據(jù)輸入到解碼器中得到一個(gè)輸入的表達(dá)信息,并通過(guò)調(diào)整參數(shù)使這個(gè)信息與原始數(shù)據(jù)誤差變小,從而達(dá)到對(duì)原始輸入數(shù)據(jù)的良好表達(dá),不同的是稀疏自編碼機(jī)在該基礎(chǔ)上加入了稀疏編碼算法。
稀疏編碼算法其實(shí)就是尋找一些基礎(chǔ)特征來(lái)更高效地表示樣本數(shù)據(jù),它是一種無(wú)監(jiān)督的學(xué)習(xí)方法。即找到一組基向量φi,使得能采用這些基向量線(xiàn)性的組合來(lái)表示[8]輸入向量X:
圖1 稀疏自編碼機(jī)
換句話(huà)說(shuō)就是用一組基的線(xiàn)性組合來(lái)表示一個(gè)信號(hào),而且盡可能少的幾個(gè)基就可以將信號(hào)表示出來(lái)。通過(guò)實(shí)驗(yàn)表明絕大部分感官數(shù)據(jù),例如自然圖像,都可以用少量基本元素的線(xiàn)性組合來(lái)表示。所以選擇具有稀疏性的分量來(lái)表示高維數(shù)據(jù)可以在不丟失高維數(shù)據(jù)本質(zhì)特征的基礎(chǔ)上減少數(shù)據(jù)的維數(shù)。
雖然PCA技術(shù)也能方便地找到一組基向量來(lái)表達(dá)高維數(shù)據(jù),但是稀疏算法能夠找到一組更好的基向量。它們能夠更加有效地挖掘高維數(shù)據(jù)的本質(zhì)特征,并通過(guò)少量的特征來(lái)表達(dá)數(shù)據(jù)。
1.2 稀疏自編碼網(wǎng)絡(luò)
稀疏自編碼網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示,整個(gè)系統(tǒng)由多個(gè)稀疏自編碼機(jī)構(gòu)成(虛框?yàn)橐粋€(gè)稀疏編碼機(jī))。
圖2 稀疏自編碼網(wǎng)絡(luò)結(jié)構(gòu)
稀疏自編碼網(wǎng)絡(luò)工作原理如下:首先初始化編碼器的權(quán)值ω1,…,ωn,然后給定一組樣本數(shù)據(jù)[χ1,χ2,…],通過(guò)稀疏編碼算法訓(xùn)練學(xué)習(xí)得到一組基[φ1,φ2,…],接著通過(guò)這組基向量得到對(duì)樣本數(shù)據(jù)[χ1,χ2,…]的稀疏表達(dá)向量[α1,α2,…]。然后對(duì)編碼網(wǎng)絡(luò)進(jìn)行多次訓(xùn)練,使原始訓(xùn)練數(shù)據(jù)與重構(gòu)數(shù)據(jù)之間誤差達(dá)到最小。最后利用反向傳播誤差導(dǎo)數(shù)的鏈規(guī)則,很容易得到期望的梯度值,這樣就可以將稀疏自編碼網(wǎng)絡(luò)的權(quán)值調(diào)節(jié)到最佳。
2.1 對(duì)Mnist數(shù)據(jù)集的實(shí)驗(yàn)
為了表明稀疏自編碼網(wǎng)絡(luò)能夠有效地對(duì)數(shù)據(jù)降維,利用Mnist數(shù)據(jù)集來(lái)訓(xùn)練一個(gè)稀疏自編碼網(wǎng)絡(luò)并在網(wǎng)絡(luò)最后接入分類(lèi)器,通過(guò)Matlab軟件仿真來(lái)觀察識(shí)別率,進(jìn)而反映稀疏網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)的稀疏表達(dá),也就是對(duì)數(shù)據(jù)降維的效果。Mnist數(shù)據(jù)集包含0到9不同種手寫(xiě)體數(shù)字圖片,如圖3所示,其中訓(xùn)練數(shù)據(jù)60000張,測(cè)試數(shù)據(jù)10000張。圖片分辨率均為28×28。
圖3 部分Mnist數(shù)據(jù)庫(kù)圖像
首先對(duì)訓(xùn)練圖片進(jìn)行歸一化,則每一張圖片變?yōu)?84維,則訓(xùn)練樣本數(shù)據(jù)歸一化為60000×784的矩陣,如圖4所示。
圖4 樣本數(shù)據(jù)矩陣(部分)
由于樣本包含10類(lèi),為方便進(jìn)行分類(lèi),將樣本最終降到維數(shù)為10,則稀疏自編碼網(wǎng)絡(luò)各層大小依次為784-500-100-10。然后利用稀疏編碼算法來(lái)對(duì)網(wǎng)絡(luò)權(quán)值進(jìn)行初始化:⑴首先隨機(jī)賦予網(wǎng)絡(luò)權(quán)值初值;⑵對(duì)每個(gè)隱含層逐個(gè)進(jìn)行無(wú)監(jiān)督學(xué)習(xí),使得這些初始權(quán)值能盡可能接近最優(yōu)解(如圖5所示)。
圖5 網(wǎng)絡(luò)權(quán)值初始化和訓(xùn)練后數(shù)據(jù)
接著通過(guò)多次執(zhí)行反向傳播算法來(lái)調(diào)整網(wǎng)絡(luò)權(quán)值,使得網(wǎng)絡(luò)達(dá)到最佳狀態(tài),這樣稀疏自編碼網(wǎng)絡(luò)對(duì)原始數(shù)據(jù)進(jìn)行了稀疏表達(dá),也就是降維。得到的稀疏表達(dá)向量如圖6所示。
圖6 稀疏表達(dá)向量
最后用獲得最優(yōu)權(quán)值的網(wǎng)絡(luò)對(duì)10000張測(cè)試圖片進(jìn)行分類(lèi)識(shí)別,識(shí)別率計(jì)算公式為
得到的結(jié)果如表1所示。
由表1可知,稀疏自編碼網(wǎng)絡(luò)可以較好地識(shí)別手寫(xiě)體數(shù)字,而且隨著迭代次數(shù)的增加,識(shí)別率提高,由此可知稀疏自編碼網(wǎng)絡(luò)可以對(duì)Mnist數(shù)據(jù)集較好地降維。
表1 Mnist數(shù)據(jù)集識(shí)別結(jié)果
2.2 對(duì)人臉識(shí)別的實(shí)驗(yàn)
為了表明稀疏自編碼網(wǎng)絡(luò)不僅能夠有效地對(duì)數(shù)據(jù)降維,而且與傳統(tǒng)的方法比較,稀疏自編碼網(wǎng)絡(luò)有更好的降維效果。采用ORL人臉圖像庫(kù)進(jìn)行實(shí)驗(yàn),通過(guò)幾種常見(jiàn)的降維方法和本文引入的稀疏自編碼網(wǎng)絡(luò)對(duì)訓(xùn)練圖像進(jìn)行降維,并利用測(cè)試集對(duì)比識(shí)別率來(lái)驗(yàn)證本文方法的可行性。
ORL人臉圖像庫(kù)是由英國(guó)劍橋大學(xué)工程部在不同時(shí)間、光照、面部表情下對(duì)40個(gè)人進(jìn)行拍攝,每人10幅,一共400幅灰度人臉圖像構(gòu)成的,每幅圖像的分辨率是112×92(如圖7所示)。本文取每個(gè)人的前5幅圖,共200幅圖組成訓(xùn)練圖像數(shù)據(jù)庫(kù),后5幅圖為測(cè)試數(shù)據(jù)集。
圖7 部分ORL數(shù)據(jù)庫(kù)人臉圖像
人臉識(shí)別的關(guān)鍵在于將人臉圖片的大量冗余信息去除,從中找到具有代表性的、與其他類(lèi)有明顯差異的特征,所以降維的好壞直接影響到人臉識(shí)別的效果。
首先采用傳統(tǒng)的降維方法進(jìn)行人臉圖像的降維,通過(guò)實(shí)驗(yàn)表明:PCA和LDA降維方法在子空間維數(shù)為60時(shí)識(shí)別率最大,達(dá)到79%和80.5%;ISOMAP算法在子空間維數(shù)為12時(shí)取得89.5%的識(shí)別率;而LLE算法在子空間維數(shù)為14時(shí)取得86.5%的識(shí)別率。
本文采用的稀疏自編碼網(wǎng)絡(luò)由于訓(xùn)練集圖片像素為112×92,因此網(wǎng)絡(luò)結(jié)構(gòu)變?yōu)?12×92-2576-500-100-40,與上個(gè)實(shí)驗(yàn)一樣,首先通過(guò)歸一化將112×92的圖像轉(zhuǎn)化為10304維實(shí)向量,不同的是模型最后一層將圖像分為40類(lèi),因此將維數(shù)降維40。然后通過(guò)稀疏編碼算法對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練(圖8為訓(xùn)練得到的稀疏向量)。最終識(shí)別率達(dá)到了94.5% (圖9為仿真結(jié)果)。
圖8 ORL訓(xùn)練圖片稀疏表達(dá)向量
圖9 人臉識(shí)別仿真結(jié)果
表2為傳統(tǒng)降維方法和本文降維方法對(duì)ORL人臉圖像庫(kù)的實(shí)驗(yàn)結(jié)果對(duì)比。
表2 ORL人臉識(shí)別實(shí)驗(yàn)結(jié)果對(duì)比
從表2可看出,線(xiàn)性降維方法PCA和LDA方法雖然取得了接近80%的識(shí)別率。但PCA對(duì)圖像的光照的變化魯棒性不理想,一旦光照發(fā)生明顯改變,識(shí)別率就會(huì)受到很大的影響[9]。而LDA算法需將人臉圖像矩陣轉(zhuǎn)化為列向量或者行向量,這樣就會(huì)增加運(yùn)算的復(fù)雜性,容易導(dǎo)致矩陣奇異[10-11],從而影響識(shí)別率。而作為非線(xiàn)性降維方法的ISOMAP和LLE算法,取得了超過(guò)85%的識(shí)別率,原因在于人臉圖像是一種由光照、表情等變量構(gòu)成的流形非線(xiàn)性結(jié)構(gòu)[12]。而本文引入的稀疏自編碼網(wǎng)絡(luò)(SAE網(wǎng)絡(luò))通過(guò)稀疏編碼理論對(duì)人臉的數(shù)據(jù)進(jìn)行了抽象表達(dá),去除了圖像的冗雜信息,在將數(shù)據(jù)降維的同時(shí)保留了人臉的主要特征,所以取得了接近95%的識(shí)別率。
根據(jù)稀疏理論算法,改進(jìn)了自編碼網(wǎng)絡(luò),在自編碼網(wǎng)絡(luò)的基礎(chǔ)上加入稀疏算法,用以挖掘高維連續(xù)數(shù)據(jù)的抽象特征,去除冗余信息,從而達(dá)到數(shù)據(jù)降維的作用。將稀疏自編碼網(wǎng)絡(luò)用于手寫(xiě)體數(shù)字?jǐn)?shù)據(jù)識(shí)別和人臉圖像識(shí)別的實(shí)驗(yàn)表明,稀疏自編碼網(wǎng)絡(luò)對(duì)圖像數(shù)據(jù)具有很好的降維功能。而如何快速地對(duì)更高維度的數(shù)據(jù)降維將成為下一步研究重點(diǎn)。
[1]Hotelling H.Analys is of a complex of statistical variables into principal components[J].Journal of Educational Psychology,1933(24):417-441.
[2]胡昭華,宋耀良.基于一種連續(xù)自編碼網(wǎng)絡(luò)的圖像降維和重構(gòu)[J].數(shù)據(jù)采集與處理,2010,25(3):310-323.
[3]胡昭華.基于粒子濾波的視頻目標(biāo)跟蹤技術(shù)研究[D].南京:南京理工大學(xué),2008.
[4]Roweis S T,Saul L K.Nonlinear dimensionality reduction by locally linear embedding[J].Science,2000,290 (5500):2323-2326.
[5]Tenenbaum J B,Silva V de,Langfo rd J C.A global geometric framework for nonlinear dimensionality reduction[J].Science,2000,290(5500):2319-2323.
[6]Rahimi A,Recht B,Darrell T.Learning to transform time series with a few examples[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29(10):1759-1775.
[7]Liang W,David S.Learning and matching of dynamic shape manifolds for human action recog nition[J].IEEE Transactions on Image Processing,2007,16(6):1646-1661.
[8]尹遠(yuǎn),廖敏江,李校林.基于無(wú)監(jiān)督學(xué)習(xí)的行人檢測(cè)算法[J].廣東通信技術(shù),2015(2):43-47.
[9]張珍.基于數(shù)據(jù)降維的人臉圖像檢索及識(shí)別[D].天津:河北工業(yè)大學(xué),2011.
[10]張博.基于2DLDA的人臉識(shí)別快速算法研究[J].電腦知識(shí)與技術(shù),2009,5(1):186-188.
[11]溫福喜,劉宏偉.基于2D-PCA和2D-LDA的人臉識(shí)別方法[J].計(jì)算機(jī)應(yīng)用研究,2007,24(8):201-203.[12]胡昭華,宋耀良.基于Autoencoder網(wǎng)絡(luò)的數(shù)據(jù)降維和重構(gòu)[J].電子與信息學(xué)報(bào),2009,31(5):1189-1192.
(責(zé)任編輯:馬金發(fā))
Reducing the Dimensionality of Data with Sparse Autoencoder Network
ZHU Xiaotian,ZHANG Yanzhu,WANG Fandi
(Shenyang Ligong University,Shenyang 110159,China)
High-dimensional data of "dimension disaster" problem has restricted the machine learning,pattern recognition,and many other research developments in research field.So the dimension reduction method becomes one of the current research hotspots,which reduces the characteristic of high dimensional projection into low-dimensional space.The Sparse autoencoder network can convert high-dimensional data to low-dimensional codes by training a neural network with multiple hidden layers,which solves the problem of high-dimensional data’s lower recognition rate by large dimension effective.Sparse autoencoder network has good effect on handwritten digit image recognition and face image recognition.Simulation results show that the sparse autoencoder network can convert high-dimensional data to low-dimensional codes effective.
high-dimensional data dimension;sparse coding;image recognition
2015-07-17
朱嘯天(1990—),男,碩士研究生;通訊作者:張艷珠(1971—),女,副教授,博士,研究方向:目標(biāo)識(shí)別,分?jǐn)?shù)階控制,智能算法。
1003-1251(2016)05-0039-05
TP391
A