[論文][表情識別]Towards Semi-Supervised Deep Facial Expression Recognition with An Adaptive Confidence Margin

柒七同學發表於2022-05-22

論文基本情況

發表時間及刊物/會議:2022 CVPR
發表單位:西安電子科技大學, 香港中文大學,重慶郵電大學

問題背景

在大部分半監督學習方法中,一般而言,只有部分置信度高於提前設定的閾值的無標籤資料被利用。由此說明,大部分半監督方法沒有充分利用已有資料進行訓練。

論文創新點

設定了Adaptive Confidence Margin(自適應閾值)根據訓練規律動態調整閾值,充分利用所有的無標籤資料。

網路結構

image
具體的訓練步驟如下:
初始基本設定:

  1. 設定初始閾值,本文中,對於每個類別,閾值初始值為0.8。
  2. 本模型借鑑Mean Teacher的思想,引入老師模型(ema_model)。
  3. 訓練時有標籤和無標籤資料按1:1的比例輸入網路
  4. 模型backbone採用resent18,輸出最後一層類別概率分佈以及倒數第二層512維特徵向量。

學生網路
對於有標籤資料:
有標籤圖片經過弱資料增強(WA)後進入模型,輸出結果和真值對比,利用交叉熵函式作為損失函式,計算有標籤損失\(L^s_{CE}\)
image

對於無標籤資料:
無標籤圖片複製三份(a圖, b圖, c圖),其中兩份(a圖,b圖)經過弱資料增強(WA)後輸入模型,再將輸出的兩個概率分佈平均後得到最終的概率分佈。記所得概率分佈中的最大概率為\(f_{max}\),對應類別記作\(c\)。如果\(f_{max}\)大於此類別\(c\)對應閾值,則將\(c\)作為此類別的真實標籤,並將此類資料歸為子集I(含“真實標籤”);否則,將此類資料歸為子集II(無真實標籤)。
如果此圖片屬於子集I,則將c圖經過強資料增強(SA)後送入網路,和標籤\(c\)計算交叉熵損失\(L^u\)
image

若此圖片屬於子集II,則\(L^u=0\)。並拼接a圖,b圖輸入模型後得到的兩個512特徵向量,首先根據公式8 計算兩個特徵向量的相似度,再根據公式9計算SupConLoss \(L^c\) (具體計算方法見論文Supervised Contrastive Learning)。
image

image

總損失函式為:
image
實驗中\(\lambda_1 = 0.5,\lambda_2=1,\lambda_3=0.1\)

老師網路
學生模型根據損失函式更新模型引數後,老師網路在學生網路的基礎上使用指數平均移動的方式更新引數。之後,將有標籤資料輸入老師網路,得到概率分佈。
對於一個batch的資料,記最大概率對應標籤類別和真實類別相同的圖片為集合\(N_{st}\),記\(N^c_{st}\)為最大概率對應標籤類別和真實類別相同,且真實類別為\(c\)的圖片張數,記\(s_i\)為最大概率, \(\hat{y_i}\)為預測類別,按照以下公式計算一個類別的平均最大概率,記為\(T_c\)
image
之後,考慮到置信值會隨著epoch數逐步提高,再根據以下公式計算當前epoch各個類別的閾值。
image

至此,一個iteration結束。

實驗

表1 固定閾值和我們方法的比較,在RAF-DB, SFEW資料集上的結果,其中FT 表示使用FixMatch方法時取固定閾值的具體值,
image

表2 RAF-DB, SFEW 和AffectNet三個資料集上我們的方法和其他優秀的半監督方法對比
image

圖3 自適應閾值調整方法,公式5中關於兩個引數的值的消融實驗
image

表3 使用WideResNet-28-2作為backbone在RAFDB上實驗結果
image

圖4 使用2D t-SNE 視覺化方法視覺化得到的特徵,從圖中可以看出,我們的方法對各類表情提取特徵的效果最好(不同類別的特徵重合度最小)。
image

表4 各個不同類別的資料集交叉驗證結果。以下結果為在RAF-DB上訓練,CK+資料集上進行測試所得結果
image

相關文章