?

一種基于條件生成對抗網絡的面部表情識別技術

2020-09-02 01:22
計算機應用與軟件 2020年8期
關鍵詞:源域卷積數據庫

戴 蓉

(中國民用航空飛行學院 四川 廣漢 618307)

0 引 言

面部表情識別(Facial Expression Recognition,FER)是一個活躍的多學科研究領域,在人機交互、認知心理學、計算神經科學和醫療保健領域具有廣泛的應用潛力[1]。1984年Ekman根據臉部不同的運動單元組合定義出恐懼、生氣、開心、厭惡、悲傷、驚訝6種基本表情[2],從此基于6種情緒類別的情緒識別在機器學習研究界得到了廣泛的關注。近年來,卷積神經網絡(CNN)在人工智能和模式識別方面取得了許多令人振奮的成果,并成功地應用于面部表情識別。

Jiswal等[3]提出了一種結合卷積和雙向長短期記憶網絡(CNN-BLSTM)的面部動作單元檢測新方法,該方法以深度學習的方式共同學習形狀、外觀和動態。Kim等[4]提出了一個具有指數加權決策融合的深度神經網絡層次結構,通過訓練多個CNN模型改變網絡結構、輸入標準化和權值初始化,從而獲得不同的決策邊界。Sang[5]提出了一個基于卷積神經網絡架構的有效檢測笑臉表情的識別系統,采用改進ReLU函數和小濾波器相結合的方式構建深度卷積神經網絡。然而,這些CNN模型通常在同一個數據集上進行培訓和測試。

在現實生活中,雖然6種基本情緒是普遍存在的,但是個體在不同的文化、年齡、性別以及表達情緒的方式上可能會有所不同[6]。因此,一個訓練有素的CNN模型在訓練數據集上具有較高的識別精度,在其他數據集上通常表現不佳。為了使面部表情識別系統更加實用,提高識別模型的泛化能力,研究跨數據庫的FER是很重要的。目前,針對跨數據庫的人臉表情識別算法還不多。朱俊勇等[7]提出了基于稀疏子空間聚類的跨域人臉遷移學習算法,實現了不同數據庫間的信息遷移,但是該方法會產生一些不利于結果的冗余特征和噪聲。Wang等[8]提出了一種基于生成對抗網絡(Generative Adversarial Network,GAN)來提高人臉表情識別的交叉數據集性能的算法,并通過引入分布式偽標簽方法提高目標數據的自適應能力,但是跨數據庫的表情識別率有待提高。

針對實際應用中交叉數據集無法通過監督轉移學習對預先訓練的模型進行微調的問題,本文提出了一種基于條件生成對抗網絡的跨域面部表情識別框架。

1 相關概念

生成對抗網絡GAN基于博弈論中的二人零和博弈思想,具有強大的圖片生成能力,在超分辨率、圖像修復和合成等方面應用廣泛。

1.1 GAN

生成對抗網絡是一種通過對抗過程估計生成模型的網絡框架,該網絡的基本框架由一個生成網絡G和一個判別網絡D構成,GAN的結構如圖1所示。

圖1 生成對抗網絡的結構示意圖

生成網絡G利用真實數據樣本x訓練生成新的數據樣本G(z),判別網絡D是一個二分類器,判斷樣本是來自原始數據x還是由生成網絡產生的G(z)。整個GAN過程網絡G與D同時運行,判別網絡的目的是盡量使D(G(z))接近0,而生成網絡的目的是盡量使它接近1,最終二者在博弈中達到平衡。G和D的總體損失函數可以表示為:

Ez,P(z)[log(1-D(G(z)))]

(1)

式中:z是潛在表征;x是真實數據樣本;P表示概率分布;E表示期望。

1.2 CGAN

為了解決GAN太過自由的問題,文獻[10]提出了一種帶條件約束的GAN-條件生成對抗網絡(Conditional Generative Adversarial Net,CGAN),如圖2所示。該模型在生成網絡(G)和判別網絡(D)的建模中均引入條件變量Y(如數據的標簽),使用額外信息Y對模型增加條件,指導數據生成過程,從而使GAN具有多類數據的生成能力。

圖2 CGAN結構示意圖

與傳統的GAN相比,CGAN模型僅僅在總體損失函數做了一定的修改,新的總體損失函數定義為:

Ez,P(z)[log(1-D(G(z|Y)))]

(2)

2 基于條件生成對抗網絡的表情識別

本文提出了一種基于條件生成對抗網絡的跨域面部表情識別框架,主要分為特征嵌入模塊、對抗性學習模塊和分類模塊,算法的結構示意圖如圖3所示。源域是CK+數據集,目標域是RAF-DB數據集,在訓練階段,網絡管道由兩個并行數據流組成,一條是F→C的分類分支,其中F和C采用監督分類損失進行更新;另一條是對抗分支F→G→D,其中F、G和D使用對抗損失和輔助分類損失進行更新。在測試階段,只保留F和C作為最終分類。

圖3 本文算法的結構示意圖

2.1 框架內容

2.1.1 特征嵌入模塊

從圖3可以看出,特征嵌入模塊F采用了一個修正的VGG16網絡的前5個卷積塊作為其基本架構,預先訓練的卷積層初始學習率設定為rateF=0.000 01。

給定一幅從源域或者目標域數據集中獲取的圖像I,F(I)表示由特征嵌入模塊F生成的結果,然后從N(0,1)中抽取隨機噪聲矢量z∈Rd。情緒類別信息c∈{0,1}(N+1),以一種熱編碼格式表示,其中N表示真實表情標簽的數量,第(N+1)個標簽表示真/偽類。F(I)、z和c作為生成器G的輸入Ig=[F(I),z,c]。目標域中的所有圖像都應與偽類的一個熱編碼相關聯,可以視它們為未標記的數據。

2.1.2 對抗性學習模塊

在對抗性學習模中,發生器G由6個反卷積層組成,每層后面都有一個批歸一化層和ReLU激活函數。判別器D有4個卷積層,每層后面也有一個批歸一化層和泄漏ReLU激活函數。D和G的學習率按經驗設置為rateD=0.000 1。

(3)

(4)

(5)

2.1.3 分類模塊

分類模塊C包含兩個全連接層,最后一層是SoftMax層,有6個輸出值,全連接層的初始學習率根據經驗設定為rateC=0.000 1,給出一個源域圖像Is及其相應的表情標簽,利用交叉熵損失以相同的監督方式更新了特征嵌入模塊F和分類模塊C。因此,通過優化以下目標訓練C和F:

(6)

2.2 聯合學習

迭代優化過程的核心部分是對特征嵌入F進行優化,與源域相關的直接方法是通過傳統的監督學習利用式(6)的梯度。在我們的研究中,特征學習F也受到敵方模塊中輔助分類丟失的影響,在這種情況下,目標是:

(7)

另一個挑戰是如何充分利用F的目標域數據,為了獲得相應的梯度,我們通過D的逆勢損失即Dadv來探索生成機制。因此,F也更新為:

(8)

最后,F的聯合目標函數公式如下:

(9)

式中:λ和α是平衡三個損失的參數。最終目標是使f能夠生成與源域分布S一致的目標嵌入特性。

式(9)中的系數分別設置為λ=0.1和α=0.2。整個框架采用隨機梯度下降(Stochastic Gradient Descent,SGD)進行訓練,模型經過了20 000~30 000次迭代訓練。其余參數設置如下:權值衰減量ω=0.000 1,動量參數Mo=0.9,批量值BS=8。

3 實 驗

3.1 數據集

(1) 擴展的Cohn-Kanade數據集(CK+)[8]。該數據集由123名受試者記錄的593個視頻序列組成。受試者表現出不同的表情,每個視頻從中立表情開始,在最后一幀達到峰值。根據之前的標準設置,在本文實驗中選擇了本文提取每個視頻的最后三幀,生成了981幅圖像數據集。

(2) Oulu-CASIA NIR&VIS數據庫[11]。該數據集是以視頻的方式誘發的包含近紅外光和可見光的自發表情數據集,包含80名受試者記錄的六類基本表情的,共計480個視頻序列,存放于VIS和NIR兩個子集內。實驗中,只使用了由可見光攝像頭在良好的正常光照下拍攝的視頻。同樣,選擇每個序列帶有表情標簽的最后三幀用于構建新數據集,生成了1 440幅圖像數據集。

(3) 真實世界數據庫(RAF-DB)[11]。該數據集包含將近30 000幅真實世界面部表情圖像,根據每幅圖對應的七維表情概率分布向量,將數據庫劃分為七類基本表情來注釋這些數據,并且對每一幅圖像進行了精確的特征點標注以及人臉屬性標注。由于RAF-DB中包含更多的自發表情,因此具有極大的挑戰性,其中一些表情無法很好地區分。實驗選取其中12 271個訓練樣本和3 068個測試樣本的靜態面部表情圖像進行測試。

3.2 結果和分析

CK+→Oulu-CASIA表示CK+數據庫中的981個樣本作為訓練集(源域),Oulu-CASIA數據庫中的1 440個樣本作為測試集(目標域)。訓練階段,來自目標域的樣本被視為未標記的數據。由于RAF-DB包含更多的自發表情,CK+→RAF-DB存在較大的域間隙,因此,對算法的域適應方面提出了更大的挑戰。為了解決這一問題,首先使用981幅標記的CK+圖像(源域)和1 000幅未標記的RAF-DB圖像來訓練本文模型,并評估其對整個RAF-DB集(目標域)的有效性。RAF-DB→CK+表示對1 000幅標記的RAF-DB圖像(源域)進行采樣,并使用整個CK+集(目標域)。同樣的規則也適用于RAF-DB→Oulu和Oulu→RAF-DB的測試。

為了驗證提出方法的優越性,本文比較了不同的域自適應方法:Generative Adversarial Networks(GAN)[8]、Adversarial Residual Transform Networks(ARTN)[12]、Joint Adaptation Network(JAN)[13]。表1和圖4給出了本文方法(FCGD)、不帶域自適應(FC)的方法以及上述三種域自適應方法的測試結果??梢园l現,與其他域自適應方法相比,在所有的跨域測試中,本文域自適應算法更具優勢,特別是在RAF→CK+、Oulu→CK+的性能尤為突出。相對于無任何調整的跨數據集方法FC,本文方法在Oulu→CK+的測試結果提高了10.5%,RAF→CK+提高了15.5%。

表1 不同域適應方法的識別準確度 %

圖4 不同域適應方法的識別準確度

為了進一步了解類別分類,表2-表7給出了FCGD在6個跨數據集任務中生成的混淆矩陣。通過分析矩陣發現,在所有任務中,高興、厭惡和驚奇三種表情的識別準確率在6種表情中總是排在前3位,這與之前文獻[14]的研究一致。憤怒的低準確性在CK+→RAF和RAF→CK+時尤為明顯,這也與文獻[14]中的結果保持一致。此外,當目標域為RAF時,域的移動是相當大的(如表4、表6),RAF性能不佳,這是由于圖像數據的收集條件不同造成的。同時也說明了在實驗室控制的數據庫(CK+和Oulu)上表現良好的方法不適用于野外的FER任務。

表2 FCGD在CK+→Oulu跨數據集任務中生成的混淆矩陣

表3 FCGD在Oulu→CK+跨數據集任務中生成的混淆矩陣

表4 FCGD在CK+→RAF跨數據集任務中生成的混淆矩陣

表5 FCGD在RAF→CK+跨數據集任務中生成的混淆矩陣

表6 FCGD在Oulu→RAF跨數據集任務中生成的混淆矩陣

表7 FCGD在RAF→Oulu跨數據集任務中生成的混淆矩陣

4 結 語

本文提出了一種基于條件生成對抗網絡的域自適應面部表情識別方法,該方法通過優化特征嵌入、對抗性學習和分類三個模塊的聯合學習過程,大大降低了面部表情圖像在源數據域和目標數據域之間的分布差異。本文方法在6個跨域FER任務中始終優于其他域自適應方法,相較于無自適應的跨域方法,面部表情識別率有了明顯提高。

猜你喜歡
源域卷積數據庫
基于3D-Winograd的快速卷積算法設計及FPGA實現
一種并行不對稱空洞卷積模塊①
基于參數字典的多源域自適應學習算法
從濾波器理解卷積
基于傅里葉域卷積表示的目標跟蹤算法
數據庫
數據庫
從映射理論視角分析《麥田里的守望者》的成長主題
數據庫
數據庫
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合