ICCV2021 | TransFER:使用Transformer學習關系感知的面部表情表征


 前言 

人臉表情識別(FER)在計算機視覺領域受到越來越多的關注。本文介紹了一篇在人臉表情識別方向上使用Transformer來學習關系感知的ICCV2021論文,論文提出了一個TransFER模型,在幾個FER基准數據集上取得了SOTA性能。

 

本文來自公眾號CV技術指南的論文分享系列

關注公眾號CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。

圖片

 

Background


在過去的幾十年里,面部表情識別(FER)在計算機視覺研究領域受到了越來越多的關注,因為它對於讓計算機理解人類的情感並與人類進行交互具有重要意義。

盡管FER最近取得了很好的性能,但它仍然是一個具有挑戰性的任務,主要原因有兩個:

1)類間相似度很大。來自不同類的表達式可能只表現出一些細微的差異。如圖1所示,驚訝(第1排)和憤怒(第2排)的嘴巴相似。區分它們的關鍵線索在於眼睛和眼睛之間的區域;

圖片

2)類內小的相似性。屬於同一類別的表情可能會有截然不同的外觀,不同的種族、性別、年齡和文化背景會有所不同。

現有的研究成果可以分為兩類:基於全局的方法和基於局部的方法。

針對基於全局的方法,人們提出了許多損失函數來增強特征的表示能力。然而,由於這些方法使用的是全局人臉圖像作為輸入,它們可能會忽略一些在區分不同表情類別中起重要作用的關鍵人臉區域

為了解決這一問題,人們提出了許多基於局部的方法來學習人臉不同部位的區分特征,這些方法可以分為兩類:基於標志點的方法和基於注意力的方法。

一些方法在landmarks周圍裁剪的面部部位提取特征。然而,有幾個問題:

1)預先定義的面部作物可能不能靈活地描述局部細節,因為不同的圖像可能會有所不同。這是因為人臉的重要部位可能會出現在不同的位置,特別是對於姿勢變化或視點變化的人臉;

2)對於受各種挑戰性因素影響的人臉,例如強烈的光照變化、較大的姿勢變化和嚴重的遮擋,人臉標志點檢測可能不准確甚至失敗。因此,有必要捕捉面部重要部位,抑制無用部位。

 

創新思路


為了解決Background中的問題,一些方法應用了注意力機制。然而,他們可能對相似的面部部位有多余的反應,而忽略了在FER中起重要作用的其他潛在的區別性部位。這個問題對於遮擋或姿勢變化較大的面部尤其嚴重,因為有些面部部位是看不見的。

因此,需要提取不同的局部表征來對不同的表情進行分類。即使某些局部塊(patches)不可見,更多樣化的局部塊也可以發揮作用。同時,不同的局部塊可以相互補充

圖片

例如,如圖所示,僅根據嘴巴區域(列2)很難區分驚訝(第1行)和憤怒(第2行)。我們提出的TransFER模型探索了不同的關系感知面部部位,如眼睛(第3列,第1行)和眉毛之間的區域(第3列,第2行),這有助於區分這些不同的表情。

因此,應該在全局范圍內探索不同局部塊(patches)之間的關系,突出重要的塊(patches),抑制無用的塊(patches)

為了實現上述兩個目標,論文提出了TransFER模型來學習不同關系感知的FER局部表示。

首先,提出了隨機丟棄注意力圖的多注意丟棄算法(Multi-Attention Dropping, MAD)。通過這種方式,推動模型去探索除最具區分性的局部斑塊之外的綜合局部斑塊,自適應地聚焦於不同的局部斑塊。當某些部位因姿勢變化或遮擋而不可見時,此方式特別有用。

其次,Vision Transformer(VIT)適用於FER,稱為VIT-FER,用於對多個局部塊之間的連接進行建模。由於采用全局范圍對每個局部塊進行增強,充分挖掘了多個局部塊之間的互補性,提高了識別性能。

第三,多頭自我注意(multi-head self-attention)使VIT能夠在不同位置共同關注來自不同信息子空間的特征。然而,由於沒有明確的指導,可能會建立冗余關系。為解決這一問題,提出了隨機丟棄一個自我注意的多頭自我注意丟棄(Multi-head Self-Attention Dropping, MSAD)方法。在這種情況下,如果放棄了self-attention,模型就被迫從其他地方學習有用的關系。因此,不同局部塊之間的豐富關系被挖掘出來,從而使FER受益。

圖片

結合新的MAD和MSAD模塊,提出了最終的體系結構,稱為TransFER。如圖所示,與VIT-FER基線(列2)相比,TransFER定位更多樣化的關系局部表示(列3),從而區分這些不同的表達式。它在幾個FER基准上達到了SOTA性能,顯示了它的有效性。

 

Contribution


1.應用VIT自適應地刻畫面部不同部位之間的關系,稱為VIT-FER,展示了VIT-FER對FER的有效性。這是探索Transformers並研究關系感知(relation-aware)的局部塊對FER的重要性的第一次努力。

2.引入多頭自注意丟棄算法(MSAD),隨機刪除自我注意模塊,迫使模型學習不同局部塊之間的豐富關系。

3.設計了一種多注意丟棄算法(MAD)來消除注意圖,推動模型從最具區分度之外的每個面部部位提取全面的局部信息。

4.在幾個具有挑戰性的數據集上的實驗結果表明了提出的TransFER模型的有效性和實用性。

 

TransFER


TransFER的總體架構如圖所示,它主要由莖(stem) CNN、局部CNN和多頭自我注意丟棄(MSAD)組成。莖CNN用於提取特征圖。這里采用IR-50,因為它具有很好的通用性。

圖片

 

Local CNN


如前所述,在給定面部圖像的情況下,首先使用莖CNN來提取特征圖。然后,利用多空間注意力自動捕獲局部塊。然而,如果沒有適當的指導,不能保證全面的辨別性面部部位被定位。如果模型只關注少數有區別的面部部分,當這些部分難以識別或完全遮擋時,FER會受到性能下降的影響,特別是對於姿勢變化較大或遮擋較強的人臉。為了解決這一問題,開發了局部CNN來提取由MAD引導的各種局部特征。框架如上圖所示,主要由三個步驟組成,具體如下。

圖片

首先,生成多注意力圖。X∈R(h×w×c)表示輸入特征圖,其中h、w和c分別表示特征圖的高度、寬度和數量。由於LANet允許模型自動定位重要的面部部位,因此它在多個局部分支中使用,如上圖所示。LANet由兩個1×1卷積層組成。第一層1x1卷積輸出c/r特征圖,其中縮減率用於降低特征圖的維數,后繼的RELU層用於增強非線性。第二層將特征圖數目減少到1,並通過Sigmoid函數(記為ASMI)生成關注圖。假設存在B個LANet分支,則生成注意圖[M1,M2,...,MB],其中Mi∈R(h×w×1)。

其次,MAD迫使多個局部分支探索不同的有用面部部位。一般來說,它接受幾個數據分支作為輸入,並通過將此分支中的值設置為零(不更改輸入形狀)隨機刪除一個分支。因此,MAD將注意力圖作為輸入,隨機將一個注意力圖設置為零,並輸出注意力圖。第三,將多個注意力圖聚合在一起,生成一個注意力圖。具體地說,使用基於元素的最大值操作來聚合多個關注圖。

最后,將Mout與原始特征圖X逐元素相乘。因此,原始特征圖中的不重要區域被抑制,反之亦然。

 

Multi-Attention Dropping


Dropout是為了防止神經網絡過擬合而提出的。它將特征向量或特征地圖調整為輸入。在訓練過程中,輸入的一些元素被隨機設置為零,概率為來自伯努利分布的樣本。如果有多個通道,則每個通道將獨立歸零。

受此啟發,針對FER任務提出了一種類似丟棄的操作,稱為多注意丟棄。與標准Dropout算法相比,本文提出的MAD算法采用一組特征映射(或向量)作為輸入,並將每個特征映射作為一個整體來處理。

圖片

如圖所示,在訓練過程中,從完全設置為零的均勻分布中選擇一個特征圖。根據概率p執行丟棄操作。刪除的特征圖將不會在以下圖層中激活。因此,這是一種類似丟棄的停止梯度操作,該操作可以引導局部CNN探索不同的、具有區分性的面部部位。因此,可以定位均勻分布的面部部位,從而產生有利於FER的全面的局部表示。

 

Multi-head Self-Attention Dropping


多頭自注意丟棄(MSAD)主要由一個在每個多頭自我注意模塊后面注入MAD的transformer encoder和一個MLP分類頭組成,就像vision transformer(VIT)那樣。

圖片

經過局部CNN后,生成包含不同局部塊信息的特征圖Xout ∈ R(h×w×c)。為了捕捉多個局部塊之間的豐富關系,使用了包含M個編碼塊的Transformer。由圖所示,由於此處除了在Multi-head Self Attention后添加了MAD模塊以外, Transformer Encoder的結構基本沒變,因此這里不多介紹。

 

Conclusion


MAD與Dropout、Drop Block、Spatial Dropout的比較

圖片

TransFER與其它SOTA模型的比較

圖片

注意可視化在來自AffectNet數據集的一些示例面部圖像上的不同表情。

圖片

(A)-(G)分別表示憤怒、厭惡、恐懼、快樂、中性、悲傷和驚訝。(I)-(Iv)表示表1中的四種訓練策略,(I)表示基准策略,(Ii)表示使用局部CNN而不使用MAD進行訓練,(Iii)表示使用局部CNN和MAD進行訓練,以及(Iv)表示TransFER,使用局部CNN和MSAD進行訓練。在應用MAD和MSAD之后,整個框架可以專注於更具區分性的面部區域。

 

 歡迎關注公眾號 CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。

 在公眾號中回復關鍵字 “技術總結”可獲取公眾號原創技術總結文章的匯總pdf。

​​

其它文章

2021-視頻監控中的多目標跟蹤綜述

統一視角理解目標檢測算法:最新進展分析與總結

NeurIPS 2021 | LoveDA:面向遙感語義分割與遷移學習的新開源數據集

圖像修復必讀的 10 篇論文    |    Anchor-free目標檢測論文匯總

給模型加入先驗知識的常見方法總結    |    談CV領域審稿

全面理解目標檢測中的anchor    |    實例分割綜述總結綜合整理版
小目標檢測的一些問題,思路和方案    |    小目標檢測常用方法總結

HOG和SIFT圖像特征提取簡述    |    OpenCV高性能計算基礎介紹

CVPR2021 | SETR: 使用 Transformer 從序列到序列的角度重新思考語義分割

經典論文系列 | 縮小Anchor-based和Anchor-free檢測之間差距的方法:自適應訓練樣本選擇

目標檢測中回歸損失函數總結

深度學習模型大小與模型推理速度的探討

視頻目標檢測與圖像目標檢測的區別

CV算法工程師的一年工作經驗與感悟

單階段實例分割綜述    |    語義分割綜述    |    多標簽分類概述

視頻理解綜述:動作識別、時序動作定位、視頻Embedding

資源分享 | SAHI:超大圖片中對小目標檢測的切片輔助超推理庫

從CVPR 2021的論文看計算機視覺的現狀

2021年小目標檢測最新研究綜述
如何使用 TensorFlow 量化神經網絡
Siamese network總結    |    計算機視覺入門路線

Batch Size對神經網絡訓練的影響

論文創新的常見思路總結    |    卷積神經網絡壓縮方法總結


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM