張貴英
摘 要:當(dāng)前,采用卷積神經(jīng)網(wǎng)絡(luò)進行圖像目標檢測和識別是一大研究熱點,并取得了不少研究成果。這些成果在研究過程中使用大量有標簽的訓(xùn)練樣本作為訓(xùn)練集起了至關(guān)重要的作用。文章以人臉識別為例,闡述了多樣本獲取現(xiàn)狀;討論了基于傳統(tǒng)方法的多樣本算法研究現(xiàn)狀和基于深度學(xué)習(xí)的多樣本算法研究現(xiàn)狀;最后展望了多樣本算法未來的發(fā)展方向。
關(guān)鍵詞:卷積神經(jīng)網(wǎng)絡(luò);人臉識別;大樣本;對抗生成網(wǎng)絡(luò)
中圖分類號:TP391 文獻標識碼:A 文章編號:2095-1302(2017)07-00-04
0 引 言
近幾年,基于大量訓(xùn)練數(shù)據(jù)的卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)在目標檢測、目標識別、顯著性檢測、行為識別、人臉識別和對象分割等計算機視覺領(lǐng)域取得了舉世矚目的成果。這些令人鼓舞的成績主要歸功于以下幾點:
(1)將大量有標簽的數(shù)據(jù)作為訓(xùn)練集,學(xué)習(xí)出具有百萬參數(shù)的模型,從而使卷積神經(jīng)網(wǎng)絡(luò)能夠有效提取對象的本質(zhì)特征;
(2)不斷改進性能優(yōu)異的網(wǎng)絡(luò)結(jié)構(gòu),如Very Deep VGG Network[1],Google Inception Network[2]和Deep Residual Networks[3]等;
(3)各種并行計算硬件設(shè)備(如GPU)的支持,大大提高了CNN訓(xùn)練模型的效率。其中,將標簽的大量數(shù)據(jù)作為訓(xùn)練集起著至關(guān)重要的作用。
本文以人臉識別為例,討論和綜述多樣本算法的研究現(xiàn)狀和發(fā)展方向。
有效的特征是目標識別的關(guān)鍵,對人臉識別問題來說亦如此。傳統(tǒng)的主成分分析(Principal Component Analysis,PCA)[4,5],線性區(qū)分分析(Linear Discriminant Analysis, LDA)[6]和局部二值模式化(Local Binary Pattern,LBP)[7,8]等取得了不錯的成績?;趥鹘y(tǒng)特征的人臉識別受限于環(huán)境,此類特征作用在復(fù)雜或者背景多變的人臉圖像時,其識別性能往往大幅下降,如在LFW數(shù)據(jù)集上其識別率驟然下降[9]。
采用CNN作為特征提取模型,主要考慮到該模型的所有處理層,包括像素級別的輸入層,均可從數(shù)據(jù)中學(xué)習(xí)到可調(diào)節(jié)的參數(shù)。即CNN能自動從大數(shù)據(jù)中學(xué)習(xí)特征,無需人工設(shè)計特征。合理有效的特征需從大量數(shù)據(jù)和大量參數(shù)中自動學(xué)習(xí)獲取,從而達到優(yōu)秀的識別性能?;诰矸e神經(jīng)網(wǎng)絡(luò)的世界領(lǐng)先方法均使用了上百萬的數(shù)據(jù),其中最具有代表性的如VGG-Face網(wǎng)絡(luò)需要260萬個人臉圖像樣本進行訓(xùn)練[10],F(xiàn)acebook的DeepFace網(wǎng)絡(luò)需要440萬個有標簽的人臉圖像樣本訓(xùn)練[11]。而Google更使用了2億樣本數(shù)據(jù)來訓(xùn)練FaceNet網(wǎng)絡(luò)[12]。
1 多樣本獲取現(xiàn)狀
如引言所述,有效合理的特征是目標識別的關(guān)鍵,而CNN能從大量有標簽的數(shù)據(jù)中自動學(xué)習(xí)圖像的本質(zhì)特征。獲得圖像特征的關(guān)鍵因素是有標簽的大數(shù)據(jù)。因此許多研究的前提工作均聚焦在人工獲取數(shù)據(jù)和給數(shù)據(jù)加標簽方面。然而,獲取百萬級的數(shù)據(jù)并非易事。大數(shù)據(jù)獲取需要人工從網(wǎng)上下載、處理,然后給數(shù)據(jù)添加標簽,耗費大量的人力物力。雖然也有一些公開免費的數(shù)據(jù)集,且收集該類數(shù)據(jù)相對比較容易,如CASIA-WebFace[13],有49萬個圖像,但遠少于Facebook和Google的數(shù)據(jù)集。在這種情況下,缺乏大量樣本直接阻礙了深度學(xué)習(xí)方法的使用,成為阻礙提高檢測率和識別率的瓶頸。除了深度學(xué)習(xí)技術(shù)提取特征需要大量樣本外,已有研究證明[14-19],基于傳統(tǒng)方法的技術(shù)同樣需要大量樣本作為支撐。在這種形勢下,通過圖像處理與機器學(xué)習(xí)技術(shù)自動增加樣本集已成為必要手段。
無論基于傳統(tǒng)方法的識別問題,還是基于深度學(xué)習(xí)的識別問題,大量有標簽的數(shù)據(jù)作為訓(xùn)練集在算法中起著舉足輕重的作用。如果樣本不足,算法往往過擬合,無法提高算法的性能。為了獲得更多樣本,一些研究工作從網(wǎng)絡(luò)上獲取數(shù)據(jù),例如在IMDb上,已經(jīng)把9萬有標簽的數(shù)據(jù)集擴大到了26萬 [10]。除此之外,F(xiàn)acebook獲取了440萬個有標簽的人臉進行DeepFace網(wǎng)絡(luò)訓(xùn)練[11],而Google使用2億個數(shù)據(jù)訓(xùn)練FaceNet網(wǎng)絡(luò)[12]。
目前獲取方法具有如下局限:
(1)現(xiàn)有方法耗時耗力,需要經(jīng)費支持。獲取百萬級的數(shù)據(jù)并非易事。大數(shù)據(jù)獲取需要人工從網(wǎng)上下載、處理,然后給數(shù)據(jù)添加標簽,耗費大量的人力物力。這種情況下,只有像Facebook和Google這樣的大公司會收集大量有標簽的數(shù)據(jù)進行網(wǎng)絡(luò)訓(xùn)練。而大多數(shù)情況下的數(shù)據(jù)收集涉及個人隱私與財力物力等問題,對于一般的小公司或科研院所而言,收集數(shù)據(jù)普遍難度較大。
(2)收集特殊圖片困難。對于一些特殊的圖像,如醫(yī)學(xué)圖像,遙感圖像,現(xiàn)實中數(shù)量本身就少,加之無法直接從網(wǎng)上獲取,因此小樣本很容易導(dǎo)致過擬合。
2 樣本集擴大算法研究現(xiàn)狀
2.1 基于傳統(tǒng)方法的多樣本算法研究現(xiàn)狀
對于傳統(tǒng)的樣本生成算法,如果數(shù)據(jù)集中有足夠的訓(xùn)練樣本,均可得到比較滿意的識別結(jié)果,但在現(xiàn)實的人臉數(shù)據(jù)庫中,人臉的數(shù)據(jù)樣本卻是有限的。文獻[20]表明,增加圖像樣本的數(shù)量可以較大幅度提高識別的準確率。
為了增加樣本數(shù)量,提高識別準確率,科研工作者已做了大量工作。其中,借助原始樣本產(chǎn)生虛擬樣本是一種有效的增加數(shù)據(jù)集方法。這種方法大致分為如下幾類:
(1)通過人臉圖像的對稱性來得到原始樣本的虛擬樣本,如Xu[14,15]和Liu等[21]提出借助原始圖像的“對稱臉”和“鏡像臉”產(chǎn)生虛擬樣本,從而擴大數(shù)據(jù)集并提高人臉識別的正確率,Song[22]也提出相應(yīng)的算法來改進人臉識別的性能;
(2)通過改變圖像的光照、姿勢和表情等來產(chǎn)生虛擬樣本,例如Boom等用一種稱為VIG的方法對未知光照情況進行建模[16],Abdolali[17]和Ho[18]等提出了類似的算法擴大數(shù)據(jù)集;
(3)基于人臉圖像自身的特征生成虛擬樣本,Ryu等根據(jù)原始樣本的分布來產(chǎn)生虛擬樣本[19],Liu等也根據(jù)圖像本身特性來產(chǎn)生虛擬樣本[23]。
(4)基于數(shù)學(xué)的多樣本產(chǎn)生方法,如Zhang等提出利用奇異值分解的方法獲得基于原始樣本的虛擬樣本[24]。借助圖像合成方法生成的新樣本如圖1所示。
圖1 借助圖像合成方法生成新樣本
除了借助圖像處理方法獲得原始樣本的新樣本外,還可以利用圖像合成算法獲取多樣本,本研究做了相關(guān)實驗,其結(jié)果如圖1所示。假設(shè)數(shù)據(jù)集中有c類人臉圖像,每類有ni個樣本,令表示第i類中的第j個樣本,這里i=1,2,…,c,j=1,2,…,ni,h和w分別代表樣本xij的高和寬(均為像素值)。用X=[X1,X2,…,Xc]代表所有樣本,則Xi=[xi1,xi2,…,xini],i=1,2,…,c代表第i類樣本。則有:
其中, P(Xi)代表所生成的第i類新樣本, f(g)表示圖像處理函數(shù),代表多個樣本的串聯(lián),即將多個樣本聯(lián)合起來得到一個類別的新樣本。
2.2 基于深度學(xué)習(xí)的多樣本生成算法研究現(xiàn)狀
大量有標簽的訓(xùn)練數(shù)據(jù)是機器學(xué)習(xí)成功的關(guān)鍵,尤其對于強大的深度學(xué)習(xí)技術(shù),大數(shù)據(jù)集能提高CNN的性能,防止過擬合[25]。為了擴充數(shù)據(jù)集,已有一些工作在不改變圖像語義的情況下進行,如水平鏡像[26]、不同尺度的剪裁[27,28]、旋轉(zhuǎn)[29]和光照變化[27]等傳統(tǒng)方法。
DeepID[30]采取了增大數(shù)據(jù)集手法來訓(xùn)練網(wǎng)絡(luò),只有大的數(shù)據(jù)集才能使得卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練得更加充分,該研究采用兩種方法增大數(shù)據(jù)集:
(1)選擇采集好的數(shù)據(jù),即映入CelebFaces數(shù)據(jù)集。
(2)將原始數(shù)據(jù)集中的圖片多尺度、多通道、多區(qū)域的切分,然后分別進行訓(xùn)練,再把得到的向量串聯(lián)起來,即得到最后的向量。
以上方法僅局限于相對簡單的圖像處理技術(shù),該類方法生成的多樣本具有一定的局限性。比如,真正意義上的旋轉(zhuǎn)應(yīng)按一定的角度進行3D旋轉(zhuǎn),而不僅僅是圖像本身的角度旋轉(zhuǎn)。合成數(shù)據(jù)能一定程度上解決以上問題,如Shotton等通過隨機森林合成3D深度數(shù)據(jù)來估計人體姿勢,Jaderberg等使用合成數(shù)據(jù)來訓(xùn)練CNN模型識別自然場景下的文字[31]。這些研究的結(jié)果均優(yōu)于使用剪裁,旋轉(zhuǎn)等傳統(tǒng)方法。但使用3D合成圖像比較復(fù)雜,需要較多的前期工作。
近年來,借助生成對抗網(wǎng)絡(luò)(Generative Adversarial Networks,GANs)來生成原始樣本的方法吸引了很多學(xué)者。2014年6月,Goodfellow 等發(fā)表了論文《Generative Adversarial Nets》[32],文中詳盡介紹了GANs的原理、優(yōu)點及其在圖像生成方面的應(yīng)用,標志著GANs的誕生。早期的GANs模型存在許多問題,如GANs網(wǎng)絡(luò)不穩(wěn)定,甚至有時該網(wǎng)絡(luò)永遠不會開始學(xué)習(xí),生成的結(jié)果無法令人滿意。文獻[32]中生成器生成的圖片十分模糊,針對此問題,Denton等提出一個被稱為 LAPGANs的模型[33],該模型用多個卷積神經(jīng)網(wǎng)絡(luò)連續(xù)生成圖像,這些新圖像的清晰度不斷提高,最終得到高分辨率圖像。GANs除了基于圖像生成圖像外,還可以通過文字生成圖像,如文獻[34]搭起了文本到圖像的橋梁,通過GANs將文本直接轉(zhuǎn)換成對應(yīng)的圖像。文獻[35]將GAN應(yīng)用于超分辨率中,該文獻提出了全新的損失函數(shù),使得 GANs 能對大幅降采樣后的圖像恢復(fù)其生動紋理和小顆粒細節(jié)。另外,Radford 等提出了名為DCGANs的網(wǎng)絡(luò)[36],該文獻指出,用大數(shù)據(jù)集訓(xùn)練出的 GANs 能學(xué)習(xí)一整套層級的特征,并具有比其他無監(jiān)督學(xué)習(xí)模型更好的效果。以上方法均為基于一大類原始樣本生成另一大類圖像。
基于GAN生成樣本的過程如圖2所示。首先將同類別的原始圖像輸入到生成對抗網(wǎng)絡(luò)GAN的生成器網(wǎng)絡(luò)G中,生成“假冒”圖像G1和G2,接著借助判別器D來判斷輸入的圖像是真實圖像還是“假冒”圖像。生成器G努力生成類似原始樣本的圖像,力爭判別器D難以區(qū)分真假;而判別器D應(yīng)不斷提高自身性能,有能力鑒別出由生成器G生成的圖像為贗品。生成器G和判別器D的價值函數(shù)如下:
生成器G最小化log(1-D(G(z))),判別器D最大化logD(x),使得最大概率按照訓(xùn)練樣本的標簽分類, 生成模型G隱式定義了一個概率分布Pg,希望Pg 收斂到數(shù)據(jù)真實分布Pdata。
圖2 GAN生成新樣本示意圖
3 結(jié) 語
綜上所述,基于原始樣本的多樣本生成算法是一個值得深入研究探索的問題,具備清晰而明確的理論意義和現(xiàn)實應(yīng)用意義。雖然研究人員已經(jīng)對相關(guān)問題進行了一些研究,取得了一系列成果,但是多樣本的產(chǎn)生方法缺乏全面、深入的理解,尚未出現(xiàn)具有里程碑意義的研究成果。具體而言,本文認為,基于原始樣本的多樣本生成問題需要在如下幾個方面展開深入的研究:
(1)在研究多樣本生成算法時,保留原始樣本的本質(zhì)特征,如在人臉識別中,拋棄不必要信息(光照、表情和姿勢)的影響是一項十分有意義的工作。
(2)在合成新樣本時,設(shè)計合理有效的構(gòu)造元素,使合成的新表示更接近自然亦是一個值得研究的方向。
(3)基于生成對抗網(wǎng)絡(luò),研究某一類對象的生成新樣本的核心算法是一項有意義的工作。
參考文獻
[1] K Simonyan, A Zisserman.Very deep convolutional networks for large-scale image recognition [Z]. Computer Science, 2014.
[2] C Szegedy,W Lin,Y Jia, et al. Going deeper with convolutions[C]. in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2015.
[3] K He,X Zhang,S Ren,et al. Deep residual learning for image recognition[C]. in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,2016.
[4] Turk, Matthew, Pentland, et al.Eigenfaces for Recognition[J]. Journal of Cognitive Neuroscience, 2014,3(1): 71-86.
[5] A Pentland.Looking at People: Sensing for Ubiquitous and Wearable Computing[J].IEEE Transactions on Pattern Analysis & Machine Intelligence, 2000,22(1): 107-119.
[6] C Liu, H Wechsler.Robust coding schemes for indexing and retrieval from large face databases[J]. IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society, 2000,9(1): 132-137.
[7] T Ojala,M Pietik?inen.Multiresolution gray-scale and rotation invariant texture classification with local binary patterns[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2002,24(7): 404-420.
[8] T Ahonen, A Hadid, M Pietikainen.Face Description with Local Binary Patterns: Application to Face Recognition[J]. European Conference on Computer Vision, 2004,28(12): 469-481.
[9] GB Huang, M Mattar, T Berg,et al. Labeled faces in the wild: A database for studying face recognition in unconstrained environments[Z].Month,2008.
[10] OM Parkhi, A Vedaldi, A Zisserman.Deep Face Recognition[C]. British Machine Vision Conference, 2015.
[11] Y Taigman,M Yang, Marc, et al. DeepFace: Closing the Gap to Human-Level Performance in Face Verification[C]. in Conference on Computer Vision and Pattern Recognition,2014.
[12] F Schroff,D Kalenichenko,J Philbin.FaceNet: A unified embedding for face recognition and clustering[C]. in IEEE Conference on Computer Vision & Pattern Recognition,2015.
[13] D Yi,Z Lei, S Liao, et al.Learning face representation from scratch[Z]. Computer Science, 2014.
[14] Y Xu, X Zhu, Z Li, et al.Using the original and ‘symmetrical face training samples to perform representation based two-step face recognition[J]. Pattern Recognition, 2013,46(4): 1151-1158.
[15] Y Xu.Integrate the original face image and its mirror image for face recognition[J]. Neurocomputing, 2014,31(7): 191-199.
[16] BJ Boom, LJ Spreeuwers, RNJ Veldhuis.Virtual illumination grid for correction of uncontrolled illumination in facial images[J]. Pattern Recognition, 2011,44(9): 1980-1989.
[17] F Abdolali,S Seyyedsalehi. Improving pose manifold and virtual images using bidirectional neural networks in face recognition using single image per person[Z]. in International Symposium on Artificial Intelligence and Signal Processing,2011.
[18] HT Ho,R Chellappa. Pose-invariant face recognition using Markov random fields[J].IEEE Transactions on Image Processing A Publication of the IEEE Signal Processing Society, 2013,22(4): 1573.
[19] Y.-S., Ryu.,S.-Y., O..Simple hybrid classifier for face recognition with adaptively generated virtual data[J]. Pattern Recognition Letters, 2012,23(7): 833-841.
[20] A Wagner,J Wright, A Ganesh,et al.Toward a Practical Face Recognition System: Robust Alignment and Illumination by Sparse Representation[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2012,34(2): 372-386.
[21] Z Liu,X Song,Z Tang.Integrating virtual samples and fuzzy discriminant analysis for sparse representation-based face classification[J]. Journal of Electronic Imaging, 2015,24(2): 23013.
[22] YJ Song,YG Kim,UD Chang,et al. Face recognition robust to left/right shadows; facial symmetry[J]. Pattern Recognition, 2006,39(8): 1542-1545.
[23] Z Liu, X Song, Z Tang.Fusing hierarchical multi-scale local binary patterns and virtual mirror samples to perform face recognition[J]. Neural Computing & Applications, 2015,26(8): 2013-2026.
[24] G Zhang,W Zou,X Zhang,et al. Singular value decomposition based sample diversity and adaptive weighted fusion for face recognition[J]. Digital Signal Processing, 2017,62: 150-156.
[25] K Chatfield,K Simonyan,A V edaldi,et al. Return of the devil in the details: Delving deep into convolutional nets[Z]. Computer science, 2014.
[26] H Yang, I Patras.Mirror, mirror on the wall, tell me, is the error small? [J]. Der Chirurg; Zeitschrift für alle Gebiete der,2015,69(12):235-240.
[27] A Krizhevsky, I Sutskever, GE Hinton. ImageNet Classification with Deep Convolutional Neural Networks [J]. Advances in Neural Information Processing Systems, 2012,25(2): 1097-1105.
[28] G Levi,T Hassner. Age and gender classification using convolutional neural networks[C].in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops,2015.
[29] S Xie, Z Tu. Holistically-nested edge detection[C]. in Proceedings of the IEEE International Conference on Computer Vision,2015.
[30] Y Sun, X Wang, X Tang.Deep Learning Face Representation from Predicting 10,000 Classes[C]. in Computer Vision and Pattern Recognition,2014.
[31] M Jaderberg, K Simonyan,A Vedaldi,et al.Synthetic data and artificial neural networks for natural scene text recognition[Z]. Eprint Arxiv, 2014.
[32] I Goodfellow,J Pougetabadie, M Mirza, et al. Generative adversarial nets[Z]. in Advances in neural information processing systems, 2014.
[33] E Denton,S Chintala,A Szlam. Deep Generative Image Models using a Laplacian Pyramid of Adversarial Networks[Z]. Computer science,2015.
[34] S Reed,Z Akata, X Yan,et al. Generative adversarial text to image synthesis[C]. in Proceedings of The 33rd International Conference on Machine Learning,2016.
[35] C Ledig, L Theis, F Huszar,et al. Photo-realistic single image super-resolution using a generative adversarial network[Z]. arXiv preprint, 2016.
[36] A Radford,L Metz,S Chintala.Unsupervised representation learning with deep convolutional generative adversarial networks[Z]. Computer science,2015.