梁曉曦,蔡曉東,王 萌,庫浩華
(桂林電子科技大學 信息與通信學院,廣西 桂林 541004)
近幾年,卷積神經網絡在計算機視覺方向成為了最流行的技術方法.在人臉識別任務中,相較于提取手工特征的傳統算法[1],卷積神經網絡避免了復雜的特征選擇問題,同時能達到更好的識別準確率.
目前,針對人臉識別任務,提出了眾多基于卷積神經網絡(Convolutional Neural Networks,CNN)的人臉特征提取網絡和方法.文獻[2]的視覺幾何組織(Visual Geometry Group,VGG)網絡擁有一定的深度,具有良好的特征提取能力,但是該網絡參數過多,不容易收斂和優化.文獻[3]的Deepface首先采用了比較復雜的3D人臉建模技術和逐塊的仿射變換進行人臉對齊,然后使用卷積神經網絡提取特征,同時使用了大量的訓練數據.
通常,基于卷積神經網絡的特征提取網絡使用分類損失(softmax loss)來進行特征學習,這種方式可以學習到可分離的特征,但是特征的區分性不強.后來出現了一些度量學習的方法來解決特征區分性不強的問題,使得在訓練的過程中縮小類內距離,增加類間距離.文獻[4]的DeepID2在網絡中加入了對比損失(contrastive loss)來聯合分類損失進行監督訓練,但是該方法需要大量的正負樣本,而樣本的生成有很大的隨機性,容易影響網絡的性能.文獻[5]的FaceNet使用了一種三重損失(triplet loss),所有訓練樣本都是三元組數據.雖然該方法有不錯的準確率,但是對于樣本的需求量太大.而三元組的選擇處理過程也比較耗時,網絡性能也比較不穩定.文獻[6]的Center face使用了中心損失(center loss)加權結合分類損失的方式進行訓練,但是中心損失僅僅作用于類內距離的壓縮,而對類間距離并沒有作用.
基于上述討論,筆者提出一種基于嵌套殘差卷積神經網絡和角度度量的人臉識別方法,通過改進網絡結構和特征區分學習方式提高人臉識別的準確率.使得在合適的選定度量空間下,學習到的特征滿足最小的類間距離大于最大的類內距離.同時能在保持較高準確率的情況下,具有較低的復雜度.
為了提升人臉識別的準確率,可通過加深卷積神經網絡的方式來提升網絡的性能.因為卷積神經網絡能夠提取各維度的特征,網絡的層數越多,則能夠提取到不同維度的特征越豐富.并且,越深的網絡提取的特征越抽象,越具有語義信息.但是隨著網絡層數的加深,會出現梯度彌散或梯度爆炸,使得隨機梯度下降算法的優化變得更加困難,導致訓練難以收斂,模型也達不到好的學習效果,層數過多時也會導致訓練誤差加大.文獻[7]提出了一種捷徑連接的方式增加了一個恒等映射,這種結構可以很好地解決模型性能的退化問題,并且不會產生額外的參數,也不會增加計算復雜度,同時卻可以大大增加模型的訓練速度、提高訓練效果.為了控制模型的大小,使用小卷積核的堆疊來替代大卷積核,可有效地減少模型的參數數量.

圖1 嵌套殘差模塊的結構
殘差網絡通過捷徑連接傳播信息只是在殘差模塊的相鄰層,而文中提出了一種新穎的嵌套殘差卷積神經網絡結構,通過額外的捷徑連接可以在不相鄰的模塊間傳播信息,因此可以增強網絡的學習能力.該網絡主要由嵌套殘差模塊和縮減卷積構成.縮減卷積是一種卷積層,它的尺寸為 3×3,步長為2,填充為1.所以每經過一個縮減卷積,特征圖的尺寸就會減少一半.由于池化層在下采樣的過程會損失過多信息,所以文中采用縮減卷積替代池化層來減小特征圖的尺寸.嵌套殘差模塊的結構如圖1所示.
該模塊使用了3×3的小卷積核,同時使用一個1×3和一個3×1的卷積并聯的方式,可以加速計算,增加了網絡的非線性.合并層則進行了多層次多特征圖的相加融合,能夠得到更豐富的特征,因此能獲得更高準確率.假設輸入為x,兩個虛線框的為映射F和G,則最終輸出為x+F(x)+G[F(x)],令網絡模塊關系映射H(x)=x+F(x)+G[F(x)],而擬合殘差映射F和G比擬合原始映射H(x)要容易得多.該嵌套殘差模塊增加了網絡的深度,并且通過捷徑連接解決了深度網絡存在的問題,同時具有良好的特征提取能力.
文中的嵌套殘差卷積神經網絡結構如圖2所示,由4個縮減卷積和4個嵌套殘差模塊相間堆疊而成,最后連接一個512維的全連接層作為特征輸出層.其網絡結構細節如表1所示.



表1 文中提出的人臉特征提取網絡的具體細節
在應對人臉識別這種具有類內多樣性和類間復雜性的任務時,基于分類損失的卷積神經網絡往往難以達到理想的效果.因此文中使用了一種基于改進分類損失的角度度量損失[8]方法,首先對權值進行標準化,然后再使用角度度量的方式優化網絡,從而實現了最大類內距離小于最小類間距離的識別標準.
這里以二維空間作為例子.在softmax映射空間中,當出現類間距離較小的情況時,特征的區分性不強,余弦距離度量方式會出現偏差,如圖3所示.特征點a和c的余弦距離若是大于a和b的余弦距離,則就會判斷a和c為一類,然而事實是a和b才是一類.為了解決此問題,使用了基于權值標準化的角度度量方法,如圖4所示.固定w1和w2的值,此時要判斷x屬于哪一類,只需要比較α和θ的大小,由于α小于θ,所以x屬于類A.

原始的分類損失是一個交叉熵損失L,可表示為
(1)
其中,M是訓練樣本的數量,xi是第i類的特征向量,yi為xi的標簽,Wj和Wyi是最后全連接層的權值矩陣W的第j列和第yi列,b是指最后一層全連接層的偏置,θj,i是向量Wj和xi之間的角度.

(2)
其中,Lm指經過權值標準化后的損失函數.
此時特征歸類決策只取決于角度,通過訓練能使得卷積神經網絡學習到基于角度分布的特征.
在此基礎上,引入角度間距變量k(k>1),k越大,其特征區分性越強,但是訓練也會更加困難.因為本質上存在類內的較大差異性和類間的高度相似性,而k的增大,意味著類間角度間隔變大,類內角度需要壓縮的更小,所以訓練難度也會增大.最終的角度度量損失函數La可表示為
(3)

如圖5所示,其中特征提取網絡就是1.1小節的嵌套殘差卷積神經網絡,文中就是在特征提取網絡的最后一層全連接分類層進行了權值標準化,然后使用角度度量損失進行訓練優化網絡.

圖5 基于角度度量方法的卷積神經網絡結構
文中實驗平臺的配置包括Intel i5-4460(4x3.2 GHz處理器)、8 GB內存、GTX980Ti顯卡以及 Ubuntu14.04操作系統,并且使用文獻[9]的快速特征嵌入的卷積(Convolutional Architecture for Fast Feature Embedding,CAFFE)深度學習框架作為實驗運行環境.
2.1.1 訓練庫與測試庫
文中使用的訓練庫是經過篩選后文獻[10]的中國科學院自動化研究所網絡人臉數據庫,去除了部分錯誤樣本和重復樣本,總共包含了 10 572 個人,共 453 201 張人臉圖片.
文獻[11]中的人臉標記(Labeled Faces in the Wild,LFW)數據庫包含 5 749 個人,總共 13 233 張人臉圖片.文中是在LFW數據庫上進行測試,測試結果是基于LFW數據庫的 6 000 對人臉驗證任務,包括 3 000 對正樣本和 3 000 對負樣本.
2.1.2 預處理與測試方法
文中首先對訓練庫和測試庫都進行文獻[12]的多任務級聯卷積神經網絡預處理,包括人臉檢測,人臉關鍵點(包括兩個眼睛中心,一個鼻尖,兩個嘴角)定位兩個步驟.然后根據人臉關鍵點進行仿射變換校正,最終將圖片尺寸裁剪為 112× 96.測試時提取圖片原圖和水平翻轉圖的特征,聯合作為最終的比對特征,并通過余弦距離計算特征相似度.
2.2.1 中心損失與角度度量損失的對比分析
文中基于resnet-27[6]和提出的嵌套殘差卷積神經網絡進行了相關度量方法的對比試驗,結果如表2所示.

表2 中心損失與角度度量損失的在LFW數據庫上的結果對比
由表2的序號(1)、(2)和序號(3)、(5)可以看出,經過權值標準化和角度度量后,在LFW上的測試準確率會有所提高,說明角度度量方式有助于提高特征的區分性,增強網絡的性能.通過表2的序號(4)、(5)可以看出,使用角度度量損失的方法優于使用中心損失,在LFW上有更高的測試準確率,可以保證最小的類間距離大于最大的類內距離,使網絡能提取出區分性更強的特征.
2.2.2 角度度量損失的性能與代價分析
文中針對上節中提出的序號(3)、(5)兩個網絡進行實驗對比,實驗環境是在上節中提及的條件下,結果如表3所示.

表3 文中提出的兩個網絡的收斂速度與訓練耗時對比
在嵌套卷積神經網絡的基礎上,使用角度度量后,收斂速度會有所放慢,需要多迭代 2 000 次,增加了9%.使用角度度量后,計算復雜度略微提高,達到相同的 20 000 迭代次數時所需耗時僅僅增加 298 s,增加了4.3%.雖然使用角度試驗后達到收斂時所需耗時增加了 832 s,但是能夠在較高準確率的情況下繼續提高了2.63%的識別精度.
2.2.3 文中方法與其他方法的比較與分析
將文中方法同其他方法進行了對比,結果如表4所示.首先相對于使用分類損失的方法如DeepFace和VGG,文中方法使用了角度度量損失,能提取出區分性更強的人臉特征,人臉驗證任務的準確率也更高.然后,與基于對比損失的DeepID2的方法相比,文中方法在準確率方面略低0.12%,但是文中方法僅僅使用了單個網絡,相較于DeepID2使用的25個網絡,具有更小的復雜度.最后與WebFace[10]相比,文中方法使用了更少的人臉關鍵點,并且識別準確率高了1.3%.

表4 文中方法與其他方法在LFW數據庫上的結果對比
文中提出了一種基于嵌套殘差卷積神經網絡和角度度量的人臉識別方法.其中,嵌套殘差卷積神經網絡具有良好的學習能力,能夠提取更加豐富的人臉特征.而基于權值標準化的角度度量方法能夠使得學習到的特征滿足最大的類內距離小于最小的類間距離,以此增強特征的區分性.在LFW數據庫人臉驗證任務上的實驗結果表明,文中方法與其他方法相比,在具有較高準確率的同時,其在網絡數量和關鍵點數目上也有明顯的優勢.未來的研究可考慮使用更深的網絡來提取特征,進一步可結合更多的度量學習方法來提升識別的精度.除此之外,因為在實際的應用當中,行人處在自然動態狀態下,抓拍難以獲得正面的清晰人臉,因此對提取特征的有效性要求更高,未來的工作可以側重于研究如何提取有效的特征.