王茜,張海仙(四川大學(xué)計(jì)算機(jī)學(xué)院,四川 成都 610065)
基于深度神經(jīng)網(wǎng)絡(luò)的汽車車型識(shí)別
王茜,張海仙
(四川大學(xué)計(jì)算機(jī)學(xué)院,四川成都610065)
深度學(xué)習(xí)的概念起源于人工神經(jīng)網(wǎng)絡(luò),是指具有多層結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò)。深度學(xué)習(xí)主要從仿生學(xué)的角度模仿神經(jīng)系統(tǒng)的層次結(jié)構(gòu),低層次表示細(xì)節(jié),高層次表示抽象的數(shù)據(jù)結(jié)構(gòu)特征,通過(guò)逐層抽象,高度挖掘數(shù)據(jù)的本質(zhì)信息,從而達(dá)到學(xué)習(xí)的目的。
在過(guò)去,多層神經(jīng)網(wǎng)絡(luò)面臨著訓(xùn)練困難的問(wèn)題,一方面是數(shù)據(jù)集限制,在不足的數(shù)據(jù)上進(jìn)行訓(xùn)練會(huì)導(dǎo)致過(guò)擬合;另一方面是網(wǎng)絡(luò)復(fù)雜性的影響。常用的反向傳播算法(BP)也存在陷入局部最優(yōu)、梯度彌散等問(wèn)題。這無(wú)疑阻礙了神經(jīng)網(wǎng)絡(luò)的進(jìn)一步研究。2006年,Hinton提出的貪婪的逐層訓(xùn)練算法為深度學(xué)習(xí)取得了突破性的進(jìn)展[1]。貪婪的逐層訓(xùn)練算法解決了深度學(xué)習(xí)在訓(xùn)練上的難點(diǎn),并且多層次的神經(jīng)網(wǎng)絡(luò)具有優(yōu)異的學(xué)習(xí)能力,得到的特征具有更好的表達(dá)能力,從而可以更好地進(jìn)行可視化和分類。
目前,典型的深度學(xué)習(xí)的網(wǎng)絡(luò)模型有三類,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)模型、受限莫爾茲曼(Restricted Boltzmann Machines)模型以及堆棧式自動(dòng)編碼機(jī)(Stacked Auto-encoder Network)模型。人工神經(jīng)網(wǎng)絡(luò)通過(guò)層與層完全連接的方式搭建起來(lái),引入了龐大的參數(shù)空間,尤其是在輸入尺寸比較大的情況下,網(wǎng)絡(luò)的完全連接給計(jì)算機(jī)帶來(lái)了存儲(chǔ)和計(jì)算的沉重負(fù)擔(dān)。而自然圖像具有一個(gè)重要的特性:統(tǒng)計(jì)不變性(穩(wěn)定性)。同一圖像的不同區(qū)域具有相同的統(tǒng)計(jì)特性,這意味著我們?cè)趫D像的部分區(qū)域?qū)W到的特征可以應(yīng)用到整個(gè)圖像中。卷積神經(jīng)網(wǎng)絡(luò)通過(guò)局部連接的方式,共享權(quán)值,進(jìn)而有效地解決完全連接的問(wèn)題,這也使卷積神經(jīng)網(wǎng)絡(luò)在圖像處理方面具有獨(dú)特的優(yōu)越性。
傳統(tǒng)的車型識(shí)別技術(shù)包括車輛檢測(cè)分割、特征提取與選擇、模式識(shí)別等處理。這類技術(shù)面臨著諸多難點(diǎn):如何在復(fù)雜背景下分割出完整的目標(biāo)車輛區(qū)域是車型識(shí)別的前提和基礎(chǔ),圖1從各個(gè)角度下拍攝的汽車圖片,從上到下依次為SUV、皮卡車、面包車以及小轎車而目標(biāo)車輛分割的質(zhì)量直接關(guān)系著最后車型分類的結(jié)果;如何在汽車的眾多特征中選擇具有代表性的特征,并將其轉(zhuǎn)化成有效的參數(shù)也格外重要;在得到特征參數(shù)后,如何正確選擇和設(shè)計(jì)分類器也直接影響著最后識(shí)別的準(zhǔn)確率。在本文中,我們的神經(jīng)網(wǎng)絡(luò)采用原始圖像作為網(wǎng)絡(luò)的輸入,原始數(shù)據(jù)通過(guò)由卷積層、完全連接層以及Softmax層組成的深度神經(jīng)網(wǎng)絡(luò)進(jìn)行處理,省去了圖像分割、手工提取特征等步驟。
表1 VGG16網(wǎng)絡(luò)配置
表2 AlexNet網(wǎng)絡(luò)配置
我們數(shù)據(jù)集包含運(yùn)動(dòng)型多功能車(SUV)、皮卡車、面包車以及小轎車四類,訓(xùn)練集和測(cè)試集分別包含998張和248張圖像。該數(shù)據(jù)集是從各個(gè)角度下拍攝的汽車圖像,圖像大小不統(tǒng)一,背景復(fù)雜,目標(biāo)車輛在整個(gè)圖像中所占比例相差較大,這些因素大大增加了車型識(shí)別的難度。
為了保持網(wǎng)絡(luò)輸入大小一致性,我們將原始圖像調(diào)整為統(tǒng)一的256×256×3尺寸。然后,我們計(jì)算出所有圖像RGB三個(gè)通道的均值,對(duì)輸入數(shù)據(jù)進(jìn)行0均值標(biāo)準(zhǔn)化處理。在網(wǎng)絡(luò)訓(xùn)練測(cè)試時(shí),選取224×224×3的樣本作為輸入。
圖1
本文采用文獻(xiàn)[2]中提出的深度神經(jīng)網(wǎng)絡(luò)VGG16。VGG16網(wǎng)絡(luò)在ILVRC 2014(ImageNeLarge-Scale Visu-al Recognition Challenge 2014)挑戰(zhàn)賽中獲得第一名。該網(wǎng)絡(luò)主要包含5個(gè)堆棧式的卷積神經(jīng)網(wǎng)絡(luò)ConvNet,3個(gè)完全連接層以及1個(gè)Softmax層,是一個(gè)“網(wǎng)絡(luò)中的網(wǎng)絡(luò)”架構(gòu)。每個(gè)ConvNet由多個(gè)卷積層組成,后面緊跟著Max-Pooling層。在卷積和池化之后,經(jīng)過(guò)3層的完全連接,最后一個(gè)完全連接層的輸出作為Softmax層的輸入,生成車型分類的結(jié)果。該網(wǎng)絡(luò)增加了非線性的ReLU層,卷積層和完全連接層的輸出都經(jīng)過(guò)ReLU的處理,這可以大大縮短了網(wǎng)絡(luò)訓(xùn)練的時(shí)間。此外,該網(wǎng)絡(luò)還使用一種正則化方法Dropout,避免在完全連接層上出現(xiàn)過(guò)擬合(Overfitting)的現(xiàn)象。
表3 VGG16、AlexNet以及KNN分類結(jié)果
而另外一個(gè)網(wǎng)絡(luò)Alexnet[3],該網(wǎng)絡(luò)相比于VGG簡(jiǎn)單,該網(wǎng)絡(luò)主要由5個(gè)卷積層,3個(gè)完全連接層和Softmax層組成,部分卷積層后緊跟著Max-Pooling層。該網(wǎng)絡(luò)同樣應(yīng)用了非線性的ReLU層,重疊池化(Overlapping Pooling)的方式在某種程度上降低了過(guò)擬合的幾率。
我們的深度神經(jīng)網(wǎng)絡(luò)VGG16和AlexNet搭建在Caffe框架,運(yùn)行在GeForce GTX TITAN X GPU工作站,運(yùn)算效率很高。單一的網(wǎng)絡(luò)訓(xùn)練只需要2個(gè)小時(shí),測(cè)試一張圖片僅需要大約0.2秒。除了使用網(wǎng)絡(luò)進(jìn)行訓(xùn)練和測(cè)試外,我們還采用了經(jīng)典的分類算法KNN[4]對(duì)車型進(jìn)行分類,表2為我們的實(shí)驗(yàn)結(jié)果。從表中可以看出,VGG16網(wǎng)絡(luò)對(duì)汽車車型分類有最好的表現(xiàn),準(zhǔn)確率高達(dá)97.6%,其次為AlexNet網(wǎng)絡(luò),為93.0%,而傳統(tǒng)的KNN算法對(duì)于背景復(fù)雜的圖片,分類能力最弱,僅有50.4%。圖2為VGG16網(wǎng)絡(luò)錯(cuò)誤分類的個(gè)別圖像,從圖中可以看出,面包車是完全正確分類的。錯(cuò)誤分類的三個(gè)SUV車型中,第一個(gè)是因?yàn)檐囆徒Y(jié)構(gòu)太類似皮卡車,第二個(gè)是由于車的顏色由兩部分組成,而紅色部分剛好與皮卡車車型雷同,第三個(gè)的背景混入了其他車,這對(duì)分類結(jié)果也造成了一定影響。對(duì)于圖像中僅包含車頭的車型識(shí)別,其本身也存在一定難度,不同車型可能從正面角度觀看的差異性不大,人也可能做出錯(cuò)誤判斷。
本文主要采用深度學(xué)習(xí)方法,結(jié)合先進(jìn)的深度學(xué)習(xí)框架Caffe和強(qiáng)大計(jì)算能力的GPU,對(duì)四類汽車進(jìn)行車型識(shí)別。實(shí)驗(yàn)結(jié)果顯示,VGG16網(wǎng)絡(luò)的準(zhǔn)確率最高,而傳統(tǒng)的經(jīng)典分類算法準(zhǔn)確率只有VGG16的一半左右。由此可見(jiàn),深度神經(jīng)網(wǎng)絡(luò)具有強(qiáng)大的學(xué)習(xí)能力,在圖像分類問(wèn)題上具有強(qiáng)大的優(yōu)勢(shì)。在今后的工作中,我們會(huì)嘗試調(diào)整深度神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu),將其應(yīng)用到更多類型的圖像分類問(wèn)題中去。
圖2 VGG16預(yù)測(cè)錯(cuò)誤樣本
[1]Hinton G E,Osindero S,Teh Y W.A Fast Learning Algorithm For Deep Belief Nets[J].Neural Computation,2006,18(7):1527-1554.
[2]Krizhevsky A,Sutskever I,Hinton G E.ImageNet Classification with Deep Convolutional Neural Networks[J].Advances in Neural Information Processing Systems,2012,25:2012.
[3]Simonyan K,Zisserman A,Simonyan K,et al.Very Deep Convolutional Networks for Large-Scale Image Recognition[J].Eprint Arxiv,2014.
[4]K.P Soman,Shyam Diwakar,V.Ajay.Insight into Data Mining Theory and Practice.China Machine Press.
Deep Learning;Vehicle Recognition;Convolutional Neural Network
The Depth of Vehicle Recognition Based on Neural Network
WANG Qian,ZHANG Hai-xian
(College of Computer Science,Sichuan University,Sichuan 610065)
1007-1423(2015)35-0061-04
10.3969/j.issn.1007-1423.2015.35.013
王茜(1990-),女,四川眉山人,在讀碩士研究生,研究方向?yàn)闄C(jī)器智能
張海仙(1980-),女,河南鄧州人,博士研究生,副教授、研究方向?yàn)闄C(jī)器智能,Email:zhanghaixian@scu.edu.cn
2015-11-12
2015-12-10
研究基于深度學(xué)習(xí)的車型自動(dòng)識(shí)別技術(shù),運(yùn)用深度神經(jīng)網(wǎng)絡(luò)對(duì)在各個(gè)角度下拍攝的具有復(fù)雜背景的汽車圖像進(jìn)行網(wǎng)絡(luò)訓(xùn)練,從而達(dá)到車輛車型的自動(dòng)識(shí)別的目的。采用先進(jìn)的深度學(xué)習(xí)框架Caffe和具有強(qiáng)大計(jì)算能力的GPU,使用深度神經(jīng)網(wǎng)絡(luò)VGG16和AlexNet,分別對(duì)汽車圖像進(jìn)行網(wǎng)絡(luò)訓(xùn)練與測(cè)試,并通過(guò)與傳統(tǒng)的分類算法,K最近鄰進(jìn)行對(duì)比研究。實(shí)驗(yàn)顯示,VGG16網(wǎng)絡(luò)模型準(zhǔn)確率高達(dá)97.58%,在汽車車型識(shí)別問(wèn)題上具有很大優(yōu)勢(shì)。
深度學(xué)習(xí);車型識(shí)別;卷積神經(jīng)網(wǎng)絡(luò)
四川省科技計(jì)劃項(xiàng)目(No.2014GZ0005-5)
Studies the recognition of vehicle types based on deep learning methods.Deep neural network is trained to classify automobile images which are shot from different angles with complex background.Uses the cutting-edge Deep Learning architecture,Caffe and a powerful computational platform,GPU.VGG16 network and AlexNet network are trained and tested for this task respectively.Moreover,applies the classical algorithm,K-Nearest Neighbor for comparison.The result suggests that VGG16 network outperform other methods by a big margin with the accuracy of 97.58%.