論文解讀(CosFace)《CosFace: Large Margin Cosine Loss for Deep Face Recognition》

2023-03-23 18:01:21

論文資訊

論文標題:CosFace: Large Margin Cosine Loss for Deep Face Recognition
論文作者:H. Wang, Yitong Wang, Zheng Zhou, Xing Ji, Zhifeng Li, Dihong Gong, Jin Zhou, Wei Liu
論文來源:2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition
論文地址:download 
論文程式碼:download
參照次數:1594

1 介紹

  當前提出的損失函數缺乏良好的鑑別能力,所以本文基於 「最大化類間方差和最小化類內方差」 的思想提出了 大邊際餘弦損失(LMCL)。

2 方法

2.1 引入

  $\text{Softmax}$ 損失函數【指交叉熵損失函數】:

    $L_{s}=\frac{1}{N} \sum_{i=1}^{N}-\log p_{i}=\frac{1}{N} \sum_{i=1}^{N}-\log \frac{e^{f_{y_{i}}}}{\sum_{j=1}^{C} e^{f_{j}}}    \quad\quad(1)$

  其中,  

    $f_{j}=W_{j}^{T} x=\left\|W_{j}\right\|\|x\| \cos \theta_{j}$

  Note:$\theta_{j}$ 代表了 權重向量 $W_{j}$ 和 $x$ 之間的夾角;

  分類任務的期望,是使得各個類別的資料均勻分佈在超球面上。

  NSL 損失:【 固定權重向量 $W$ 的模長 $\|W\|=s$ 和特徵向量 $x$ 的模長 $\|x\|=s$】

     $L_{n s}=\frac{1}{N} \sum_{i}-\log \frac{e^{s \cos \left(\theta_{y_{i}, i}\right)}}{\sum_{j} e^{s \cos \left(\theta_{j, i}\right)}}  \quad\quad(3)$

  通過固定 $\|x\|=s$ 消除徑向的變化,使得模型在角空間中學習可分離的特徵。

  例如,考慮二分類的情況,設 $\theta_{i}$ 表示特徵向量與類 $C_{i}$($i = 1,2$)權重向量之間的夾角。NSL 強制 $C_{1}$ 的 $\cos \left(\theta_{1}\right)>\cos \left(\theta_{2}\right)$,$C_{2}$ 也是如此,因此來自不同類的特性被正確地分類。

  由於 NSL 學習到的特徵沒有足夠的可區分性,只強調正確的分類。所以,本文在分類邊界中引入餘弦間隔,納入 Softmax 的餘弦公式中。

  為開發一個大間隔分類器,進一步需要 $\cos \left(\theta_{1}\right)-m>\cos \left(\theta_{2}\right) $ 及 $\cos \left(\theta_{2}\right)-m>\cos \left(\theta_{1}\right)$,其中 $m \geq 0$ 是一個固定引數來控制餘弦間隔的大小。由於$\cos \left(\theta_{i}\right)-m$ 低於 $\cos \left(\theta_{i}\right)$,因此對分類的約束更加嚴格,推廣到多類:

    ${\large L_{l m c}=\frac{1}{N} \sum_{i}-\log \frac{e^{s\left(\cos \left(\theta_{y_{i}, i}\right)-m\right)}}{e^{s\left(\cos \left(\theta_{y_{i}, i}\right)-m\right)}+\sum_{j \neq y_{i}} e^{s \cos \left(\theta_{j, i}\right)}}} \quad\quad(4)$

  其中,

    $\begin{array}{l}W =\frac{W^{*}}{\left\|W^{*}\right\|}\\x =\frac{x^{*}}{\left\|x^{*}\right\|}\\\cos \left(\theta_{j}, i\right) = W_{j}^{T} x_{i}\end{array} \quad\quad(5)$

2.2 方法對比

  

$\text{Softmax}$ 的決策邊界:【$magin< 0$】

    $\left\|W_{1}\right\| \cos \left(\theta_{1}\right)=\left\|W_{2}\right\| \cos \left(\theta_{2}\right)$

  邊界依賴於權重向量的大小和角度的餘弦,這導致在餘弦空間中存在一個重疊的決策區域。

$\text{NSL}$ 的決策邊界:【$magin= 0$】

    $\cos \left(\theta_{1}\right)=\cos \left(\theta_{2}\right)$

  通過去除徑向變化,NSL 能夠在餘弦空間中完美地分類測試樣本。然而,由於沒有決策邊際,它對噪聲的魯棒性並不大:決策邊界周圍的任何小的擾動都可以改變決策。

$\text{A-Softmax}$ 的決策邊界:

    $\begin{array}{l}C_{1}: \cos \left(m \theta_{1}\right) \geq \cos \left(\theta_{2}\right) \\C_{2}: \cos \left(m \theta_{2}\right) \geq \cos \left(\theta_{1}\right) \end{array}$

  對於 $C_{1}$,需要 $\theta_{1} \leq \frac{\theta_{2}}{m}$。然而問題是 $\text{Margin}$ 隨著 $W_1$ 和 $W_2$ 之間的夾角發生變化,如果兩個類的樣本區分難度很大,導致 $W_1$ 和 $W_2$ 夾角很小,可能會出現 $\text{Margin}$ 很小的情況。

$\text{LMCL }$ 的決策邊界:

   $\begin{array}{l}C_{1}: \cos \left(\theta_{1}\right) \geq \cos \left(\theta_{2}\right)+m \\C_{2}: \cos \left(\theta_{2}\right) \geq \cos \left(\theta_{1}\right)+m\end{array}$

  因此,$\cos \left(\theta_{1}\right)$ 被最大化,而 $\cos \left(\theta_{2}\right)$ 被最小化,使得 $C_{1}$ 執行大邊際分類。$\text{Figure 2}$ 中 $\text{LMCL}$ 的決策邊界,可以在角度餘弦分佈中看到一個清晰的 $\text{Margin}$( $\sqrt{2} m$)。這表明 LMCL 比 NSL 更健壯,因為在決策邊界(虛線)周圍的一個小的擾動不太可能導致不正確的決策。餘弦裕度一致地應用於所有樣本,而不考慮它們的權值向量的角度。

2.3 特徵歸一化

  特徵歸一化的必要性包括兩個方面:

    • 沒有歸一化之前的 $\text{Softmax}$ 損失函數會潛在地學習特徵向量的 $L_{2}$ 模長和角度餘弦。由於 $L_{2}$ 模長的增大,會一定程度上降低損失函數的值,這樣會削弱餘弦約束;
    • 同時希望所有資料的特徵向量都具有相同的二範數,以至於取決於餘弦角來增強判別效能。在超球面上,來自相同類別的特徵向量被聚類在一起,而來自不同類別的特徵向量被拉開;

  比如假設特徵向量為 $\mathrm{x}$,讓 $\cos \left(\theta_{i}\right)$ 和 $\cos \left(\theta_{j}\right)$ 代表特徵與兩個權重向量的餘弦,如果沒有歸 一化特徵,損失函數會促使 $\|x\|\left(\cos \left(\theta_{i}\right)-m\right)>\|x\|\left(\cos \left(\theta_{j}\right)\right)$ ,但是優化過程中如果 $\left(\cos \left(\theta_{i}\right)-m\right)<\cos \left(\theta_{j}\right)$ ,為了降低損失函數,用 $\|x\|$ 的增加來換取損失函數的降低也是很可能的,所以會導致優化問題產生次優解。
  此外尺度引數 $s$ 應該設定足夠大,對於 NSL,太小的 $s$ 會導致收斂困難甚至無法收斂。在 LMCL,我 們需要設定更大的 $s$ 才能保證在預設的 Margin 以及在足夠大的超球面空間來學習特徵。
  接下來分析 $s$ 應該有一個下界來保證獲得期望的分類效能。給定歸一化的學習特徵向量 $x$ 和單位權重向量 $W$,用 $C$ 表示類別總數,假設學習到的特徵分別位於超平面上,以相應的權重向量為中心。$p_{W}$  表示類裡面期望的最小的後驗概率(也就是與 $W$ 重合的特徵的後驗概率), $s$  下界為:

     $s \geq \frac{C-1}{C} \log \frac{(C-1) P_{W}}{1-P_{W}}  \quad\quad(6)$

  可以分析出,如果在類別數保持一定情況下,想要得到最佳的 $p_{W}$,$\mathrm{~s}$ 要足夠大。此外,如果固定 $p_{W}$,隨著類別數的增加,也需要增大 $\mathrm{s}$ 值,因為類別數的增加會提升分類的難度。

2.4 LMCL的理論分析

  選擇合適的 $\text{Margin}$ 很重要,分析超引數 $\text{Margin}$ 的理論界限很有必要。

  考慮二分類問題,類別分別是 $\mathrm{C}_1$  和 $\mathrm{C}_2$,歸一化特徵為 $x$,歸一化權重向量 $W_{i}$,$W_{i}$ 與 $x$ 之間的夾角為 $\theta_{i}$,對於NSL而言,決策邊界 $\cos \left(\theta_{1}\right)=\cos \left(\theta_{2}\right)$ 等同於 $W_{1}$ 和 $W_{2}$ 的角平分線。對於 $\mathrm{LMCL}$,對於 $\mathrm{C}_1$ 類樣本它會驅使決策邊界 $\cos \left(\theta_{1}\right)-m=\cos \left(\theta_{2}\right)$ 的形成,這樣會導致  $\theta_{1}$ 比 $\theta_{2}$ 小的多。因此類間差異擴大,類內差異縮小。

  我們發現 Margin 與 $W_{1}$ 和 $W_{2}$ 之間的角度有關係。當 $W_{1}$ 和 $W_{2}$ 都給定的時候,餘弦 Margin 具有範圍的限制。具體而言,假設一個場景,即屬於第 $i$ 類的所有特徵向量與第 $i$ 類的相應權重向量 $W_{i}$ 完全重疊。 換句話說,每個特徵向量都與類 $i$ 的權重向量相同,並且顯然,特徵空間處於極端情況,其中所有特徵向量都位於其類中心,在這種情況下,決策邊界的 Margin 已最大化(即,餘弦 Margin 的嚴格上限)。

  理論上 $m$ 的範圍是: $0 \leq m \leq\left(1-\max \left(W_{i}^{T} W_{j}\right)\right), i \neq j$ ,$\text{softmax}$ 損失嘗試使來自任意兩個類的兩個權重之間的角度最大化,以執行完美分類。很明顯,softmax 損失的最佳解決方案應將權重向量均勻分佈在單位超球面上。引入的餘弦 Maging 的可變範圍可以推斷如下:

    $\begin{array}{l}0 \leq m \leq 1-\cos \frac{2 \pi}{C}, \quad(K=2) \\0 \leq m \leq \frac{C}{C-1}, \quad(C \leq K+1) \\0 \leq m \ll \frac{C}{C-1}, \quad(C>K+1)\end{array}   \quad\quad(7)$

  $C$ 是訓練類別數,$K$ 是學習特徵的維度。這個不等式意味著隨著類別數目越多,$\text{Margin}$ 的設定上界相應減少,特別是類別數目超過特徵維數,這個上界允許範圍變得會更小。在實踐中 $m$ 不要取理論上界,理論上界是一種理想的情況(所有特徵向量都根據相應類別的權重向量居中在一起),這樣當 $m$ 太大模型是不會收斂的,因為餘弦約束太嚴格,無法在現實中滿足。其次過於嚴格的餘弦約束對噪聲資料非常敏感,影響整體效能。

  作者做了一個小實驗驗證了這些思想,取了 8 個人的人臉資料,用原始的 $\text{Softmax}$ 損失和本文提出的 LMCL 損失函數訓練樣本,然後將特徵提取並視覺化,$m$ 應該小於 $1-\cos \left(\frac{2 \pi}{8}\right)$,大約 $0.29$ ,分 別設定 $ \mathrm{m}=0,0.1,0.2$  三種情況,可以觀察到原始的 $\text{softmax}$ 損失在決策邊界上產生了混淆,而提出的 LMCL 則表現出更大的優勢。隨著$m$ 的增加,不同類別之間的角度 $\text{Margin}$ 已被放大。