鄒 煜,劉興旺
(中南民族大學(xué) 計算機科學(xué)學(xué)院,武漢 430074)
基于深度學(xué)習(xí)手寫字符的特征抽取方法研究
鄒 煜,劉興旺
(中南民族大學(xué) 計算機科學(xué)學(xué)院,武漢 430074)
當(dāng)前對深度學(xué)習(xí)單層訓(xùn)練算法的研究工作較少,本文采用數(shù)據(jù)量、隱層節(jié)點和感受野大小,分析自動編碼器和K-means算法在訓(xùn)練深度網(wǎng)絡(luò)抽取特征上的表現(xiàn)。發(fā)現(xiàn)自動編碼器對數(shù)據(jù)量,隱層節(jié)點敏感,且學(xué)習(xí)率與數(shù)據(jù)量和感受野呈負(fù)相關(guān);數(shù)據(jù)量一定后,K-means對數(shù)據(jù)量不敏感,且感受野大小的選取對該算法發(fā)揮性能至關(guān)重要。在實際應(yīng)用中給自動編碼器加入稀疏性控制是必要的。實驗結(jié)果表明,本文的研究工作,對用自動編碼器或K-means訓(xùn)練深度網(wǎng)絡(luò)有一定的參考借鑒意義。
深度學(xué)習(xí);K-means;自動編碼器;感受野;數(shù)據(jù)量;隱層節(jié)點
本文著錄格式:鄒 煜,劉興旺. 基于深度學(xué)習(xí)手寫字符的特征抽取方法研究[J]. 軟件,2017,38(1):23-28
當(dāng)下,人工智能已經(jīng)是科技領(lǐng)域內(nèi)研究的熱點,深度學(xué)習(xí)(Deep Learing,DL)更是人工智能技術(shù)中最具代表性的技術(shù)之一。引起了學(xué)術(shù)界與產(chǎn)業(yè)、工業(yè)界的廣泛關(guān)注。深度學(xué)習(xí)是由傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)發(fā)展而來的,但是又不僅僅是傳統(tǒng)網(wǎng)絡(luò)的簡單繼承。深度學(xué)習(xí)的概念最早由多倫多大學(xué)的GE.Hinton等人于2006年提出,指基于樣本數(shù)據(jù)通過一定的訓(xùn)練方法得到包含多個層級的深度網(wǎng)絡(luò)結(jié)構(gòu)的機器學(xué)習(xí)過程。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)隨機初始化網(wǎng)絡(luò)中的權(quán)值,導(dǎo)致網(wǎng)絡(luò)很容易收斂到局部最小值,為解決這一問題,Hinton提出使用無監(jiān)督預(yù)訓(xùn)練方法優(yōu)化網(wǎng)絡(luò)權(quán)值的初值,再進行權(quán)值微調(diào)的方法,拉開了深度學(xué)習(xí)的序幕[1]。
在圖像識別領(lǐng)域深度學(xué)習(xí)也有廣泛的應(yīng)用,利用深度學(xué)習(xí)模型得到圖像標(biāo)注信息,主要是利用了圖像間的視覺相似性,選用高層視覺特征作為深度神經(jīng)網(wǎng)絡(luò)的輸入信息??梢詫σ恍┠:奶卣髯龇诸?,這是一個非常有前瞻意義的研究[2]。我國對深度學(xué)習(xí)的研究起步較晚,學(xué)習(xí)者批判性地學(xué)習(xí)新思想和新知識,將它們與原有的認(rèn)知結(jié)構(gòu)相融合,將眾多思想相互關(guān)聯(lián),將已有的知識遷移到新的情境中去,做出決策并解決問題的學(xué)習(xí)。此后國內(nèi)開展了一系列針對深度學(xué)習(xí)的相關(guān)學(xué)術(shù)研究[3]。深度學(xué)習(xí)的主要目的是訓(xùn)練模型,使學(xué)習(xí)模型在滿足一定精度要求的前提下具有最簡單的網(wǎng)絡(luò)結(jié)構(gòu)。并且在這一網(wǎng)絡(luò)結(jié)構(gòu)的基礎(chǔ)上去測試樣本[4]。圖像領(lǐng)域的研究是深度學(xué)習(xí)最早進行嘗試的應(yīng)用領(lǐng)域,面對一幅圖像,其像素級的特征幾乎沒什么實用價值,人體視覺系統(tǒng)對圖像信息的處理就是從低級的顏色、邊緣等特征到實體形狀或者再到更高層的人類理解層級,即將底層特征組合理解獲得圖像高級特征。而深度學(xué)習(xí)在圖像領(lǐng)域的應(yīng)用過程就是模擬這個人類視覺系統(tǒng)對圖像內(nèi)容進行理解建模的過程[5]?;谏疃葘W(xué)習(xí)理論的神經(jīng)網(wǎng)絡(luò)模型能夠很好的應(yīng)用于中文命名實體識別任務(wù)。以該模型為核心建立的中文命名實體識別系統(tǒng)具有良好的健壯性和可維護性,能夠滿足大數(shù)據(jù)背景下中文命名實體識別的新需求[6]。深度學(xué)習(xí)模型己廣泛應(yīng)用于計算機視覺、語音識別機器翻譯和語義挖掘等領(lǐng)域,而流數(shù)據(jù)變得越來越多,因此深度學(xué)習(xí)模型不得不對及時更新的流數(shù)據(jù)進行學(xué)習(xí)。如果把流數(shù)據(jù)放入原始的訓(xùn)練數(shù)據(jù)集,重新對原始數(shù)據(jù)集進行學(xué)習(xí),隨著流數(shù)據(jù)的加入越來越多,模型對數(shù)據(jù)學(xué)習(xí)所花費的時間將變得越來越長,就可能導(dǎo)致訓(xùn)練模型所投入的成本大于模型對數(shù)據(jù)學(xué)習(xí)的收益的惡性循環(huán)。一種有效的解決方案是增量學(xué)習(xí)或在線學(xué)習(xí)[7]。由于深度學(xué)習(xí)在訓(xùn)練過程后,它的結(jié)果是以一種模型文件顯示的,對于特定的分類需求中的特征提取能夠提升準(zhǔn)確率[8[9]。
雖然深度學(xué)習(xí)方法在眾多方面取得了不少研究成果,但有關(guān)深度學(xué)習(xí)的單層訓(xùn)練算法的研究工作較少,進展緩慢。本文在幾種規(guī)模的數(shù)據(jù)集上開展實驗,探討深度神經(jīng)網(wǎng)絡(luò)的單層訓(xùn)練中特征抽取方法。通過調(diào)整圖像塊的大小和隱層節(jié)點的數(shù)量,針對自動編碼器方法和K-means算法在不同訓(xùn)練參數(shù)情況下,分析它們提取圖像樣本數(shù)據(jù)特征的表達性能。
自動編碼器多用于堆疊構(gòu)件深度網(wǎng)絡(luò),一般是逐層預(yù)訓(xùn)練,最后通過反向微調(diào)機制來微調(diào)整個網(wǎng)絡(luò)。
將高維的數(shù)據(jù)用低維信息予以表示,是自動編碼器的特點。它是一個三層的網(wǎng)絡(luò)結(jié)構(gòu),包含輸入層、隱藏層各輸出層。圖1所示為其網(wǎng)絡(luò)結(jié)構(gòu)。其中輸入與輸出均有n個節(jié)點,圖中1為偏置項。
圖1 自動編碼器網(wǎng)絡(luò)結(jié)構(gòu)示意圖Fig.1 AutoEncoder network structure
其中,網(wǎng)絡(luò)的輸入表示為x=(x1,x2,…,xn),輸出表示為y=(y1,y2,…,yn)。自動編碼器的全局代價函數(shù)如公式(1)所示,單次代價函數(shù)如公式(2)所示。其中,K為輸入樣本數(shù),n為輸入維度,xi j,表示樣本i的第j個分量,yi j,表示樣本i對應(yīng)輸出的第j個分量。
采用梯度下降算法訓(xùn)練網(wǎng)絡(luò),輸出層權(quán)值更新如公式(7)所示,隱藏層權(quán)值更新如公式(10)所示,算法迭代推導(dǎo)過程見公式(3)~(7)。
同理利用鏈?zhǔn)角髮?dǎo)法則可得隱層權(quán)值更新算法,見公式(8)~(10)。
O表示輸出層,H表示隱層,hi表示隱藏層第i個節(jié)點的輸出,Io k表示輸出層第k個節(jié)點的累計輸出,IH i表示隱含層第i個節(jié)點的累計輸出,f為sigmod函數(shù),δo k表示輸出層第k節(jié)點的殘差,δH i表示隱含層第i個節(jié)點的殘差。WO表示輸出層節(jié)點的權(quán)值,WH表示隱層節(jié)點的權(quán)值,η表示學(xué)習(xí)率。
經(jīng)過迭代訓(xùn)練得到隱層權(quán)值WH后,用樣本x與它做內(nèi)積運算,便得到了樣本x的特征表示。這種特征映射的方法比K-means算法的特征映射要簡單,但訓(xùn)練映射字典的復(fù)雜度和時間開銷超過K-means算法。
K-mean聚類算法自誕生起就在人工智能領(lǐng)域受到青睞,它的算法思想通俗易懂,且算法計算速度也非??欤且环N無監(jiān)督學(xué)習(xí)算法。該方法假定將某個數(shù)據(jù)集劃分成k個聚簇,簇中心用該簇中所有數(shù)據(jù)的均值計算得到,定義它的誤差函數(shù)如式(11)所示。當(dāng)J的值最小或不再變化時,認(rèn)為聚類過程完成,簇中心的迭代計算見公式(12)所示。算法的學(xué)習(xí)目標(biāo)是使得J最小化。u=(u1,u2,…,uk,…),其中,當(dāng)xn屬于uk簇時,tnk取值為1;否則,取值為0,uk為簇k的均值,即簇中心,M為第k個簇中樣本的數(shù)量,N為樣本數(shù)。
然后,由于K-means算法的初始化是隨機值,有可能造成空聚類的等問題。本文提出一種改進的K-means聚類方法,算法描述見算法1所示。其中,xi表示樣本i,T表示對向量或矩陣做轉(zhuǎn)置,X=(x1,x2,…,xn)表示所有樣本,s表示X在u下的一個映射,si k表示樣本i在u下映射的第k個分量。
算法1一種改進的K-means聚類算法
經(jīng)過訓(xùn)練得到字典u之后,進行特征映射。對字典u的一次映射,要求僅有少量類簇被激活。映射方式見公式(13)所示,其中Feature(x)k表示樣本x特征的第k個分量,md表示樣本x到各個類中心的平均距離,uk是K-means算法訓(xùn)練得到的簇k的均值。這種映射保證了K-means算法抽取的特征的稀疏性,且綜合考慮了樣本以某概率屬于某個聚簇。K-means通過這種方式計算得到的特征的稀疏性,要比普通的自動編碼器得到的特征的稀疏性高。見下文的實驗分析。
3.1 數(shù)據(jù)準(zhǔn)備及預(yù)處理
本文實驗的數(shù)據(jù)集采用minist手寫數(shù)字?jǐn)?shù)據(jù)庫,從60000個訓(xùn)練樣本中,在隨機位置選取不同像素尺寸大小的圖塊,共生成6批數(shù)據(jù),分別是:(1)4*4像素圖像,40000張;(2)4*4像素圖像,80000張;(3)8*8像素圖像,40000張;(4)8*8像素圖像,80000張;(5)16*16像素圖像,40000張(6)16*16像素圖像,80000張。
在開展實驗之前,分別將這些樣本數(shù)據(jù)進行歸一化處理,使得樣本的均值為0,方差為1。歸一化處理見公式(14)所示,std()表示求標(biāo)準(zhǔn)差,x為樣本,xmean為樣本均值。
3.2 樣本數(shù)量大小的影響分析
樣本數(shù)量的大小關(guān)系到特征抽取字典是否豐富,是獲得較好實驗結(jié)果的重要前提之一。在討論樣本數(shù)量大小對特征抽取字典的影響時,實驗選取2批數(shù)據(jù),它們的圖像塊大小固定為8*8像素,樣本數(shù)量分為40000個和80000個。從實驗對比結(jié)果分析,發(fā)現(xiàn)當(dāng)樣本數(shù)量增長一倍時,對K-means算法的影響較弱,而對自動編碼器方法影響較大,見圖2和圖3所示,標(biāo)號8-40000-48表示8*8像素圖塊,樣本數(shù)量40000個,且隱層節(jié)點為48個,以下其他圖中標(biāo)號含義類似。在圖3中,誤差值隨著樣本數(shù)量的增加而逐步減小,結(jié)果表明經(jīng)過訓(xùn)練得到的特征字典更加豐富。
圖2 自動編碼器的特征字典變化分析Fig.2 The Features dictionary changing analysis of AutoEncoder
圖3 K-means的特征字典變化分析Fig.3 The Features dictionary changing analysis of K-means
3.3 感受野大小的影響分析
感受野是人眼觀察一副圖像時,每次抓取多大的局部像素,不同大小的圖像的感受野不一樣??疾旄惺芤皩μ卣鞒槿∽值涞挠绊憰r,實驗選取3批數(shù)據(jù),固定它們的樣本數(shù)量為80000個,感受野的大小依次從4*4像素到8*8像素,再到16*16像素。從模型訓(xùn)練的復(fù)雜度角度來說,圖塊大小增加時,自動編碼器訓(xùn)練的復(fù)雜度會大大增大,如圖4所示。但是圖塊太小,模型學(xué)習(xí)不能獲得特征。當(dāng)圖塊大小為16*16像素時,實驗結(jié)果不理想,如圖5所示,一個重要原因是特征的稀疏性不高。對于K-means來說,圖塊訓(xùn)練結(jié)果分析如下:當(dāng)圖塊太小時,沒有學(xué)習(xí)到邊緣,見圖6所示;當(dāng)圖塊太大時,已經(jīng)學(xué)習(xí)到了具體數(shù)字,見圖7所示,這都不是理想的實驗結(jié)果。針對本文的實驗數(shù)據(jù),圖塊大小保持在8*8像素,相差不到2個單位量是合適的,見圖8,學(xué)習(xí)獲得不同的邊緣,從而可以用學(xué)習(xí)得到的這些邊緣進行特征抽取。
圖4 自動編碼器感受野大小分析Fig.4 Patch size analysis of AutoEncoder
圖5 自動編碼器16*16圖塊學(xué)習(xí)結(jié)果Fig.5 AutoEncoder's learning result about 16*16 patch
圖6 K-means4*4圖塊學(xué)習(xí)結(jié)果Fig.6 K-means's learning result about 4*4
圖7 K-means16*16圖塊學(xué)習(xí)結(jié)果Fig.7 K-means's learning result about 16*16 patch
圖8 K-means 8*8圖塊學(xué)習(xí)結(jié)果Fig.8 K-means's learning result about 8*8 patch
3.4 隱層節(jié)點數(shù)量影響分析
隱層節(jié)點的數(shù)量多少決定了抽取特征的維度,隱層的節(jié)點數(shù)量是自動編碼器的隱層節(jié)點數(shù)和K-means的k的選擇。實驗固定樣本數(shù)據(jù)為圖塊8*8像素大小,樣本數(shù)量80000個。隱層節(jié)點數(shù)考慮40、48和56三種情況。實驗結(jié)果分析,見圖9和圖10所示,從這兩個結(jié)果圖中,可以看到兩種算法的相同之處,增大隱層節(jié)點數(shù)量可降低誤差,當(dāng)考慮到數(shù)據(jù)抽象和降維要求時,應(yīng)該在低維度表示和低誤差之間選取合理的平衡點。
圖9 自動編碼器的隱層節(jié)點數(shù)量分析Fig.9 AutoEncoder hidden layer node analysis
圖10 K-means算法的k值分析Fig.10 Analysis of the value of K about K-means
3.5 實驗結(jié)果
樣本特征抽取的表達效果直接與誤差或平均最小距離相關(guān)。實驗通過參數(shù)調(diào)節(jié),討論分析特征抽取的成效,實驗結(jié)果見表1、表2所示,其中,第1列X-Y表示感受野為X*X大小、數(shù)據(jù)量為Y條。在表1中,第2與第4行表明數(shù)據(jù)量與學(xué)習(xí)率呈負(fù)相關(guān),與誤差呈正相關(guān)。在表1,第3、第4和第5行,表明隱層節(jié)點與誤差呈負(fù)相關(guān),且相關(guān)性較強。在表1中,第1與第4行表明當(dāng)感受野快速變大,誤差快速變大,訓(xùn)練難度增加,兩者相關(guān)性強。
在表2中,根據(jù)第2與第4行結(jié)果,可知當(dāng)數(shù)據(jù)量到達一定數(shù)量時,再增加數(shù)據(jù)量對該算法影響波動較?。坏?、4和5行結(jié)果數(shù)據(jù)可知K值與平均最小距離呈負(fù)相關(guān),平均最小距離隨K值波動不大,表明該算法穩(wěn)定性較好;第1與第4列數(shù)據(jù)表明感受野與平均最小距離呈正相關(guān),且相關(guān)性強。
對比分析表1的第2和第4行與表2的第2和第4行的數(shù)據(jù)結(jié)果,可以發(fā)現(xiàn)自動編碼器方法對數(shù)據(jù)量的敏感度要高于K-means值算法;通過表1與表2的第3、4和5行對比分析可知,自動編碼器對隱層節(jié)點的數(shù)量的敏感度也要高于K-means;通過表1和表2的結(jié)果對比分析,可知二者對感受野都極為敏感。
表1 自動編碼器結(jié)果Table 1 The result of AutoEncoder
表2 K-means結(jié)果Table 2 The result of K-means
本文通過分析樣本數(shù)量、感受野大小和隱層節(jié)點數(shù)等3種因素對自動編碼器方法和K-means算法在特征學(xué)習(xí)方面的性能影響,發(fā)現(xiàn)K-means算法比自動編碼器更容易訓(xùn)練。同時,通過本實驗數(shù)據(jù)評估了兩種算法各自的適用性。實驗結(jié)果表明,對于自動編碼器,樣數(shù)量和感受野大小均與學(xué)習(xí)率成負(fù)相關(guān),且較好好的特征抽取與較低的錯誤率相關(guān),在實際應(yīng)用中,給自動編碼器加入稀疏性控制,往往能取得更好的結(jié)果。
[1] 尹寶才, 王文通, 王立春. 深度學(xué)習(xí)研究綜述[J]. 北京工業(yè)大學(xué)學(xué)報, 2015, 01∶ 48-59.
[2] 楊陽, 張文生. 基于深度學(xué)習(xí)的圖像自動標(biāo)注算法[J]. 數(shù)據(jù)采集與處理, 2015, 01∶ 88-98.
[3] 樊雅琴,王炳皓,王偉,唐燁偉. 深度學(xué)習(xí)國內(nèi)研究綜述[J].中國遠(yuǎn)程教育, 2015, 06∶ 27-33+79.
[4] 陳珍, 夏靖波, 柏駿, 徐敏. 基于進化深度學(xué)習(xí)的特征提取算法[J]. 計算機科學(xué), 2015, 11∶ 288-292.
[5] 楊宇. 基于深度學(xué)習(xí)特征的圖像推薦系統(tǒng)[D]. 電子科技大學(xué), 2015.
[6] 王國昱. 基于深度學(xué)習(xí)的中文命名實體識別研究[D]. 北京工業(yè)大學(xué), 2015.
[7] 岳永鵬. 深度無監(jiān)督學(xué)習(xí)算法研究[D]. 西南石油大學(xué), 2015.
[8] 萬維. 基于深度學(xué)習(xí)的目標(biāo)檢測算法研究及應(yīng)用[D]. 電子科技大學(xué), 2015.
[9] 王茜, 張海仙. 深度學(xué)習(xí)框架Caffe在圖像分類中的應(yīng)用[J].現(xiàn)代計算機(專業(yè)版), 2016, 05∶ 72-75+80.
[10] 趙鵬, 王斐, 劉慧婷, 姚晟. 基于深度學(xué)習(xí)的手繪草圖識別[J]. 四川大學(xué)學(xué)報(工程科學(xué)版), 2016, 03∶ 94-99.
[11] 金連文, 鐘卓耀, 楊釗, 楊維信, 謝澤澄, 孫俊. 深度學(xué)習(xí)在手寫漢字識別中的應(yīng)用綜述[J]. 自動化學(xué)報, 2016, 08∶1125-1141.
[12] Mahmood Yousefi-Azar, Len Hamey, Text summarization using unsupervised deep learning, Expert Systems with Applications, Volume 68, February 2017, Pages 93-105, ISSN 0957-4174, Keywords∶ Deep Learning; Query-oriented Summarization; Extractive Summarization; Ensemble Noisy Auto-Encoder.
[13] Zhong Yin, Jianhua Zhang, Cross-session classification of mental workload levels using EEG and an adaptive deep learning model, Biomedical Signal Processing and Control, Volume 33, March 2017, Pages 30-47, ISSN 1746-8094.
Research of Feature Extraction Method for Offline Handwritten Character Based on Deep Learning
ZOU Yu, LIU Xing-wang
(College of Computer Science, South-Central University for Nationalities, Wuhan 430074)
In currently, there are few studies of monolayer training algorithms about deep learning. In this paper, We analyze the performance of the AutoEncoder and K-means in training deep network and feature extraction on three points∶data volume, hidden layer nodes and receptive field. We find that automatic encoder is sensitive to data volume and hidden layer nodes,and learning rate has a negative correlation with data volume and receptive field. After a certain amount of data, K-means is not sensitive to data volume, so select receptive field size plays a crucial performance for the algorithm. In practice, added sparsity control into AutoEncoder is necessary. Experimental results shows that studies of this paper has reference value for training deep network with AutoEncoder or K-means.
Deep learning; K-means; AutoEncoder; Receptive field; Data volume; Hidden layer nodes
TP391.43
A
10.3969/j.issn.1003-6970.2017.01.006
國家自然科學(xué)基金資助項目(60975021,女書規(guī)范化及識別技術(shù)研究)
鄒煜(1985-),男(通信作者),碩士研究生,研究方向為人工智能與模式識別;劉興旺(1991-),男,碩士研究生,研究方向為文字圖像處理。