甘俊英,黃聿,翟懿奎,姜開永
?
基于輕量級卷積神經(jīng)網(wǎng)絡的人臉美麗預測
甘俊英,黃聿,翟懿奎,姜開永
(五邑大學 信息工程學院,廣東 江門 529020)
針對目前人臉美麗預測算法難于同時滿足實時性、魯棒性、準確性的現(xiàn)狀,本文提出一種輕量級的卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN). 首先,利用圖像預處理來提高模型的魯棒性. 其次,通過減少網(wǎng)絡層數(shù)和減小輸入圖像尺寸來提高模型的實時性,并通過優(yōu)化網(wǎng)絡結構和增加卷積核數(shù)來增強模型的學習能力. 最后,提出大規(guī)模數(shù)據(jù)微調(diào)訓練方法來進一步提高模型的預測準確性. 實驗結果表明,本文方法在SCUT-FBP數(shù)據(jù)庫中獲得的相關度,對單張的輸入圖像預測時間為.
人臉美麗預測;卷積神經(jīng)網(wǎng)絡(CNN);輕量級;微調(diào)
人臉美麗預測作為人工智能的一部分有著廣泛的應用領域,如在娛樂、美容、圖像檢索、虛擬現(xiàn)實等行業(yè)均具有潛在的應用價值. 然而,人臉美麗預測是一個具備較大挑戰(zhàn)性的研究課題. 人臉的姿態(tài)、表情、光照等變化都會直接影響著人臉的美麗值. 為了讓機器能跟人一樣分辨出人臉的美麗度,有大量學者在這方面進行了深入的研究. 人臉美麗預測最早見于2001年發(fā)表的文獻[1],至今已經(jīng)歷十多年的研究探索,提出了多種特征提取、分類及回歸方法. 其特征提取方法可歸納為早期研究的幾何特征和紋理特征,以及近年研究的淺層和深層特征[2]. 然而,現(xiàn)有人臉美麗預測算法在兼顧準確性、魯棒性、實時性等性能方面依然存在諸多不足,在算法提升方面還有很大發(fā)展空間.
目前,人臉美麗在傳統(tǒng)機器學習方法上取得了較多成果. Eisenthal等[3]2006年采用特征臉作為人臉美麗特征,再用SVM、KNN(K-Nearest Neighbor)等機器學習方法來分類,實驗證明機器學習方法可應用于人臉美麗預測. Mao等[4]最初通過手工標注關建點方式,提出人臉幾何特征提取方法,實驗對比表明SVM在人臉美麗分類方面具有較好的效果. 文獻[5]利用計算機建立大量理想的人臉模型,并總結出對人臉美麗影響最大的4種主要幾何特征. 而文獻[6]則提出基于3D人臉的幾何特征,并結合模糊神經(jīng)網(wǎng)絡的優(yōu)點,進一步提高人臉美麗的測試性能. Zhang等[7]利用關鍵點對人臉圖像進行幾何變換,研究發(fā)現(xiàn)特征臉保留的幾何不變特征更有利于人臉美麗預測. Whitehill 等[8]采用Gabor 特征、特征臉、梯度方向直方圖相結合的方式,通過SVM 回歸獲得最高相關度. 以上研究成果為人臉美麗預測奠定了較好基礎,但傳統(tǒng)機器學習方法在圖像識別領域,尤其在特征提取、預測準確性、算法魯棒性等方面均與深度學習方法存在較大差距.
基于深度學習的人臉美麗預測方法最近也取得了一些突破. 其中,在卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)方面取得的成果尤為突出. Gray等[9]提出一種無監(jiān)督的CNN模型訓練方法,并提出不依賴標簽的人臉美麗預測模型評價方法. Gan等[10]采用圖像掩模方法對圖像進行預處理,然后提取圖像LBP(Local Binary Patterns)特征訓練淺層網(wǎng)絡CRBM(Convolutional Restricted Boltzmann Machine),經(jīng)過兩輪特征提取后,在SVM分類和回歸中取得了較好結果. 此外,Gan等[11]還提出MSK(Multi-scale K-means)特征提取方法,通過K-means聚類得到眾多卷積核來初始化一個淺層網(wǎng)絡,用于提取人臉圖像特征,最后組合多個尺度特征進行SVM分類. Xie等[12]開發(fā)了一個女性人臉美麗數(shù)據(jù)庫(SCUT-FBP),包含500張圖像,并設計一個多層CNN模型,實驗證明了CNN方法學習效果大幅超過傳統(tǒng)學習方法. Xu等[13]設計了多個深度不等的多層網(wǎng)絡,基于SCUT-FBP人臉美麗數(shù)據(jù)庫的實驗結果說明,深層網(wǎng)絡比淺層網(wǎng)絡的預測效果更好. 然而,基于深度學習的方法目前只取得了初步的成果,國內(nèi)外相關的研究比較少,且所取得的成果還不足以滿足實踐應用的需求. CNN具有強大的圖像特征學習能力,對圖像光照、背景等干擾不敏感,且擁有豐富的層間組合等優(yōu)點,因而在圖像識別領域具備較大優(yōu)勢. 為進一步提高人臉美麗預測的綜合性能,本文對CNN展開深入的研究,使其更適用于人臉美麗預測.
本文所提的人臉美麗預測方法分3個階段來實現(xiàn):網(wǎng)絡優(yōu)化、模型預訓練和模型預測,如圖1所示. 實驗中,除了采用人臉美麗數(shù)據(jù)庫SCUT-FBP做性能測試與分析外,還將采用大規(guī)模人臉識別數(shù)據(jù)庫CASIA-WebFace預訓練CNN模型. 圖1中,網(wǎng)絡優(yōu)化階段主要對所設計的初始網(wǎng)絡進行優(yōu)化,即根據(jù)SCUT-FBP上的預測性能來對網(wǎng)絡結果進行相應的結構調(diào)整,為后續(xù)測試提供更適于人臉美麗預測的網(wǎng)絡模型;模型預訓練階段是為了提高人臉美麗特征的提取能力,并降低對人臉美麗訓練集的依賴. 大規(guī)模人臉數(shù)據(jù)能夠充分訓練模型對人臉的認知能力,有利于下一階段的人臉美麗特征學習. 模型預測階段是在前兩個階段基礎上采用微調(diào)(Fine-tuning)訓練方法對模型進行再訓練,并分析SCUT-FBP數(shù)據(jù)庫的測試結果.
圖1 人臉美麗預測的流程
1.1 數(shù)據(jù)庫圖像的預處理
數(shù)據(jù)庫里的原始圖像一般處理得比較粗糙,容易對預測結果產(chǎn)生不良影響,因此,需要對圖像進行預處理. 圖像預處理包括人臉檢測、關鍵點檢測、人臉校正和歸一化4個步驟,如圖2所示. 其中,人臉檢測和關鍵點檢測采用文獻[14]的方法來實現(xiàn);再利用人臉關鍵點來估算人臉姿態(tài),以便旋轉校正人臉;最后將圖像裁剪成大小一致且對齊的圖像. 考慮到人臉圖像的分布特點以及模型的性能需求,本文所設計的網(wǎng)絡輸入圖像大小為144×144. 對于CNN模型,輸入過大的圖像不僅增加訓練的耗時,過多的人臉圖像冗余信息也會使模型難于收斂;輸入過小的圖像則會因為損失過多的圖像細節(jié)而導致模型的預測效果不佳.
人臉檢測 關鍵點檢測 人臉校正 歸一化
1.2 網(wǎng)絡模型的設計
本文設計了一個具有5個卷積層和2個全連接層的輕量級CNN網(wǎng)絡,其層次細節(jié)與文獻[12-13]所提網(wǎng)絡的區(qū)別如表1所示,其中,各參數(shù)的作用可參考深度學習框架Caffe. 另外,各層的參數(shù)設置是在多次實驗驗證的基礎上優(yōu)化的配置方式.
表1 網(wǎng)絡模型結構對比
文獻[12]提出了一個網(wǎng)絡結構較簡單的CNN模型,包含6個卷積層和2個全連接層;文獻[13]是在文獻[12]的基礎上對模型進行改進,并且提出Cascaded Fine-tuning的訓練方法來提高預測性能. 文獻[12-13]的實驗結果是基于SCUT-FBP數(shù)據(jù)庫的測試,故本文的實驗結果與之相比具有較好的說服力. 本模型與文獻[12-13]的網(wǎng)絡有一些共同點,如所有池化層的池化核大小均為2×2,所有的激活層均采用ReLU函數(shù),以及采用Dropout層來抑制訓練過擬合的問題. 然而,從表1可得出許多不同點:本模型在卷積核和可調(diào)參數(shù)數(shù)量上都明顯多于前者,而更多的卷積核和可調(diào)參數(shù)能夠給模型帶來更強的學習能力;此外,Single Net和CNN-3 Net的輸入圖像大小為256×256,在Input層隨機裁剪成227×227的灰度圖像,卷積層共6層;而本模型輸入圖像大小為144×144,在Input層隨機裁剪成128×128的灰度圖像,卷積層共5層. 所以,本模型在輸入圖像大小和總層數(shù)上要小于前者,而更少的層數(shù)有利于模型的全局收斂,更小的輸入圖像則減少了模型的計算量,既加快了訓練速度,也提高了系統(tǒng)的性能. 因此,從網(wǎng)絡結構上可判斷本模型在系統(tǒng)集成和應用方面更具優(yōu)勢.
1.3 模型的訓練方法
SCUT-FBP數(shù)據(jù)庫僅有500張圖像,而小數(shù)據(jù)難以訓練出性能強大的CNN模型. 為了提高測試的準確率,在人臉美麗預測訓練前將引入CASIA-WebFace數(shù)據(jù)庫進行預訓練. CASIA-WebFace包含1萬多類共40多萬張圖像,經(jīng)過預處理后圖像大小為144×144. 文獻[15-17]的實驗結果證明了經(jīng)過大規(guī)模數(shù)據(jù)預訓練的CNN模型具有較好的收斂結果. 因此,經(jīng)過預訓練后,再將學習目標遷移到人臉美麗預測中將獲得更好的預測結果. 其訓練方法如下:
1)準備訓練集和測試集,測試集由CASIA-WebFace的每一類隨機選取1張圖像組成,剩下的為訓練集.
2)將本模型的Loss層改為Softmax-Loss,固定學習率為0.001,隨機初始化本模型各層的可調(diào)參數(shù),并開始對所有層訓練.
3)在訓練過程中,當測試識別率不再增加時,調(diào)小學習率繼續(xù)訓練,直到測試識別率不再增加為止.
4)選取其中測試識別率最高的model用于初始化本模型,并將卷積層1~3的層內(nèi)學習率設置為0,以充分利用網(wǎng)絡底層在CASIA-WebFace上的學習結果. 同時,把訓練集和測試集改為SCUT-FBP數(shù)據(jù),學習率固定為,采用Fine-tuning方法訓練.
5)將模型訓練到測試集的Pearson系數(shù)不再增加為止,并選出Pearson系數(shù)最高的model作為實驗結果.
實驗主要采用SCUT-FBP數(shù)據(jù)庫,其樣本及美麗值如圖3所示,樣本的分布如圖4所示. 從SCUT-FBP數(shù)據(jù)庫中隨機選取100張圖像作為測試集,剩下的400張圖像作為訓練集. 從圖4可看出,所有樣本的美麗值介于1至5之間,且樣本分布近似于高斯分布,說明樣本分布是不均勻的,這將為預測模型帶來一定的挑戰(zhàn). 為了更真實地反映預測模型的性能,所有實驗采用五折交叉法測試. 即在500張圖像中,輪流選擇100張作為測試集,每種實驗方法均測試5次并取其均值作為最終的實驗結果. 下面將給出多種人臉美麗預測方法的回歸預測結果并作對比分析.
圖3 SCUT-FBP樣本以及其美麗值示例
2.1 基于SVM的實驗結果與分析
實驗中,分別采用LPQ、LBP、K-means和MSK等4種方法進行特征提取,并采用SVM對人臉美麗特征進行回歸預測,結果如表2所示. 其中,K-means和MSK算法的實現(xiàn)來自文獻[11],MSK在文獻[11]發(fā)表時取得了最優(yōu)的成績,在深度學習的淺層特征提取方法中,MSK的實驗結果具有較高的代表性. 實驗圖像大小歸一化為120×120的灰度圖像,實驗結果的評價采用MSE(Mean Squared Error)和Pearson系數(shù).
圖4 SCUT-FBP樣本的分布圖
表2 基于SVM的預測結果
從表2可知,MSK特征在SVM回歸預測中取得了最佳成績. 但其提取的特征維數(shù)相對較大,這種以增加特征維度為代價的方法將給算法的實時性和魯棒性帶來較大考驗. 這也表明人臉美麗預測還有較大提升空間,為此,下面將對本文所提方法進行實驗測試.
2.2 基于CNN的實驗結果與分析
CNN模型具有end-to-end的學習能力,即模型經(jīng)過訓練后,直接輸入圖像便可得到預測結果. 因此,本次實驗中,將直接采用SCUT-FBP數(shù)據(jù)庫對Single Net、CNN-3 Net和本模型進行訓練和測試,測試結果如表3和表4所示. 表3給出各模型的特性,其中,單張測試時間是在CPU上運行測試100張圖像取均值得到的結果. 表4給出5次交叉測試結果,并采用Pearson系數(shù)表示. 由于測試數(shù)據(jù)較少,對于不同的交叉訓練數(shù)據(jù),本模型每次得到的預測結果差距較大,模型收斂所需要訓練的次數(shù)也不一致. 訓練時,本模型的batch_size設置為48,學習率固定為,表4的結果大約迭代10萬次時便可獲得.
表3 CNN模型的特性
表4 基于CNN的預測結果
從以上結果可知,本模型在實時性與準確性上均優(yōu)于另兩個網(wǎng)絡. 盡管在3個模型中,本模型占用存儲空間最大(所包含的權重參數(shù)最多),但本模型的層數(shù)少、測試圖像的尺寸較小,都降低了計算量,使得其在實時性方面表現(xiàn)得更加突出. 另外,由于本模型針對人臉美麗圖像的特點優(yōu)化了網(wǎng)絡結構,并擁有更多的可訓練參數(shù),從而具備更強大的學習能力,在預測準確性方面也取得了更好的結果. 目前,本模型的預測準確性已經(jīng)超過多種基于SVM的人臉美麗預測方法,但仍然低于MSK,因而,下面將對本模型做進一步的性能提升測試.
2.3 引入Fine-tuning方法的實驗結果與分析
實驗先對模型進行預訓練再進行Fine-tuning訓練,最終實驗結果如表5所示. 為了更全面地探討經(jīng)預訓練后的模型性能,分別采用不同規(guī)模的CASIA-Webface數(shù)據(jù)集來訓練. 其中,預訓練數(shù)據(jù)集規(guī)模從0到40萬張分5個層次進行實驗,0表示不需要預訓練. 此外,為了說明本模型的優(yōu)勢,引入文獻[13]采用Cascaded Fine-tuning方法的實驗結果作對比. 預訓練時,對于不同的數(shù)據(jù)集,模型的收斂速度也不一致,一般數(shù)據(jù)集越大,收斂速度越慢. 在預訓練過程中,對于40萬張的預訓練集,把batch_size大小設置為48,大約迭代訓練75萬次時,本模型能獲得較好的收斂結果.
表5 采用Fine-tuning方法的回歸預測結果
從表5可知,采用Fine-tuning方法訓練出來的模型其預測性能均獲得了較大的提升. 其中,在預訓練數(shù)據(jù)集為20萬張時,本模型取得了的最高相關度,優(yōu)于文獻[13]改進后的CNN方法以及采用MSK特征的SVM方法. 另外,從不同規(guī)模的預訓練實驗結果可看出,當數(shù)據(jù)量達到一定程度時,預測結果相關度將不再增加,反而出現(xiàn)下降的趨勢. 這說明預訓練的數(shù)據(jù)量并不是越多越好,過多的數(shù)據(jù)量會使本模型底層的泛化學習能力趨向于飽和. 這是由于數(shù)據(jù)量增加,類數(shù)也隨著增加,從而使模型收斂的難度加大,網(wǎng)絡底層難以學習到更有效的泛化人臉特征. 本次實驗結果說明,采用Fine-tuning方法訓練模型時,需要選擇合適的預訓練數(shù)據(jù)規(guī)模,以獲得更好的預測結果.
本文在現(xiàn)有人臉美麗預測方法的基礎上研究了輕量級的CNN模型,通過對輸入圖像進行預處理和采用Fine-tuning訓練方法來改善模型的實時預測性能. 實驗結果說明,采用預訓練的方法能夠緩解CNN模型訓練時因人臉美麗數(shù)據(jù)庫規(guī)模不足而導致的過擬合問題,對人臉美麗的預測性能有較大的提升. 另外,CNN模型具備end-to-end的學習能力以及在大規(guī)模數(shù)據(jù)的訓練下,將擁有更加強大的學習能力. 因而,面對預測難度較大的人臉美麗特征時,CNN模型比傳統(tǒng)SVM模型更有優(yōu)勢. 與其他CNN模型相比,本文所設計的輕量級模型在實時性和準確性方面都取得了更理想的成果,能為人臉美麗預測系統(tǒng)提供更佳的性能.
[1] AARABI P, HUGHES D, MOHAJER K, et al. The automatic measurement of facial beauty [C]//IEEE International Conference on Systems, Man and Cybernetics. Tuson: IEEE, 2001: 2644-2647.
[2] ZHANG D, CHEN Fangmei, XU Yong. Computer models for facial beauty analysis [M]. Switzerland: Springer International Publishing, 2016: 3-16.
[3] EISENTHAL Y, DROR G, RUPPIN E. Facial attractiveness: beauty and the machine [J]. Neural Computation, 2006, 18(1): 119-42.
[4] MAO Huiyun, JIN Lianwen, DU Minghui. Automatic classification of Chinese female facial beauty using Support Vector Machine [C]//Proc IEEE SMC. San Antonio, IEEE, 2009: 4842-4846.
[5] FAN Jintu, CHAU K P, WAN Xianfu, et al. Prediction of facial attractiveness from facial proportions [J]. Pattern Recognition, 2012, 45(6): 2326-2334.
[6] CHIANG W C, LIN H H, HUANG C S, et al. The cluster assessment of facial attractiveness using fuzzy neural network classifier based on 3D Moire features [J]. Pattern Recognition, 2014, 47(3): 1249-1260.
[7] ZHANG D, ZHAO Qijun, CHEN Fangmei. Quantitative analysis of human facial beauty using geometric features [J]. Pattern Recognition, 2011, 44(4): 940-950.
[8] WHITEHILL J, MOVELLAN J R. Personalize facial attractiveness prediction [C]//Proceedings of FG’ 08. IEEE, 2008: 1-7.
[9] GRAY D, YU Kai, XU Wei, et al. Predicting facial beauty without landmarks [M]. LNCS: 6316. Berlin: Springer-Verlag, 2010: 434-447.
[10] GAN Junying, LI Lichen, ZHAI Yikui, et al. Deep self-taught learning for facial beauty prediction [J]. Neurocomputing, 2014, 144(1): 295-303.
[11] GAN Junying, ZHAI Yikui, WANG Bing. Unconstrained facial beauty prediction based on multi-scale k-means [J]. Chinese Journal of Electronics, 2016, 25(1): 1-9.
[12] XIE Duorui, LIANG Lingyu, JIN Lianwen, et al. SCUT-FBP: a benchmark dataset for facial beauty perception [C]// IEEE International Conference on SMC. Kowloon: IEEE, 2015: 1821-1826.
[13] XU Jie, JIN Lianwen, LIANG Lingyu, et al. A new humanlike facial attractiveness predictor with cascaded fine-tuning deep learning model [J]. Computer Science, 2015, 70(1) :45-79.
[14] DANTONE M, GALL J, FANELLI G, et al. Real-time facial feature detection using conditional regression forests [J]. IEEE Biometrics Compendium, 2012, 157(10): 2578-2585.
[15] PARKHI O M, VEDALDI A, ZISSERMAN A. Deep face recognition [C]// 26th British Machine Vision Conference. Swansea: BMVA Press, 2015: 1-12.
[16] LEVI G, HASSNER T. Emotion recognition in the wild via convolutional neural networks and mapped binary patterns [C]// ICMI 2015. Seattle: ACM Press: 2015: 1-8.
[17] LIU Xin, LI Shaoxin, KAN Meina, et al. Agenet: deeply learned regressor and classifier for robust apparent age estimation [C]// ICCV 2015. Santiago, Chile: IEEE, 2015: 258-266.
[責任編輯:熊玉濤]
Facial Beauty Prediction Based on the Lightened Convolutional Neural Network
GANJun-ying, HUANGYu, ZHAIYi-kui, JIANGKai-yong
(School of Information Engineering, Wuyi University, Jiangmen 529020, China)
In this paper, a lightened Convolutional Neural Network (CNN) was proposed to meet the requirements of the face prediction algorithm in aspects of real-time, robustness and accuracy. Firstly, face image preprocessing is used to enhance the robustness of the model. Secondly, the methods of reducing the number of network layers and downsizing the input images are adopted to improve the real-time performance of the model, and its learning ability is strengthened by optimizing the network structure and increasing the number of convolutional kernels. Finally, a large-scale data pre-training method is proposed to further improve the accuracy of the model. The experimental results show that a correlation degree ofbased on database of SCUT-FBP was obtained for the proposed method, in which the test time of oneimage is.
facial beauty prediction; convolutional neural network (CNN); lightening; fine-tuning
1006-7302(2017)03-0042-07
TP391.4
A
2017-02-17
國家自然科學基金資助項目(61372193);廣東省高等學校優(yōu)秀青年項目(SYQ2014001);廣東省特色創(chuàng)新項目(2015KTSCX143,2015KTSCX145).
甘俊英(1964—),女,江西樟樹人,教授,博士,研究方向為生物特征識別.