劉二毛,智 敏
(內蒙古師范大學 計算機科學技術學院,內蒙古 呼和浩特 010022)
人臉識別技術目前成為現代社會中廣泛應用的一種身份驗證和安全保障手段。然而,年齡因素仍然是人臉識別領域的主要瓶頸。人的外貌特征在成長過程中會發生非線性變化,導致類內差異和類間相似性極高,為人臉識別技術的準確性和穩定性帶來了挑戰。目前,深度學習是跨年齡人臉識別的主流方法之一。Transformer 作為一種新興的深度學習模型,具有快速推理能力和強大的特征抽取能力,能夠很好捕捉不同身份之間的關鍵特征,被應用于跨人臉識別領域。但是,基于Transformer 的跨年齡人臉識別模型仍存在對局部底層特征表達不足,以及特征分解不徹底的問題。
針對Transformer 缺少局部底層特征信息的缺陷,在提取人臉特征時,本文將深度可分離卷積(depthwise separable convolution,DSC)嵌入到Transformer 架構的T2T-ViT[1]模型,構建了一個高效而簡單的深度可分離T2T-ViT 網絡(depthwise separable T2T-ViT,DST2T-ViT),其結合了卷積神經網絡(convolutional neural networks,CNN)在提取底層特征、加強局部性,以及Transformer 在建立遠程依賴關系的優勢,以增加較小的額外計算成本,獲取豐富的底層特征。
針對身份、年齡特征分解不徹底的問題,受注意力機制能夠自適應地關注與目標任務相關的特征,而抑制無關信息的啟發,本文擬通過串聯改進的通道和空間注意力,構造多尺度注意力分解模塊(multi-scale attention decomposition module,MSADM)。該模塊分別在通道和空間兩個維度上采用多尺度注意力,使網絡選擇性地關注與年齡相關的特征,促進高效的特征分解,采用互信息(mutual information,MI)定量地度量兩者之間解耦程度,通過最小化身份和年齡特征之間的MI 對分解后的特征進行相關性約束,捕獲完整的身份信息。
本文中跨年齡人臉識別通過DST2T-ViT 網絡高效捕獲豐富的初始人臉面部特征,采用MSADM 和MI 最小化的正則化算法結合獲取魯棒性強的身份特性。因此,將從人臉特征提取和人臉特征解耦2 個方面討論相關工作。
近些年,基于CNN 模型在跨年齡人臉識別任務取得較多研究成果。文獻[2]將ResNet 網絡作為編碼器和解碼器,提出既能學習穩定身份特征、又能實現逼真人臉合成的混合網絡。文獻[3]在ResNet 網絡中,添加金字塔特征融合模塊,從多個尺度學習有效的特征,以實現魯棒的特征提取?;贑NN 的方法通常模型的參數和MACs 較高,且CNN 專注于對相鄰像素間的關系進行建模,對面部全局信息的掌握有漏洞。Alexey 等[4]將Transformer 引入計算機視覺任務中,提出視覺Transformer(vision transformer,ViT)網絡模型。文獻[5]將T2T-ViT 模型引入跨年齡人臉識別任務,克服CNN 復雜度高和計算耗時等問題,該方法雖然在全局信息建模中具備良好的性能,但對局部信息提取時效果還待提高。所以,本文將CNN 嵌入到T2T-ViT 模型,利用DSC 獲得局部信息,T2T-ViT 捕獲人臉全局信息,進而提取豐富的人臉信息。
為學習判別性強的身份特征,文獻[6]介紹了一種隱性因子分析算法,將初始人臉特征表示為年齡分量、身份分量和噪聲的線性組合,緩解年齡因素對識別影響。文獻[7]用2 個并行全連接層從深度特征中學習身份特征和年齡特征,引入直和模塊消除年齡、身份子空間中的冗余特征。文獻[8]利用線性規范映射模塊獲得年齡特征,引入去相關對抗性學習算法降低兩者之間的相關性。考慮到特征向量間存在非線性關系,文獻[9]利用通道注意力塊在高級語義特征空間中非線性分解人臉特征,以學習健壯的身份特征。文獻[10-11]將空間注意力機制引入特征分解模塊,從空間和通道層次上分配不同的注意權重,提高對年齡特征的表示??臻g注意力圖通過壓縮通道計算,每個通道上的空間注意力權重易分布一致,導致提取的身份特征中包含年齡特征。本文使用多尺度深度條紋卷積來構建空間注意力,單獨計算每個通道的空間注意力圖,促進注意力權重在空間維度上的動態分布,進而學習魯棒性強的身份特征。
跨年齡人臉識別過程中主要的任務是提取不受年齡因素干擾且完整的身份特征。本文提出的整體框架如圖1 所示,該模型主要由3 部分組成:DST2T-ViT 網絡,MSADM,以及MI 估計器、身份和年齡判別器構成的多任務訓練模塊。經過不斷訓練、優化參數來徹底解耦身份、年齡特征。最后使用優化后的模型提取身份特征,將其與數據庫中的特征向量計算余弦距離,實現跨年齡人臉識別。

圖1 整體框架圖Fig.1 Overall framework diagram
本文將DSC 與T2T-ViT 相融,設計了DST2T-ViT 的特征提取網絡,如圖2 所示,主要包含patches嵌入模塊(Patch embedding)、Transformer 層和深度可分離卷積模塊(DSC Block)。

圖2 DST2T-ViT 網絡結構圖Fig.2 Diagram of the DST2T-ViT network architecture
patches 嵌入模塊是由卷積層和池化層構成的模塊,充分利用了CNN 提取底層特征方面的優勢,從特征圖中提取patches,克服Transformer 對局部信息建模能力差的問題。具體來說,利用內核大小為7、步長為2 的卷積層提取人臉淺層局部特征,生成32 個通道的特征圖,再經過BatchNorm 層穩定模型訓練,利用內核大小為3、步長為2 的最大池化層壓縮特征圖,生成比輸入圖像小4 倍的特征圖以便模型學習更多細節特征。
Transformer 層是ViT 模型基本單元,由多頭注意力(multi-head attention,MHA)和多層感知機(multilayer perceptron,MLP)兩個子層構成,在每個子層周圍采用殘差連接,Transformer 層被用于對臉部上下文信息進行建模。多頭注意力子層使用多組注意力權重,學習不同的語義信息。對于頭數為h的注意力子層,輸入特征使用線性變化得到Query、Key、Value 向量,計算公式為
其中,l∈{1,…,L}代表Transformer 層數,i∈{1,…,h}代表頭數,LN為線性變化,不同的l有不同的權重參數,Dh=D/h表示每個注意力頭的維度。然后不同頭q(l,i),k(l,i),v(l,i)并行計算放縮點積注意力,最后將放縮點積注意力結果拼接再次投影作為最終的輸出。計算過程為
其中,σ為激活函數,增強特征間非線性關系。MLP 層通過兩個全連接和GeLU 激活函數將數據映射到不同維度空間,學習面部更加抽象的特征。兩個子層周圍使用殘差連接防止信息丟失。
深度可分離卷積模塊是一種高效的卷積操作,它在通道和空間兩個維度上分解傳統卷積操作,包含深度卷積和逐點卷積兩部分。兩個DSC Block 中均使用卷積核為3,步長為2 的深度卷積聚合通道上的局部空間信息,將特征圖大小縮放原來的一半,再使用多個1×1 卷積對每個通道的特征圖進行逐點線性組合,融合通道之間的信息。該模塊在擴展通道容量的情況下,能夠有效地減少token 序列的長度。
為降低特征分解過程中對身份特征造成的損失,構建了MSADM 在高級語義空間中非線性分解混合人臉特征。MSADM 主要分為改進的通道注意力(improved channel attention,ICA)和多尺度空間注意力(multi-scale spatial attention,MSSA)模塊,利用ICA 使網絡選擇性地關注與年齡相關的對象,MSSA 關注重要的空間區域,通過兩個維度上動態分布注意力權重學習年齡特征,促進高效的特征分解,結構如圖3所示。

圖3 MSADM 結構圖Fig.3 Diagram of MSADM structure
2.2.1 改進的通道注意力 ICA 模塊將全局平均池化和最大池化并聯,利用平均池化保持全局信息的不變性,而最大池化突出對關鍵通道的關注度,引入可學習參數α對兩種池化通道上的特征加權,增強通道上有效特征的選擇。ICA 為了克服通道交互過程中部分信息丟失問題,引入一維快速卷積實現跨通道局部信息交互,強化特征圖的表示能力。特征圖Xin經過ICA 模塊的輸出表達式為
其中,Xage表示年齡特征,Xin表示初始人臉特征,FGMP,FGAP分別表示最大池化和全局平均池化,Conv1 和Conv2 分別表示兩個卷積核為5 的一維卷積,α表示可學習參數,?表示張量對應元素相乘。
2.2.2 多尺度空間注意力 MSSA 模塊根據不同空間區域對年齡分類結果的貢獻,為每個空間位置分配不同的權重,突出特征圖中關鍵年齡結構特征,作為通道注意力的補充。為了在每個通道維度上動態調整空間注意力的權重,本文利用深度卷積來捕捉特征之間的空間關系,確保通道間關系的保留,同時降低計算復雜性。采用多尺度結構來增強卷積運算捕獲空間關系的能力。通道混合由1×1 卷積執行,從而生成更精細的注意力圖。MSSA 模塊的輸出表達式為
其中,X′age表示MSSA 模塊輸出的年齡特征,Xage表示ICA 模塊輸出的年齡特征,DConv表示深度卷積,Branchi表示第i個分支,在每個分支中,使用兩個深度方向的條紋卷積來近似具有大內核的標準深度卷積。每個通道的卷積核大小不同,以捕獲多尺度信息。本文將該模塊與ICA 模塊級聯在一起,組成多尺度注意力分解模塊,促進年齡特征在高級語義空間中有效的選擇。
本文采用多任務訓練約束特征學習,主要有三個基本的約束模塊:身份判別器、年齡判別器和MI 估計器。身份特征判別時,使用ArcFace 函數[12]來監督身份特征Xid學習。ArcFace 函數定義為
其中,n表示個體數量,s表示縮放因子,m表示控制角度上的常數間隔項,yi表示第i個樣本的身份標簽,cosθj表示第i個特征和標簽yj的權重向量之間的余弦值。
對于年齡判別器,由于年齡標簽存在一定的噪聲,遵循文獻[5]年齡標簽劃分為8 個無重復的年齡組,將其作為年齡的類別,使用交叉熵函數評估預測的年齡組與真實年齡組之間的差異。交叉熵函數定義為
其中,N表示年齡組數,zi表示樣本i對應的年齡組標簽。
MI 估計器用于降低年齡特征Xage和身份特征Xid之間相關性。對于給定的Xage和Xid向量之間的互信息I(Xage;Xid)[13]定 義為
通過最小化I(Xage;Xid)使網絡生成對年齡不敏感的身份特征。在人臉特征分解的情況下,條件分布p(Xage;Xid) 無法獲取,使用qψ(Xage|Xid) 來近似p(Xage;Xid)。對于給定樣本(Xage,Xid),MI 最小化目標函數[14]定義為
其中,N表示訓練樣本的數量。為了使上界值更加接近真實值,通過最大化相應的對數似然函數進行約束,其定義為
綜合式(7)及式(8)-(10),整個網絡的多任務訓練總函數定義為
其中,λ1和λ2表示平衡三個損失函數的比例系數。
3.1.1 數據預處理 使用多任務級聯卷積網絡(multi-task cascaded convolutional networks,MTCNN)[15]檢測人臉圖像中的面部區域和關鍵點,相似性變換對5 個面部關鍵點進行處理,輸入人臉圖像被裁剪為112×112 的RGB 圖像。最后,通過減去127.5 并除以128對裁剪后的人臉圖像像素值進行歸一化,如圖4所示。

圖4 人臉對齊效果Fig.4 Face alignment effect
3.1.2 網絡結構 本文的主干使用與T2T-ViT-14類似的網絡結構,采用隱藏維度較少但層次較多的深窄結構,利用卷積操作在空間維度上對特征圖進行三次放縮,分別放縮為原來的1/4、1/8 和1/16,減少tokens 序列長度的同時,對結構信息進行建模。前兩個Transformer 層僅使用一層Transformer,捕獲淺層特征中全局信息,Transformer 層中隱藏尺寸和MLP 尺寸均為64,最后一個Transformer 層的深度設計為14,隱藏尺寸和MLP 尺寸分別為384 和1 152,深窄結構設計能夠降低模型復雜度,并提升特征表達能力。
3.1.3 訓練細節 選用大型的人臉數據集faces emore[16]預訓練網絡模型,在跨年齡人臉數據集CACD 上微調,實現整個網絡的高效訓練。采用預訓練的年齡估計模型[17]估計訓練數據集中人臉年齡信息,提取帶有年齡標簽的85 742 個個體,共5 774 205 張人臉圖像,將年齡信息分為八組:0~12,>12~18,>18~25,>25~35,>35~45,>45~55,>55~65,>65。
模型預訓練時,硬件為單卡NVIDIA GeForce RTX 3090,Pytorch1.8.1 版本上搭建模型訓練。批尺寸大小設置為512,迭代輪數為25,隨機梯度下降法SGD 優化模型參數,初始學習率為0.01,迭代輪數為14、18、22 時,學習率衰減為上一輪的0.1,動量因子為0.9,公式(7)超參數s設置為64,m為0.5,通過反復實驗對比,公式(12)中平衡系數λ1和λ2設置為0.1、0.01 時識別性能最優,MI 估計器的學習率最初被設置為1×10-5,在訓練時期,編碼器前向傳播一次,MI 估計器優化5 次。
3.2.1 FG-NET 數據集實驗結果分析 FG-NET 是跨年齡人臉識別中最受歡迎的人臉老化數據集,包含82 個個體的1 002 張彩色和灰度混合的面部圖像,通過掃描0~69 歲個體照片收集。遵循文獻[6,11]的設置協議,采用留一法進行交叉驗證。具體來說,選擇一張圖像作為測試數據,剩下的1 001 張人臉圖像上微調模型,重復該過程1 002 次,并報告平均等級1 識別率。考慮到數據集中的每個受試者都有多個不同年齡的人臉圖像,該評估策略可以很好地反映識別模型的性能。
本文方法在FG-NET 數據集上與現有的跨年齡人臉識別方法的比較如表1 所示,從表1 可知,本文方法相比其他方法具有更高的準確率,識別準確率達到了94.97%,比當前最優方法提高了0.19%。圖5 可視化了檢索失敗的人臉圖像。檢索失敗的圖像主要位于0~12 歲的嬰兒和兒童,在預訓練數據集faces emore 中未成年人臉圖像占比較少,甚至用于微調模型的CACD 數據集中都不包含0~12 歲之間的人臉圖像,對于試圖通過數據驅動方法學該特定年齡組的潛在分布來說,存在一定局限性。

表1 不同方法在FG-NET 數據集上對比結果Tab.1 Comparison results of different methods on FGNET dataset

圖5 錯誤檢索的人臉圖像Fig.5 Incorrectly retrieved face images
3.2.2 CACD-VS 數據集實驗結果分析 CACD-VS 由年齡在16 至62 歲之間、2 000 位明星的163 446 張人臉圖像組成,來源于互聯網上各種光照條件、不同姿勢和化妝效果下的人臉圖像,能夠有效反映跨年齡人臉識別算法的魯棒性。CACD-VS 是CACD 的一個子集,包含了4 000 對用于人臉驗證的人臉圖像,其中包括2 000 對正樣本圖像和2 000 對負樣本圖像。本文嚴格遵循文獻[18]實驗設置,在CACD-VS 進行實驗評估。考慮到公式(12)中超參數λ1和λ2會影響模型性能,分別設置λ1,λ2為{1,0.1,0.01,0.001},在CACD-VS 數據集進行驗證,以探索其合理的取值。圖6 為不同取值時人臉驗證的準確率,表明了當λ1=0.1 和λ2=0.01 時模型獲得了最佳性能。本文方法與現有方法的Acc 和AUC 的對比見表2,從表2可知,在兩種評價指標中本文方法均不小于現有的模型,精確度達到了99.51%,超過現有最高模型0.16%,表明了本方法在穩健性方面的優越性。

表2 不同方法在CACD-VS 數據集上對比結果Tab.2 Comparison results of different methods on CACD-VS dataset

圖6 不同λ1、λ2 值的人臉驗證準確率曲線圖Fig.6 The accuracy curve of face verification with different λ1 and λ2 values
3.2.3 CALFW 數據集實驗結果分析 CALFW 數據集專為具有顯著年齡差異的無約束人臉驗證設計,包含了4 025 個個體的12 176 張人臉圖像,每個個體至少2 張圖片,挑選了600 對年齡差距相同的正樣本圖像和600對性別相同且種族不用的負樣本圖像,使用Acc 和EER指標評估本文方法的性能。如表3 所示,本文的方法在CALFW 數據集上識別準確率達到了95.81%,創造了CALFW 數據集上的最新記錄。由于該數據集中缺少年齡信息,模型的訓練和微調過程均無其參數,故在該數據進行實驗評估,充分驗證了本文方法在泛化能力方面的優越性。
3.2.4 消融實驗結果分析 為了展示所提模塊的有效性,遵循前文的參數設置,在FG-NET、CACD-VS 和CALFW數據集上設計了4 組對比模型。
(1)Baseline1:直接采用T2T-ViT 網絡提取初始人臉特征,ArcFace 函數作為身份判別器監督訓練。
(2)Bseline2:將DSC 引入T2T-ViT 網絡中提取特征。
(3)Baseline3:改進的T2T-ViT 網絡中增添了MSADM,在高級語義空間中非線性分解初始人臉特征,年齡特征通過交叉熵損失函數約束學習。
(4)Our:本文提出的模型,在Baseline3基礎上,添加了MI 正則化算法去除身份、年齡之間的相關性,MI 估計器與身份、年齡判別器同時監督訓練。如表4 所示,Baseline1 簡單地使用傳統的T2T-ViT 網絡提取身份特征進行識別,在三個數據集上的識別效果差,將DSC 模塊嵌入到T2T-ViT 網絡,三個數據集識別準確度分別提升0.65%,0.49%,0.71%,表明了DSC 可以彌補Transformer 模型對底層局部特征表達不足缺陷。Baseline3 中添加了特征分解模塊和年齡損失函數約束,識別性能得到了一定的提升,驗證了MSADM 模塊能夠突出年齡相關的信息,有效地降低年齡因素對身份識別的干擾。本文方案在Baseline3 基礎上又添加了MI 判別器約束身份、年齡特征分解,模型性能都得到極大提升,說明了本文方法對年齡變化具有較強魯棒性。
本文基于多任務學習的方法,提出使用DST2T-ViT 網絡提取人臉面部特征,該網絡將DSC 模塊嵌入T2T-ViT 網絡,獲取更多局部底層特征信息。為了捕獲完整的身份信息,設計了MSADM 在高級語義空間中非線性地解耦面部特征,MI 最小化算法對年齡特征和身份特征進行相關系約束,以實現高效、精準的特征分解。3 個基準數據集取得良好的實驗結果,證明模型在識別性能上的先進性。同時,經過實驗發現,由于公開的基準數據集存在未成年人臉圖像的缺乏問題,模型無法充分學習和表示未成年人臉的獨特特征,導致涉及未成年人臉識別時,準確率下降,未成年人臉特征學習將是下一步研究重點。