?

一種基于FAS-Transformer的人臉防偽方法

2023-07-21 01:15馬宏斌王英麗
黑龍江大學自然科學學報 2023年3期
關鍵詞:防偽復雜度人臉

魏 鑫, 馬宏斌, 王英麗

(黑龍江大學 電子工程學院, 哈爾濱150080)

0 引 言

人臉識別系統具備判別性高、非接觸和響應時間短等特點,可為用戶提供良好的體驗,成為眾多場景下身份認證的選擇。然而,未受保護的人臉識別系統很難應對表征攻擊。針對人臉識別系統的安全性問題,研究人員開始對人臉防偽方法進行研究。目前,人臉防偽方法大體上可以分為兩種類型:傳統方法和基于深度學習的方法。傳統的人臉防偽方法采用手工提取特征,從圖片中提取具有針對性的特征進行檢測。雖然針對性強,但當環境中出現變化因素時穩定性就會變差,在面對重放攻擊時性能會急劇下降。2014年,Yang等首次將深度學習引入了人臉防偽領域,使用卷積神經網絡(Convolutional neural networks, CNN)代替手工提取特征[1]。Liu等在用CNN和循環神經網絡(Recurrent neural network, RNN)獲取深度的同時,引入遠程光電容積脈搏波信號作為輔助手段,讓網絡學習更具針對性[2]。這些基于CNN的研究方法,在應對如照片打印和視頻重放等2D攻擊時表現尚佳,但面對3D面具攻擊時穩定性會急劇下降,說明了此類方法泛化性能不足。應對防偽方法泛化性差的缺點,研究人員提出了基于多通道的人臉防偽方法[3]。這類方法的主要思想是通過融合多個通道的補充信息增加泛化性,但從系統設計的角度出發,此類方法對硬件設備要求嚴格。表征攻擊手段在不斷地更新,會影響系統的構建和實際部署。

以上研究發現,近年來人臉防偽方法的研究思路大體可以概括為:添加輔助信號、融合多通道信息、將人臉防偽問題與其他問題相結合等,以此提升模型的有效性及泛化性。這些方法確實在一定程度上提升了模型分類的精確度以及面對不同表征攻擊的泛化性,但隨之而來的高硬件成本、高計算復雜度和低解釋性等問題仍待解決。

2017年,谷歌提出Transformer模型,成功應用于機器翻譯任務[4]。2020年,Dosovitskiy等將Transformer模型應用于圖像分類任務[5],提出Vision Transformer模型,同樣取得了成功。相比于傳統的神經網絡,注意力機制的優勢主要體現在以下幾個方面: (1) 每層的計算復雜度更低; (2) 可以并行地進行計算; (3) 可以有效地解決長輸入序列的依賴問題; (4) 可解釋性強。這些優勢為將Vision Transformer模型應用于人臉防偽任務提供了可能,因為人臉防偽任務本質上是二分類任務。

結合人臉防偽任務存在的問題以及注意力機制的優勢,本研究進行基于注意力機制的人臉防偽方法研究。通過對Vision Transformer模型進行改進,構建了FAS-Transformer模型,將輸入的人臉圖像經過線性映射嵌入位置信息和判別信息,借助多頭注意力獲取特征向量之間的關系。針對人臉防偽模型訓練普遍存在的數據量不足問題,采用遷移學習的思想,為實驗引入預訓練模型。同時,為增強模型的可解釋性,對注意力進行可視化處理。

1 基本理論

1.1 Transformer模型

Transformer模型的提出是為了解決傳統神經網絡在處理序列模型時存在的長期依賴和計算效率低的問題,在結構上首次引入全注意力機制代替傳統的循環卷積神經網絡。Transformer模型結構如圖1所示,主要由編碼器和解碼器兩部分構成,其中編碼器用于將輸入序列映射為符號表征,而解碼器則會依據編碼器的輸出生成最終的預測。

圖1 Transformer模型結構

由于注意力機制中每個元素都要和其他元素進行交互,故它是一種位置無關的方法,需要嵌入位置編碼。編碼后的序列會通過多頭注意力機制進行打分,比較輸入序列元素之間的成對相似性關系,獲取注意權重,進而對輸出結果進行預測。多頭注意力使得模型可以并行地進行計算,再將單個輸出聯合到一起作為輸出。注意力的計算過程描述公式為:

(1)

MultiHead(q,k,v)=Concat(head1,…,headn)W

(2)

Transformer模型一經提出就引起了研究人員的廣泛關注,這種不同于過去CNN和RNN的簡單網絡結構,使用全注意力機制避免了循環和卷積。得益于自身可并行計算的優勢,所需的網絡訓練時間也更短。起初Transformer模型被用于處理Seq2seq問題,廣泛用于機器翻譯任務。由于模型的結構設計僅適用于一維序列輸入,因此,一直無法在計算機視覺領域得到重用。

1.2 Vision Transformer (ViT)模型

為使Transformer模型適應計算機視覺任務,Dosovitskiy等提出了ViT模型。將輸入圖片格式由x∈H×W×C進行線性映射,轉換為平鋪的成塊序列xp∈N×(p2·C),滿足Transformer結構的一維輸入,其中,(H,W)為原始圖片分辨率,C為通道數,(P,P)為分塊圖片的大小,N=HW/P2為圖片分塊總數。ViT模型結構如圖2所示。

圖2 Vision Transformer模型結構

ViT模型改進了Transformer中的編碼器結構獲取圖像像素間的相關性,為便于處理,在所有層使用D維的恒定向量,將所有塊映射成相同維數。經過位置信息嵌入的塊會經過層歸一化處理,使用多頭注意力機制計算注意力權重,并最終使用多層感知器進行分類,得到圖片表征y。該過程如式(3)~式(5)所示:

z′l=MSA(LN(zl-1))+zl-1,l=1,…,L

(3)

zl=MLP(LN(z′l))+z′l,l=1,…,L

(4)

(5)

ViT模型將圖片視為輸入序列,通過線性映射使其適用于Transformer結構的一維輸入,并利用注意力打分機制很好地實現了圖像分類任務。

2 適用于人臉防偽任務的FAS-Transformer模型

為使注意力機制成功應用于人臉防偽任務,提出了基于ViT模型改進的FAS-Transformer模型。為使模型對人臉真偽特征進行學習并作出區分,在輸入人臉圖像序列化后嵌入位置信息,并嵌入真偽判別信息。同時,對分類網絡結構進行改進,采用全連接層配合Softmax函數進行最終的結果分類。FAS-Transformer模型結構如圖3所示。

圖3 FAS-Transformer模型結構

圖4 數據預處理流程

在對輸入的人臉圖像進行和ViT模型相同的分塊操作后經過線性映射,使用正余弦函數作為學習的位置編碼函數,保證每個位置編碼的唯一性。偶數位置采用正弦函數編碼,奇數位置采用余弦函數編碼,通過這種方式使模型能夠學習到輸入圖像小塊的相對位置信息。

PE(pos,2i)=sin(pos/10 0002i/dmodel)

(6)

PE(pos,2i+1)=cos(pos/10 0002i/dmodel)

(7)

式中:pos表示位置;i表示特征維度;dmodel表示模型維度。

為了使模型對人臉真偽特征進行學習,采用有監督訓練,在嵌入位置信息的同時,嵌入真偽判別標識(其中,0表示偽造特征,1表示真實特征)。

模型結構中使用多頭注意力將輸入映射到不同的特征子空間。此后,計算每個頭的注意力,再將計算得到的多個頭的輸出進行拼接,經過再次投影構成多頭注意力的整體輸出。使用多頭注意力的優勢在于,可以同時關注來自不同位置的不同表示子空間的信息,如果使用單一注意力在計算時就會使用平均去抑制這些信息。

在模型訓練的過程中,隨著每一層參數的更新會導致上層輸入數據分布的變化,堆疊的層數越多,這種分布變化越劇烈,這使得高層需要不斷地適應底層數據的更新。為了加快模型的收斂,保證數據特征分布的穩定性,在訓練單個樣本時采用了層歸一化。

(8)

式中:x為樣本;μ為均值;σ為方差;α和β為可學習參數。

損失函數:為獲取更好的實驗結果,在訓練過程中采用二值交叉熵(Binary cross-entropy, BCE)損失函數對網絡進行監督,對參數進行微調。

(9)

式中:N表示樣本個數;yi表示樣本標簽;ai表示樣本權重值。

測試策略:在測試階段為了評估特征的真偽,需要將經注意力機制處理的特征與真實特征的權重均值做出比較,通過計算兩者之間的距離獲取最終分類打分,打分公式為:

Score(xi)=‖φ(xi;ai)-c‖

(10)

式中:xi表示人臉特征;ai表示特征所對應的權重;c表示真實特征的權重均值。

3 測試與結果分析

3.1 測試環境及實驗參數

硬件平臺采用32GB運行內存,11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz處理器,NVIDIA GeForce RTX 3060 GPU。軟件平臺采用基于Windows 11搭建的Pytorch深度學習框架。實驗采用的基本網絡結構的實踐方法已在Github上開源。實驗參數設置如表1所示,其中訓練Batch-size可以根據自身設備性能好壞適當提高,選擇標準Adam作為優化器。將驗證集上損失最少的模型作為最終的模型選擇,模型的訓練流程如算法1所示。

表1 實驗參數設置

3.2 數據預處理

為避免不同數據集中的背景環境對實驗造成的影響,預先對數據集中的人臉進行剪裁。裁剪過程采用Dlib作為人臉檢測器并使用開源計算機視覺庫OpenCV,首先獲取人臉矩形坐標信息,再通過加載68點預訓練模型(Shape_predictor_68_face_landmarks)進行關鍵點預測,并使用自帶函數實現人臉對齊操作。在對坐標、角度進行一系列計算后定位圖片中的人臉,將提取到的關鍵區域保存。通過加載預訓練模型,整個剪裁過程速度很快,對于數據集中存在視頻的情況,設定幀數進行視頻抽幀,再進行裁剪。為滿足后續實驗安排,圖片裁剪大小統一設置為224×224,分塊大小為16×16,并對經過預處理的圖片采用垂直鏡像對稱的方式以0.5的概率進行數據擴充。

3.3 權重

集內測試實驗中使用表征攻擊分類錯誤率(Attack presentation classification error rate, APCER)、真實呈現分類錯誤率(Based presentation classification error rate, BPCER)以及平均分類錯誤率(Attuck classification error rate, ACER)進行評估。ACER是APCER和BPCER總和的一半,其中APCER表示所有表征攻擊中最高的假陽性率,其公式為:

(11)

對于CASIA-MFSD和Replay-Attack之間的集間測試實驗,使用半總錯誤率(Half total error rate, HTER)、錯誤接受率(False accept rate, FAR)和錯誤拒絕率(False rejection rate, FRR)進行評估,其公式為:

(12)

3.4 集內測試實驗

為了驗證所提出方法的有效性,設計了兩組集內測試實驗,分別在SiW和WMCA數據集上進行。

3.4.1 SiW集內測試實驗

SiW: 數據集提供165個對象的活體和偽造視頻[6]。其中為每個對象錄制8個真實視頻和20個偽造視頻,共有4 478個視頻。視頻的幀數為30 fps,時長為15 s,清晰度為1 080P HD?;铙w視頻的收集分為4種類型:距離、姿態、光照和表情。偽造視頻的攻擊手段如打印照片和視頻重放。為方便未來研究,數據集制作團隊定義了子協議方便研究人員對人臉表征攻擊方法的泛化性和模型在不同媒介上的表現能力及應對未知攻擊時的表現進行評估。

參考文獻[7]中的方法對評估集應用固定的預訓練閾值0.3,應用到3種子協議中,使用ACER、APCER和BPCER進行評估。實驗結果如圖5所示,選取了4種主流方法與本方法進行對比,分別是:Auxiliary[6]、ResNet[8]、DenseNet[9]和Meta-FAS-DR[10],可以看出,在3種協議的對比實驗中,所提出的方法性能最佳。

圖5 SiW數據集上3種協議下的集內測試結果

3.4.2 WMCA集內測試實驗

WMCA數據集記錄了72位不同身份對象的1 941個短視頻,包括真實的和偽造的[11]。數據的記錄通過渠道為:色彩、深度、紅外線和熱溫度計。該數據集依賴強大的拍攝設備模仿3D表征攻擊。不同通道的數據依靠不同類別的傳感器進行采集。所用的數據集源自2個傳感器的采集,在信息采集時對背景進行改變。

實驗使用留一法,單獨留出一種攻擊類型放在訓練集中,將其他的攻擊類型用于評估集,這樣就構成了一個簡單的留一協議。測試所提出方法在不同攻擊類型下的表現,并與基線方法進行比較,在實驗過程中對標準的網絡結構進行微調,將最后一層改為全連接層適應二分類任務,實驗結果如表2所示。由實驗結果可知,在與ResNet50和DenseNet169兩種方法比較后,所提出方法的性能更好,平均值達到了(14.4±8.2)%,遠優于基線方法。

表2 不同攻擊類型下基線方法和所提出方法在WMCA數據集上的性能對比

3.5 集間測試實驗

為了驗證本方法具備一定的泛化性,設置了集間測試實驗,并選用CASIA-FASD[12]及Replay-Attack[13]兩個數據集進行實驗,整個實驗過程可以簡單概括為在一個數據集上訓練模型,在另一個數據集上驗證模型的性能。

CASIA-FASD: 該數據集包含來自50個對象的真實和偽造人臉的錄像。數據集中設計了3種偽造攻擊:扭曲照片攻擊、剪切照片攻擊及視頻攻擊。

Replay-Attack: 該數據集包含在不同的光照條件下,來自50名對象的共計1 300個視頻片段,由圖片和視頻攻擊共同組成,是一個2D人臉防偽攻擊數據集。數據集中的數據被劃分為4個子集:(1) 訓練數據用于訓練防偽分類器;(2) 開發集用于閾值的估計;(3) 測試數據用于報告錯誤數;(4) 注冊數據用于驗證人臉檢測算法的敏感性。出現在一個數據集中的對象不會在其他數據集中再次出現。如表3所示,模型在HTER權重下獲得了較好的性能,并且性能優于主流研究方法,這也驗證了所提出方法具備一定的泛化性。同時,實驗結果顯示出了一種規律,在圖片分辨率較高的數據集上訓練出的模型,在分辨率低的數據集上測試會顯示出更好的精度。

表3 集間測試實驗結果

3.6 注意力的優化

為了更直觀地展示注意力機制在人臉防偽任務中的工作原理,使用注意力圖可視化的方法,直觀地展現了注意力機制在處理人臉防偽任務時關注的位置。在實驗過程中對底層注意力進行移除操作,因為已有實驗證明底層注意力效果不佳,對其進行移除操作可以實現去噪,保證注意力更集中。同時,對注意力頭打分取平均值用于設置丟棄率,去除低分的輸出。通過調整讓注意力更加集中,優化實驗效果。如圖6所示,經過優化后的注意力集中出現在人臉五官和面部與背景區域的邊界處。

圖6 注意力圖

3.7 特征可視化

為了以更直觀的方式顯示模型在處理人臉特征過程中對不同類型特征所做出的區分,利用t-SNE可視化方法,對數據集中的部分特征進行可視化顯示。t-SNE技術通過在二維或三維地圖中給每個數據提供一點進行標識來可視化高維數據,該技術是隨機鄰域嵌入的一種變體,通過減少中心聚點的趨勢提供更直觀的可視化效果,也更易優化。Replay-Attack數據集集內測試過程中的真偽分類數據可視化處理的結果如圖7所示,可以看出,所提出的模型對真偽特征進行了有效區分,特征會向自身類別聚攏,這為后續分類提供了依據。WMCA數據集不同攻擊類型特征可視化的結果如圖8所示,實驗選用了真實,眼鏡、打印及重放攻擊特征進行可視化,由結果圖可知,不同攻擊類型的特征在分類測試過程中同樣提供了類別區分,但仍有少量特征會與其他類別特征出現重疊情況。

圖8 WMCA數據集4種特征可視化結果

3.8 模型復雜度分析

模型的復雜度可由兩個指標進行描述:時間復雜度和空間復雜度。其中,時間復雜度通過模型計算量衡量,空間復雜度則是通過模型參數量衡量。為了對模型復雜度進行分析,通過實驗對比了基線方法及本方法的計算復雜度及參數總量。本方法與基線方法模型計算復雜度的對比結果如圖9所示,本方法與基線方法各自參數總量的對比結果如圖10所示??梢钥吹?模型的計算復雜度及參數總量隨著訓練輪次的增加而增加,大幅度的超過了對比的基線方法,這為模型的進一步優化提供了方向。

圖9 模型計算復雜度折線圖

圖10 模型參數總量折線圖

4 結 論

將注意力機制應用到人臉防偽任務中,通過對ViT模型進行改進,將模型的分類層替換為全連接層,并添加真偽判別信息,提出一種基于FAS-Transformer的人臉防偽方法。為驗證本方法的性能,設計集內和集間測試實驗與主流方法進行對比。通過實驗驗證,本方法在同一數據集的不同協議類型、不同攻擊類型及跨數據集測試結果中的有效性和泛化性均優于主流方法,較好地解決了人臉防偽方法在應對不同表征攻擊類型時,普遍存在的泛化性差的問題,具備一定的實用價值。同時,為體現注意力機制可解釋性強的優點,對注意力做可視化處理,方便對其工作原理進行理解。當然,仍有一些問題需要進一步研究,如不同數據集背景環境對實驗結果的影響。本實驗操作中對輸入的圖像進行了統一的剪裁,這是為了消除不同人臉防偽數據集間的背景差異,但也在一定程度上損失了背景環境信息。此外,FAS-Transformer模型雖然在性能上更優于主流方法,但也存在一定的局限性,如模型訓練數據量大和計算復雜度較高等特點,這些問題值得進一步研究。

猜你喜歡
防偽復雜度人臉
INTEGRITYTM ECO100再生縫紉線引入防偽技術
有特點的人臉
你知道古代圣旨和紙鈔是怎樣防偽的嗎
一種低復雜度的慣性/GNSS矢量深組合方法
三國漫——人臉解鎖
求圖上廣探樹的時間復雜度
民國時期紙鈔上的防偽暗記
某雷達導51 頭中心控制軟件圈復雜度分析與改進
出口技術復雜度研究回顧與評述
馬面部與人臉相似度驚人
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合