李校林,張鵬飛,董玉暉,鈕海濤
(1. 重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065;2. 重慶郵電大學(xué)通信新技術(shù)應(yīng)用研究中心,重慶 400065)
面部表情是一種常見(jiàn)的非語(yǔ)言交流形式,心理學(xué)家Ekman與Friesen最早開(kāi)創(chuàng)了表情識(shí)別研究,并基于感情和心理學(xué)將其分為六類,包括憤怒、恐懼、厭惡、悲傷、高興以及驚訝[1,2],通過(guò)這些表情來(lái)對(duì)人們的情感狀態(tài)和意圖進(jìn)行判斷。面部表情識(shí)別是計(jì)算機(jī)理解人類情感的重要途徑,也是實(shí)現(xiàn)真正意義上人機(jī)交互的基礎(chǔ),在生活中有著許多實(shí)際應(yīng)用,如情緒分析、遠(yuǎn)程教育、醫(yī)療輔助、刑偵檢測(cè)等。
面部表情識(shí)別由圖像預(yù)處理、特征提取和分類組成。其中,圖像預(yù)處理對(duì)圖像大小、灰度、姿態(tài)以及光照條件進(jìn)行標(biāo)準(zhǔn)歸一化。特征提取用于獲取圖像的關(guān)鍵信息,其逐步由手工特征過(guò)渡到深度學(xué)習(xí)階段,并通過(guò)加深網(wǎng)絡(luò)結(jié)構(gòu)如ResNet50、ResNet101等[3];引入注意力機(jī)制Attention-Mechanism[4,5];以及多特征融合[6]等方法來(lái)優(yōu)化特征提取,使識(shí)別準(zhǔn)確率有了很大提升。分類則負(fù)責(zé)將特征向量轉(zhuǎn)換成對(duì)應(yīng)不同類別的概率、并反向優(yōu)化約束特征提取。對(duì)模型提取的特征進(jìn)行可視化研究后,發(fā)現(xiàn)依舊存在特征類內(nèi)分散和特征類間未分離等問(wèn)題。因此,越來(lái)越多的研究者希望通過(guò)改進(jìn)損失函數(shù)優(yōu)化分類效果。
目前面部表情識(shí)別損失函數(shù)大多基于度量學(xué)習(xí),其中最為經(jīng)典的為Softmax Loss損失函數(shù)。在其基礎(chǔ)上進(jìn)行的改進(jìn)與優(yōu)化,取得不錯(cuò)的效果,被廣泛應(yīng)用于開(kāi)集測(cè)試場(chǎng)景中,成為面部表情識(shí)別領(lǐng)域新的研究方向。Wen等人[7]提出的Center Loss輔助損失函數(shù),通過(guò)設(shè)置特征中心增加類內(nèi)相似性,縮小了同一表情樣本之間的距離,即特征類內(nèi)距離,改進(jìn)了特征類內(nèi)不緊湊的問(wèn)題,同時(shí)結(jié)合Softmax Loss形成雙約束損失函數(shù),在表情識(shí)別數(shù)據(jù)集上取得了較好的分類效果;Liu等人[8]先提出了LS Loss損失函數(shù),引入乘性角度間隔margin,有效減小了特征類內(nèi)距離;而后提出A Loss[9]損失函數(shù),其在LS Loss的基礎(chǔ)上進(jìn)行了權(quán)重歸一化和特征歸一化,把優(yōu)化更加集中在角度上;Wang等人[10]提出的Am Loss損失函數(shù),通過(guò)添加夾角余弦值間隔margin,將重心放在了余弦距離上,并添加尺度因子S,使獲得的特征更具有判別能力。這些方法對(duì)Softmax Loss函數(shù)進(jìn)行改進(jìn),在識(shí)別準(zhǔn)確率上得到了提升,但僅優(yōu)化特征類內(nèi)距離,忽略了特征類間距離對(duì)分類效果的影響。
Softmax Loss損失函數(shù)由Softmax分類函數(shù)和cross-entropy交叉熵組成,其中Softmax分類函數(shù)負(fù)責(zé)將網(wǎng)絡(luò)提取的特征向量轉(zhuǎn)化為歸一化概率,然后使用cross-entropy交叉熵作為誤差函數(shù)來(lái)衡量模型的分類準(zhǔn)確率,如式(1)所示。
(1)
式中:n為樣本數(shù),k為類別數(shù),xi表示第i個(gè)樣本的特征、該樣本屬于第yi類,Wyi表示與xi對(duì)應(yīng)的目標(biāo)權(quán)重矩陣,Wi為非目標(biāo)權(quán)重矩陣,b為與二者對(duì)應(yīng)的偏置項(xiàng)。
Softmax Loss損失函數(shù)能夠有效地對(duì)樣本進(jìn)行分類,并進(jìn)行反向傳播優(yōu)化權(quán)重參數(shù)。但僅考慮了樣本能否正確分類的問(wèn)題,未對(duì)特征類內(nèi)和類間距離進(jìn)行約束,在某些情況下甚至出現(xiàn)特征類內(nèi)距離大于類間距離的現(xiàn)象。
(2)
對(duì)特征和權(quán)重進(jìn)行歸一化處理后,所有的特征表示都將固定的映射到一個(gè)半徑為1的超球面上,添加尺度因子S(S通常取大于1的整數(shù)),可以擴(kuò)大超球面的半徑,進(jìn)而增大特征的映射表示空間[10],表達(dá)式如式(3)所示
(3)
通過(guò)添加尺度因子S能有效提升模型區(qū)分困難樣本的魯棒性,并反向傳播優(yōu)化輸出,從而實(shí)現(xiàn)輸出置信度為100%的收斂狀態(tài)或one-hot形式,防止出現(xiàn)網(wǎng)絡(luò)模型不收斂問(wèn)題[11]。
本文把優(yōu)化更加集中在余弦角度上,從余弦角度間隔出發(fā),并充分考慮特征類間距離對(duì)分類的影響,在特征與目標(biāo)權(quán)重之間的夾角加上間隔m,即cosθyi改為cos(θyi+m),同時(shí)將特征與非目標(biāo)權(quán)重間的夾角減去間隔m,即將cosθj改為cos(θj-m),由此得到的加性余弦角度間隔損失函數(shù)ACAM Loss如式(4)所示
(4)
式中:n表示一個(gè)批次樣本的數(shù)量,S為尺度因子,k為樣本總類別數(shù),θyi表示特征xi與目標(biāo)權(quán)重Wyi間的余弦?jiàn)A角,θj表示特征xi與其余非目標(biāo)權(quán)重Wj間的余弦?jiàn)A角。
對(duì)比其它加性間隔方法,本文更傾向余弦角度優(yōu)化。不僅在特征xi與目標(biāo)權(quán)重Wyi的余弦?jiàn)A角θyi添加間隔m(m∈[0,1]),來(lái)達(dá)到減小特征類內(nèi)距離的目的,同時(shí)在特征xi與其余非目標(biāo)權(quán)重Wyi的余弦?jiàn)A角θj減去間隔m,進(jìn)而拉大特征類間距離,讓類別的分類界限更加擴(kuò)大,以此增大不同類別的區(qū)分度。
特征x1與權(quán)重之間的余弦?jiàn)A角如圖1所示。通過(guò)圖1和式(4)可知,為了實(shí)現(xiàn)更好的分類效果,希望cosθ1>>cosθ2、cosθ3;從余弦角度出發(fā),即希望θ1越小越好,θ2和θ3則越大越好。將其擴(kuò)展到多分類問(wèn)題中,通過(guò)添加角度間隔m,在保持初始余弦值cosθy1=cos(θy1+m)不變的前提下,使得特征x1與目標(biāo)權(quán)重Wy1的余弦?jiàn)A角θy1減小,從而減小特征類內(nèi)距離。(例如取cosθy1=0時(shí),θy1等于90°,但當(dāng)m=0.35時(shí),cos(θy1+m)=0,此時(shí)θy1約等于70°;當(dāng)m=0.55時(shí),cos(θy1+m)=0,此時(shí)θy1約等于60°);同理,通過(guò)減去角度間隔m,在保證初始余弦值cosθj=cos(θj+m)不變的前提下,使得特征x1與其余非目標(biāo)權(quán)重Wj的余弦?jiàn)A角θj增大,進(jìn)而增大特征類間距離。(例如取cosθj=0時(shí),θj等于90°,但當(dāng)m=0.35時(shí),cos(θj-m)=0,此時(shí)θj約等于110°;但當(dāng)m=0.55時(shí),cos(θj-m)=0,此時(shí)θj約等于120°)。
圖1 特征x1與權(quán)重之間的余弦?jiàn)A角
圖2為Softmax Loss與ACAM Loss損失函數(shù)的分類邊界示意圖。可以看出,加性余弦角度間隔損失函數(shù)ACAM Loss能夠引導(dǎo)網(wǎng)絡(luò)學(xué)習(xí)更具區(qū)分性特征,既減小了特征類內(nèi)距離,使類內(nèi)特征更加緊湊;又增大了特征類間距離,使不同類別的分類界限更加擴(kuò)大,極大提高了分類效果。
圖2 兩種損失函數(shù)的分類邊界圖
VGG_Net網(wǎng)絡(luò)由于其結(jié)構(gòu)規(guī)整和具實(shí)用性,被廣泛應(yīng)用于圖像分類和目標(biāo)檢測(cè)任務(wù),并取得良好效果。在文獻(xiàn)[12]中,L i針對(duì)VGG-16網(wǎng)絡(luò)深度進(jìn)行實(shí)驗(yàn),結(jié)果表明:在大規(guī)模數(shù)據(jù)集上,通過(guò)多重小卷積核堆疊,網(wǎng)絡(luò)模型能夠維持感受野不變、降低參數(shù)運(yùn)算量,同時(shí)獲取更具有辨識(shí)性的特征,提升表情分類效果;但在中小規(guī)模數(shù)據(jù)集上,往往會(huì)導(dǎo)致網(wǎng)絡(luò)模型過(guò)擬合、泛化能力較差,無(wú)法體現(xiàn)出VGG-16深層網(wǎng)絡(luò)結(jié)構(gòu)的性能。
考慮到實(shí)驗(yàn)數(shù)據(jù)集規(guī)模的限制,本文采用改進(jìn)的VGG-16網(wǎng)絡(luò),其結(jié)構(gòu)圖如圖3所示。
圖3 改進(jìn)的VGG-16網(wǎng)絡(luò)結(jié)構(gòu)圖
1)利用5×5卷積核來(lái)替代初始層中堆疊的2層3×3卷積核,在后續(xù)的卷積層仍采用3×3卷積核堆疊,既能保持網(wǎng)絡(luò)的特征提取能力,又能有效實(shí)現(xiàn)高維特征的降維,緩解深層網(wǎng)絡(luò)結(jié)構(gòu)帶來(lái)的收斂過(guò)慢等問(wèn)題;
2)去掉第一層全連接層,重新設(shè)置后兩層全連接層的神經(jīng)元數(shù),能夠有效降低運(yùn)算參數(shù)量,并促使最后一層卷積層提取更具有區(qū)分性的特征。
為驗(yàn)證提出的ACAM Loss損失函數(shù)對(duì)于提升模型分類效果的有效性,本文在兩個(gè)公開(kāi)表情數(shù)據(jù)集CK+和JAFFE上進(jìn)行了多組實(shí)驗(yàn)。采用改進(jìn)的VGG-16網(wǎng)絡(luò)結(jié)構(gòu)[12],由不同損失函數(shù)對(duì)整體模型進(jìn)行訓(xùn)練和分類,通過(guò)10折交叉驗(yàn)證進(jìn)行評(píng)估,混淆矩陣由10組數(shù)據(jù)平均得出。開(kāi)發(fā)環(huán)境是基于Python語(yǔ)言的TensorFlow框架,使用NVIDIA GTX1060 GPU進(jìn)行模型訓(xùn)練,本文中模型的主要超參數(shù)設(shè)置如表1。
表1 超參數(shù)設(shè)置
CK+數(shù)據(jù)集包含來(lái)自123個(gè)對(duì)象的327個(gè)視頻序列,從無(wú)表情開(kāi)始到峰值表情結(jié)束,每個(gè)視頻序列的最后一幀具備運(yùn)動(dòng)單元的表情標(biāo)簽,共包含憤怒、恐懼、厭惡、悲傷、高興以及驚訝6種基本表情,原始的視頻幀尺度為640×480。
JAFFE數(shù)據(jù)集共包含213張圖像,來(lái)自10位對(duì)象,均為女性,屬于實(shí)驗(yàn)室標(biāo)準(zhǔn)環(huán)境下的表情圖像集合,包括6種基本表情以及中性表情(Neutral),原始的圖像尺度為256×256。
由于CK+數(shù)據(jù)集中只包含6種基本表情,為保持表情類別的一致,忽略中性表情,并對(duì)圖像進(jìn)行裁剪處理,所有圖像尺寸保持在224×224×3。同時(shí),本文通過(guò)幾何變換(平移、翻轉(zhuǎn)、旋轉(zhuǎn))對(duì)圖像數(shù)據(jù)進(jìn)行增強(qiáng),使數(shù)據(jù)集表情樣本數(shù)據(jù)增加130倍,以降低標(biāo)簽圖像數(shù)量過(guò)少、網(wǎng)絡(luò)的參數(shù)量對(duì)實(shí)驗(yàn)結(jié)果的影響。所有實(shí)驗(yàn)均在增強(qiáng)數(shù)集上進(jìn)行。
尺度因子S可以是固定值,也可以通過(guò)網(wǎng)絡(luò)自適應(yīng)訓(xùn)練。Am Loss[10]指出在損失函數(shù)中添加間隔后,對(duì)S進(jìn)行自適應(yīng)學(xué)習(xí)時(shí),S值一直偏小且更新極慢,網(wǎng)絡(luò)遠(yuǎn)遠(yuǎn)達(dá)不到收斂要求,但當(dāng)S值設(shè)置過(guò)大時(shí),又會(huì)使特征空間分布稀疏、類內(nèi)特征分離,不利于減少特征類內(nèi)距離,因此本文選取固定值S=20和S=30進(jìn)行對(duì)比實(shí)驗(yàn)。
參數(shù)m能夠有效增加分類邊界的間隔,引導(dǎo)網(wǎng)絡(luò)學(xué)習(xí)更具區(qū)分性特征,但模型訓(xùn)練難度也逐步增加,其最佳值在0.15~0.65的范圍內(nèi)。因此,為使網(wǎng)絡(luò)快速且穩(wěn)定的收斂,選取S=20和S=30,m在0.15~0.65的范圍內(nèi),每次遞增0.1,在JAFFE和CK+數(shù)據(jù)集上對(duì)這兩個(gè)參數(shù)進(jìn)行多次試驗(yàn),以找出分類效果最好的參數(shù)組合。在兩個(gè)數(shù)據(jù)集上不同參數(shù)組合的識(shí)別準(zhǔn)確率如圖4所示。
圖4 CK+和JAFFE數(shù)據(jù)集上不同參數(shù)組合的識(shí)別準(zhǔn)確率
由圖4可見(jiàn),在CK+和JAFFE數(shù)據(jù)集上,隨著m增大,加大了網(wǎng)絡(luò)訓(xùn)練力度,識(shí)別準(zhǔn)確率逐步提升,但同時(shí)網(wǎng)絡(luò)學(xué)習(xí)難度也隨之增加,識(shí)別準(zhǔn)確率到達(dá)峰值后會(huì)開(kāi)始下降。經(jīng)過(guò)不同參數(shù)組合下表情識(shí)別準(zhǔn)確率的比較,本文選取m=0.55,S=30參數(shù)組合對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
在CK+和JAFFE數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),混淆矩陣表示模型對(duì)每種表情類別正確和錯(cuò)誤分類的概率。在兩個(gè)數(shù)據(jù)集上分別用Softmax Loss和ACAM Loss損失函數(shù)訓(xùn)練出的表情識(shí)別模型得出的混淆矩陣如表2~5所示。
表2 基于Softmax Loss損失函數(shù)的混淆矩陣(CK+數(shù)據(jù)集)
表2和表3分別為利用Softmax Loss和ACAM Loss損失函數(shù)訓(xùn)練出的表情識(shí)別模型在CK+數(shù)據(jù)集上得出的混淆矩陣。與Softmax Loss函數(shù)對(duì)比,ACAM Loss函數(shù)訓(xùn)練出的模型對(duì)每種表情的識(shí)別準(zhǔn)確率均有提升,其中“驚訝”表情提升最大,增幅了3.59%,且受到“高興”和“悲傷”表情的影響進(jìn)一步減小。總體的平均識(shí)別準(zhǔn)確率也達(dá)到了98.87%,增幅1.35%。
表3 基于ACAM Loss損失函數(shù)的混淆矩陣(CK+數(shù)據(jù)集)
表4和表5分別為利用Softmax Loss和ACAM Loss損失函數(shù)訓(xùn)練出的表情識(shí)別模型在JAFFE數(shù)據(jù)集上得出的混淆矩陣。與Softmax Loss函數(shù)相比,ACAM Loss函數(shù)大部分表情類別的識(shí)別準(zhǔn)確率得到提升,平均識(shí)別準(zhǔn)確率達(dá)到98.92%,增幅1.3%。其中,“高興”表情的識(shí)別準(zhǔn)確率最高,達(dá)到99.91%,“驚訝”與“憤怒”表情在兩種損失函數(shù)下的識(shí)別準(zhǔn)確率非常接近。
表4 基于Softmax Loss損失函數(shù)的混淆矩陣(JAFFE數(shù)據(jù)集)
表5 基于ACAM Loss損失函數(shù)的混淆矩陣(JAFFE數(shù)據(jù)集)
總體而言,ACAM Loss損失函數(shù)在2個(gè)數(shù)據(jù)集上表情類別的識(shí)別準(zhǔn)確率都有所提升,取得了較好的結(jié)果。這說(shuō)明ACAM Loss損失函數(shù),通過(guò)添加余弦角度間隔,對(duì)分類效果產(chǎn)生了影響,在提升每種表情類別識(shí)別準(zhǔn)確率的同時(shí),有效地?cái)U(kuò)大了不同類別間的分類界限,降低了相似表情類別被錯(cuò)誤分類的概率。
表6為不同改進(jìn)型Softmax Loss損失函數(shù)訓(xùn)練出的表情識(shí)別模型在CK+、JAFFE數(shù)據(jù)集上的識(shí)別準(zhǔn)確率。由表中分析可知,本文所提出的ACAM Loss損失函數(shù)訓(xùn)練出的模型準(zhǔn)確率分別達(dá)到了98.87%和98.92%;相比AM Loss[10]損失函數(shù),準(zhǔn)確率分別提升了0.63%和0.49%;與其它損失函數(shù)相比,識(shí)別準(zhǔn)確率也有明顯提升,處于主流領(lǐng)先水平。
表6 不同損失函數(shù)的表情識(shí)別準(zhǔn)確率對(duì)比
本文提出了一種基于Softmax Loss損失函數(shù)的加性余弦角度間隔損失函數(shù)ACAM Loss,該損失函數(shù)主要從余弦角度間隔出發(fā),充分考慮特征類間距離對(duì)分類的影響,同時(shí)對(duì)特征類內(nèi)、類間距離進(jìn)行優(yōu)化,能夠有效引導(dǎo)網(wǎng)絡(luò)學(xué)習(xí)使特征類內(nèi)距離較小、特征類間距離較大的強(qiáng)區(qū)分度特征,還加大了網(wǎng)絡(luò)訓(xùn)練力度優(yōu)化輸出。相比Softmax Loss函數(shù),ACAM Loss函數(shù)訓(xùn)練出的模型在CK+、JAFFE數(shù)據(jù)集上相似表情類別被錯(cuò)誤分類的概率被降低;每種表情類別識(shí)別準(zhǔn)確率均有提升,平均增幅分別為1.35%、1.3%。另外,本文方法在CK+和JAFFE數(shù)據(jù)集上分別達(dá)到了98.87%和98.92%的識(shí)別準(zhǔn)確率,優(yōu)于其它文獻(xiàn)中的現(xiàn)有改進(jìn)損失函數(shù),驗(yàn)證了改進(jìn)損失函數(shù)的有效性。本文研究為靜態(tài)圖像下的面部表情識(shí)別,在實(shí)際場(chǎng)景應(yīng)用中存在一定限制,因此更準(zhǔn)確、有效的動(dòng)態(tài)圖像面部表情識(shí)別將作為接下來(lái)的重點(diǎn)研究?jī)?nèi)容。