江彤彤,成金勇,鹿文鵬
(齊魯工業大學 信息學院,濟南 250353)
基于卷積神經網絡多層特征提取的目標識別①
江彤彤,成金勇,鹿文鵬
(齊魯工業大學 信息學院,濟南 250353)
目標識別一直是人工智能領域的熱點問題. 為了提高目標識別的效率,提出了基于卷積神經網絡多層特征提取的目標識別方法. 該方法將圖像輸入卷積神經網絡進行訓練,在網絡的每個全連接層分別進行特征提取,將得到的特征依次輸入到分類器,對輸出結果進行比較. 選取經過修正線性單元relu函數激活的低層全連接層作為特征提取層,比選取高層全連接層特征提取的識別率高. 本文構建了辦公用品數據集,實現了基于卷積神經網絡多層特征提取的辦公用品識別系統. 選擇AlexNet卷積神經網絡模型的relu6層作為特征選取層,選擇最優訓練圖像數量和最優分類器構建系統,從而證明了該方法的可行性.
卷積神經網絡; 特征提取; 深度學習; 識別; 分類器
近年來,深度學習方法因為具有更高的靈活性和普適性得到迅速發展. 卷積神經網絡(Convolutional neural networks,CNN) 是一項實現深度學習應用廣泛的技術,應用在多個領域并取得優異效果,其中包括手寫字符識別[1,2],人臉識別[3],人眼檢測[4],行人檢測[5],機器人導航[6]等.
卷積神經網絡首次應用在20世紀80年代末,美國紐約大學教授LeCun等人[7]提出用手寫數字識別作為美國銀行識別票據的工具,并在識別系統中應用CNN.2012年,加拿大多倫多大學教授深度學習領軍人物Alex Krizhevsky[8]構建深層的卷積神經網絡在大尺度圖像識別數據集ImageNet上測試識別率在84.7%左右.
本文提出基于卷積神經網絡多層特征提取的目標識別方法. 針對卷積神經網絡在全連接層的每層所提取的特征輸入到分類器得到的識別效果進行分析,在卷積神經網絡提取特征所選取的特征層,并非在全連接的最后一層效果最好,實驗結果表明relu6層效果突出. 使用多種分類器分別在數據集Caltech101中結合卷積神經網絡提取的特征做分類處理,實驗結果表明提取特征一致時,與支持向量機分類器相結合的圖像識別方法效果最好,更適合處理數量大的圖像,并且有效的提高了識別的速度和識別精度. 對不同訓練圖像個數輸入卷積神經網絡訓練的識別效果進行分析,隨訓練圖像數量增加,識別率增加,增加速度漸緩. 以上實驗說明基于卷積神經網絡多層特征提取的目標識別方法是有效的、可行的. 使用此方法針對辦公用品進行分類識別獲得識別率,并與攝像頭連接進行實時識別.
如今應用廣泛的CNN模型中,比較成熟的是針對手寫體的LeNet-5模型如圖1所示. 特征提取階段的卷積神經網絡的結構可以概括為由卷積層和子采樣層兩類結構交替構成的,該網絡的輸入是32×32的圖像,如圖1所示,將輸入層C1、S2、C3、S4、C5構成目標子塊的特征提取部分,輸入層讀入目標,子塊中的每一個像素看作神經元,C1層是一個由6個28×28特征圖構成的卷積層,即6個特征圖分別對應6個卷積濾波器,每個神經元與輸入圖像的一個 5×5的鄰域相連接. 每個卷積層后面跟隨著一個降采樣層,S2層是子采樣層,是由 6 個大小為 14×14 的特征圖組成,進行2x2的平均化降采樣的操作特征圖中的每個神經元與C1中相對應特征圖的2*2區域相連,S2層每個神經元的結果由C1層相鄰的4個神經元相加后乘以可訓練權值參數,再加上一個可訓練偏置參數,最后通過sigmoid函數計算得到,降采樣層進行局部平均和降采樣的操作,降低特征圖的分辨率,同時降低了網絡輸出對于位移和變形的敏感程度[9]. 卷積神經網絡采用的是權值共享,這樣一來通過一個特征圖上的神經元共享同樣的權值就可以大大減少自由參數,可以用來檢測相同的特征在不同角度表示的效果從而得到更好的魯棒性[10].

圖1 LeNet-5 模型圖
目前識別領域的分類器有很多種,其中支持向量機分類器和softmax分類器針對圖像識別有突出表現.
Vapnik[11]等提出的支持向量機(Support vector machine,SVM)是解決分類問題的一個重要方法,該方法將高位特征空間的點積運算替代為原空間的核函數,降低了計算的復雜性. 支持向量機能保證所得極值解就是全局最優解,減少了神經網絡容易陷入局部最小的可能,因此它在解決小樣本、非線性及高維模式識別中均表現出許多特有的優勢[7].
Softmax分類器是在深度學習中經常被提到的分類器,該分類器是在多分類問題中logistic回歸模型的擴展. Softmax分類器對于諸如MNIST手寫數字分類等問題上有很好的效果,該問題就是識別不同的單個數字和圖像,可以應用于車牌識別、目標檢測等方向.
多分類SVM分類器是具有較強泛化能力的通用學習算法,不但可以處理非線性、高維數的分類問題,而且能夠解決神經網絡中經常出現的局部極小值的問題,被廣泛應用于圖像識別領域并取得良好的效果. 但多分類SVM算法本質是通過二次規劃獲得支持向量的,當分類樣本數量n較大時,算法進行的n階矩陣運算不僅計算量巨大,并且占機器內存大,運行速度緩慢.需要應用多分類SVM分類器的魯棒性和泛化能力的優點去解決大量圖像識別問題,結合提取特征降維可以減少計算量,提高計算速度.
選擇卷積神經網絡提取特征的原因,一方面,圖像可以直接輸入到卷積神經網絡中訓練,比其他網絡的預處理工作簡單. 另一方面卷積神經網絡的卷積和下采樣工作是圖像進行平移操作,根據平移不變性,提取出的特征向量與原始數據不僅不會過度擬合而且結果相同,這樣省去對樣本進行變造的過程,使得圖像中的平移部分對于最后的特征向量是沒有影響的. 除此之外,卷積神經網絡的卷積和下采樣具有可變性和靈活性,可以改變特征向量大小的特點,當分類器有擬合現象可以通過調節特征向量維數解決.
兩種方法相結合取長補短,SVM解決了神經網絡的局部極小值的問題,卷積神經網絡提取特征解決了SVM算法的處理大樣本問題,同時減少擬合現象提高運行速率. 選取合適的CNN模型和特征提取層是分類識別的重要問題. 根據多種論文中提出的一般選擇分類層的前一層作為特征提取層的問題,提出在不同全連接層都進行特征提取的方法與上述結論進行對比.因此本文提出基于CNN多層特征提取的目標識別方法.
本文設計的基于卷積神經網絡多層特征提取的目標識別系統整體框圖如圖2所示.
CNN多層特征提取模型包括訓練CNN模型和特征提取兩個部分.
本文采用的是由Alex Krizhevsky等人[8]提出的大型的深度卷積神經網絡,其中總共有23層,包含八個學習層——五個卷積層、三個全連接層的卷積神經網絡,網絡的構建過程如圖3所示,最后一個全連接層的輸出被送到一個Softmax層,通過Softmax分類層分1000 類標簽,該框架 ImageNet ILSVRC-2012 大賽中依靠top-5測試誤差率15.3%取得了勝利.

圖2 多層特征提取目標識別系統流程圖
第一個卷積層利用96個大小為11×11×3、步長為4個像素的核,來對大小為224×224×3的輸入圖像進行濾波. 第二個卷積層需要將第一個卷積層經過歸一化和下采樣后的輸出作為自己的輸入,且利用256個大小為5×5×48的核對其進行濾波. 第三、第四和第五個卷積層彼此相連,沒有任何介于中間的下采樣層與歸一化層. 第三個卷積層有384個大小為3×3×256的核被連接到第二個卷積層的輸出. 第四個卷積層擁有384個大小為3×3×192的核,第五個卷積層擁有256個大小為3×3×192的核. 全連接層都各有4096個神經元. 全連接層有三層,在三層全連接層中選取一層得到4096張特征圖排列為一條列向量,得到最終的特征向量.
AlexNet共8層學習層,包括5個卷積層和3個全連接層. 第1、2層卷積后進行局部相應歸一化. 第1、2、5層有重疊池化. 卷積層和全連接層的每層輸出都有relu. 是一種經典的達到速度快、錯誤率低的一種卷積神經網絡.
AlexNet模型使用Nair和Hinton[12]提出的修正線性單元(relu)作為激活函數,式(1)是relu函數,訓練帶relu的深度卷積神經網絡比帶tanh單元的同等網絡要快好幾倍,式(2)是tanh函數. 式(3)是傳統的非線性的 Sigmoid 函數,雙側抑制,增大中央區信號,同時抑制兩側信號. relu模型是近似生物神經激活函數,其特點是單側抑制、相對寬闊的興奮邊界以及稀疏激 活性.

圖3 Alex Krizhevsky等人提出的大型的深度卷積神經網絡AlexNet模型圖[8]

根據公式 (1)(2)(3)所得,relu 函數是分段函數,在大于0時導數不變,反向傳播梯度,而且不容易出現梯度發散問題,sigmoid和tanh函數的導數比較復雜,在兩端接近目標時,導數變小. 根據神經網絡訓練的原理,導數變小會導致誤差反向傳播,收斂慢. relu函數右側不發散,所以多處隱含層輸出為0,網絡因此變得稀疏,降低過擬合的可能性,提高卷積效率. 因此經過relu函數激活后的全連接卷積層進行特征提取的識別率明顯比全連接卷積層的識別率高.
選取全連接層作為特征提取層,AlexNet卷積神經網絡模型中分為三個全連接層從前往后分別命名為fc6、fc7、fc8,在fc6、fc7卷積層后面都有relu層以提高速率,這兩層也包含在特征提取層的范圍內.
多分類SVM分類器作為一種具有較強泛化能力的通用學習算法,被廣泛應用于圖像識別領域并取得良好的效果. 但使用多分類SVM解決小樣本問題有較好的效果,在解決數量大、類型多的圖像集時,比較不進行特征提取的多分類SVM識別識別率,使用卷積神經網絡特征提取后進行多分類類SVM識別的效果最佳,為了驗證本文提出的卷積神經網絡多層特征提取的有效性,選擇SVM分類器對特征進行訓練和測試.
Caltech 101數據集創造在2003年9月,編寫由Fei-FeiLI,Marco Andreetto 和 Aurelio Ranzato 在加州理工學院. Caltech 101數據集包括總共9146個圖象如圖4所示,101個區別對象類別,以及一個另外的背景或凌亂類別. 每個對象類別平均包含在40個和800個圖象之間.

圖4 Caltech101 數據集
辦公用品數據集是由15類物品,共450個圖像,有15類辦公室中常見物品,每類物品30張圖像,圖像由百度圖庫和淘寶網提供,如圖5所示.
Caltech 101數據集中每類圖像個數的限制,取102類圖像做實驗時,取這102類中圖像個數最小的作為整個實驗的數據集,每類31張.
在使用CNN提取特征前,將圖像處理為image data store 格式,該格式存儲每個圖像的位置,提取每個圖像的名字作為標簽,將輸入CNN網絡的數據集中所有彩色圖像的大小重置為227*227*3.

圖5 辦公用品自建數據集
本文將提出基于AlexNet卷積神經網絡模型特征提取,用matlab自帶的多分類支持向量機進行分類的目標識別方法,簡稱為ACNSVnet,用Softmax分類器進行分類的方法稱為ACNSOFTnet. 在Caltech 101數據集中,固定訓練個數,單獨使用Softmax分類器和支持向量機分類的識別率分別只有56%和10%左右. 由于圖像數據集的數量過大、標簽種類多單獨使用這兩種分類器運算復雜、容易判斷錯誤導致運算時間很慢、識別率低、效率低,因而效果不佳. 現用ACNSVnet方法得到的識別率約在87.91%左右,去除數據集中凌亂數據集得到的識別率為89.10%,該方法不僅提高了識別率,也增加了速度,整體增加圖像識別系統的效率.
表1對比了在AlexNet卷積神經網絡模型中,固定每個類別的訓練圖像個數為21張,測試圖像為10張,進行三折交叉驗證取平均值得到的從不同層中提取特征所得到的實驗效果,其中識別率按照式(4)計算,選取 fc6、relu6、fc7、relu7、fc8 五個全連接層作為特征提取層得到的實驗結果.


表1 特征提取層的識別率和時間
根據以往經驗和各種論文中提到的基于卷積神經網絡進行特征提取應在卷積神經網絡分類層前一層的全連接層中進行,該實驗結果表明并非在最后一層全連接層進行特征提取得到的效果最優,最后一層全連接層特征提取分類的結果為79.8%,前兩層全連接層的特征提取分類結果遠遠高于最后一層的結果分別為84.71%和83.04%. 根據實驗可以發現前兩個全連接的識別率相差不大. 出現這種情況的原因是因為隨著全連接層數越往后的增加,導致過度擬合,從而識別率下降,所以當構建全連接層數較多的卷積神經網絡模型時,特征提取層應選取在低層的全連接層中.
實驗結果表明,選取經過relu函數激活后的全連接卷積層(relu6和relu7)進行特征提取的識別率87.25%和84.02%比全連接卷積層的識別率(fc6和fc7)高. 這里的原因很簡單,前面已經提到過relu是激活函數可以提高卷積神經網絡的效率. relu函數是分段函數,在大于 0 時導數不變,反向傳播梯度,而且不容易出現梯度發散問題,右側不發散,所以多處隱含層輸出為 0,網絡因此變得稀疏,降低過擬合的可能性,提高卷積效率.
表2對比了每個類別訓練圖像個數在fc6層和relu6層的識別率和運行時間,這里受到Caltech 101數據集中每類圖像個數的限制,每類取5張遞增到25張圖像作為訓練集的數據進行實驗.

表2 fc6層和relu6層不同訓練圖像個數的識別率和時間
實驗結果表明,在relu6層中提取特征,25張訓練圖像范圍內,隨訓練數據的增大,識別率越高. 當訓練圖像在15張時識別率為84.62%,而在18張部分識別率為87.10%,在這期間識別率提高了三個百分點,訓練圖像大于18張的實驗識別率都平均保持在87%-88% 之間,識別結果穩定. 實驗結果說明,隨著訓練圖像的增加,運行時間基本也是逐漸增加的. 同時,通過對比fc6層和relu6層的結果表明,在訓練集個數相同情況下在relu6層取特征得到的識別率總是高于fc6,運行時間相對fc6層相對短. 所以綜上三個結果,為了提高識別系統的效率,選擇在relu6層提取特征,選取每類訓練圖像個數在18-25張左右的圖像,這一方面提高了識別率,另一方面縮短系統運行的時間.
分類器除了支持向量機還有Softmax、BP神經網絡、經常使用的libsvm,使用卷積神經網絡對數據集Caltech101提取特征,將特征輸入到上述分類器中其結果分別如表3,表4,表5 所示.

圖6 relu6層提取特征訓練圖像個數與識別率的關系

表3 Softmax 分類器的特征提取層識別率

表4 libsvm 分類器的特征提取層識別率

表5 BP 神經網絡分類器的特征提取層識別率
相比較而言,matlab自帶的多分類支持向量機在relu6層獲得最優異的識別率,Softmax分類器的識別率更加穩定結果與多分類支持向量機區別不大. 而libsvm識別率較低,BP神經網絡由于網絡復雜,根據不同圖像集需要進行參數調整,訓練速度非常慢,識別率也不理想. 根據實驗結果表明,選擇matlab自帶的多分類支持向量機為最優選擇,Softmax分類器可以作為代替該分類器的另一個比較好的選擇,而libsvm和BP神經網絡在識別率和時間上都不占優勢,在這類實驗中不是最優選擇.
根據上述三個實驗得到的結論,使用自建辦公用品數據集進行實驗,在五類不同特征提取層中獲得的識別率. 預處理同上,根據上述結論為了提高識別系統的效率,選取matlab自帶多分類支持向量機作為分類器,選取每類訓練圖像個數在18-25張左右的圖像,該實驗選擇25張訓練圖像,5張圖像進行測試,并進行三折交叉驗證取平均值得到的從不同層中提取特征所得到的實驗效果如表6所示.

表6 SVM分類器的特征提取層在自建辦公用品數據庫識別率
根據實驗結果發現,選取經過relu函數激活后的全連接卷積層(relu6和relu7)進行特征提取的識別率明顯比全連接卷積層的識別率(fc6和fc7)高,與第一個實驗結果一致,所以當構建全連接層數較多的卷積神經網絡模型時,特征提取層應選取在低層的全連接層中.
構建辦公用品識別系統分為兩步分別為訓練和識別. 訓練部分選取AlexNet卷積神經網絡模型的relu6層作為特征選取層,輸入375張辦公用品圖像(每類25張訓練圖像)到卷積神經網絡模型進行訓練并提取特征,將得到的特征提取集輸入到matlab多分類支持向量機分類器中進行訓練. 剩余75張(每類5張測試圖像)對識別系統進行測試,得到識別率. 使用c#作為接口將電腦連接攝像頭實時截圖所拍物品,將所截圖像輸入到識別系統進行識別得到識別結果. 針對辦公室機器人圖像識別方向的研究做了一個簡單的系統,有助于快速實時的定位物品.
本文提出基于卷積神經網絡多層特征提取的目標識別的方法,對圖像數據集進行分類,針對選取特征提取層效果最優的問題進行了研究. 分類結果表明在卷積神經網絡中提取特征所選取的特征層,并非在全連接的最后一層或分類層的前一層效果最好. 因為全連接層的作用是在一個更加抽象的層次上學習,隨著全連接層數越往后的增加,導致過度擬合,提取的特征從而識別率下降,所以當構建全連接層數較多的卷積神經網絡模型時,特征提取層應選取在低層的全連接層中. 在本次實驗中經過relu函數激活后的全連接卷積層relu6,進行特征提取的識別率87.25%遠遠高于在最后一層全連接層fc8提取特征的識別率79.8%,relu6層較relu7層是低層的全連接層. 實驗結果表明當提取的特征一致時,選取每類訓練圖像個數在18-25張左右的圖像,與支持向量機分類器相結合圖像識別方法效果最好,在辦公用品數據集中識別率最高能達到92%的識別率. 以上實驗說明基于卷積神經網絡多層特征提取的目標識別的方法是有效的、可行的. 本文構建了辦公室用品數據集,并連接攝像頭實現了針對辦公室用品的實時目標識別系統. 本文提出的方法可以推廣應用于目標識別的各個領域.
1Wei XH,Lu SJ,Wen Y,et al. Recognition of handwritten Chinese address with writing variations. Pattern Recognition Letters,2016,73: 68–75. [doi: 10.1016/j.patrec.2015.12.018]
2Singh P,Verma A,Chaudhari NS. On the performance improvement of devanagari handwritten character recognition. Applied Computational Intelligence and Soft Computing,2015,2015: 193868.
3Zhang L,Song YY,Liu L,et al. Dissociable roles of internal feelings and face recognition ability in facial expression decoding. NeuroImage,2016,132: 283–292. [doi: 10.1016/j.neuroimage.2016.02.049]
4徐歡,高雁鳳,鄭恩輝,等. 一種用于駕駛員疲勞檢測的人眼檢測方法. 計算機工程,2013,39(9): 254–257,276.
5江源遠,胡進,蘇芮琦,等. 基于積分通道特征的車輛前方行人檢測方法研究. 2016中國汽車工程學會年會論文集.上海. 2016.
6Charalampous K,Kostavelis I,Gasteratos A. Robot navigation in large-scale social maps: An action recognition approach.Expert Systems with Applications,2016,66: 261–273. [doi:10.1016/j.eswa.2016.09.026]
7LeCun Y,Bottou L,Bengio Y,et al. Gradient-based learning applied to document recognition. Proc. of the IEEE,1998,86(11): 2278–2324. [doi: 10.1109/5.726791]
8Krizhevsky A,Sutskever I,Hinton GE. ImageNet classification with deep convolutional neural networks. Proc. of the 25th International Conference on Neural Information Processing Systems. Lake Tahoe,Nevada,USA. 2012. 1097–1105.
9任陳俊,仲朝亮,劉士榮,等. 基于卷積神經網絡的場景運動目標分類研究. 中國自動化學會控制理論專業委員會.第三十四屆中國控制會議論文集(C卷). 杭州,中國. 2015.
10Ijjina EP,Chalavadi KM. Human action recognition using genetic algorithms and convolutional neural networks.Pattern Recognition,2016,59: 199–212. [doi: 10.1016/j.patcog.2016.01.012]
11Vapnik VN. The Nature of Statistical Learning Theory. New York,USA: Springer,1995.
12Nair V,Hinton GE. Rectified linear units improve restricted Boltzmann machines. Proc. of the 27th International Conference on Machine Learning. Haifa,Israel. 2010.
Target Recognition Based on Multilayer Feature Extraction of Convolution Neural Network
JIANG Tong-Tong,CHENG Jin-Yong,LU Wen-Peng
(School of Information,Qilu University of Technology,Jinan 250353,China)
Target recognition has been the hot issue in the field of artificial intelligence. In order to enhance the efficiency of target recognition,this paper proposes a method based on multilayer feature extraction of convolutional neural network.By inputting images into convolutional neural network for training,this method implements feature extraction at each full connection layer of network,inputs the features obtained into classifier,and then compares the output results. The lower full connection layer activated by relu function is selected as feature extraction layer,whose recognition rate is higher than that in higher full connection layer. This paper builds up office supplies dataset,and realizes the office supplies identification system based on the multilayer feature extraction of convolutional neural network. The layer relu6 of AlexNet is selected feature extraction layer,and the optimal training image quantity as well as the optimal classifier construction system is chosen,which verifies the feasibility of this method.
convolution neural networks; feature extraction; deep learning; recognition; classifier
江彤彤,成金勇,鹿文鵬.基于卷積神經網絡多層特征提取的目標識別.計算機系統應用,2017,26(12):64–70. http://www.c-sa.org.cn/1003-3254/6082.html
國家自然科學基金(61502259); 山東省自然科學基金(ZR2011FQ038)
2017-03-03; 修改時間: 2017-03-20; 采用時間: 2017-03-29