Center Loss(ECCV2016)

論文地址:

首先在每一個類別學習一個類中心(一個和特徵同一個維度的向量),在訓練過程,我們同事更新這個類中心,並最小化深度特徵和對應類中心的距離。作者在論文中使用了softmax loss和center loss聯合訓練,並設定一個超引數用於平衡兩者,以獲得一個更加魯棒的模型。

人臉識別:損失函式總結

損失函式為:

人臉識別:損失函式總結

其中m為batch_size的大小,

c_i

為設定的類中心,每次讀取一個batch會隨機設定類中心

人臉識別:損失函式總結

L-Softmax Loss (ICML 2016)

論文地址:

最初是的Softmax使得

W_1^Tx>W_2^Tx

,就是

\left| W_1 \right|_2\left| x \right|_2cos(\theta_1)>\left| W_2 \right|_2\left| x \right|_2cos(\theta_2)

,但是我們想要使這個約束條件更加嚴格一些,於是加入一個正整數m用來進行進一步的約束,即

人臉識別:損失函式總結

其中

0\leq\theta_1\leq\frac{\pi}{m}

, 根據這個思想我們得到了最終的L-Softmax函式:

人臉識別:損失函式總結

其中

\varphi(\theta)

的定義如下:

人臉識別:損失函式總結

我們可以對比一下L-Softmax和原來Softmax的區別:

人臉識別:損失函式總結

為了方便進行反向傳播,論文對

\psi(\theta)

進行了重構,即

人臉識別:損失函式總結

為了可以正常的正向傳播和反向傳播,我們使用

\frac{W_j^Tx_i}{\left| W_j \right|\left| x_i \right|}

來代替

cos(\theta_j)

,然後使

人臉識別:損失函式總結

上面的公式就是倍角公式的一種?神奇的數學,哈哈!至於如何求偏導那就看論文吧!

人臉識別:損失函式總結

A-Softmax Loss (CVPR2017)

論文地址:

首先我們再次來看原始的Softmax函式,其方程為:SphereFace: Deep Hypersphere Embedding for Face Recognition首先我們再次來看原始的Softmax函式,其方程為:

人臉識別:損失函式總結

其中

\theta_{j,i}

為向量

W_j,x_i

之間的角度,然後我們令

W_j=1,b_j=0

這樣我們就得到了修改後的softmax函式,即

人臉識別:損失函式總結

接著我們再加入上一個L-Softmax的決策邊界,使得類間更加分得開,這樣就可以得到A-Softmax Loss,其決策邊界為:

人臉識別:損失函式總結

人臉識別:損失函式總結

由於L-Softmax會同時從角度和權重長度上區分不同類別,而A-Softmax將權重進行歸一化,並使bias為零,只從角度上去區別不同類別!

AM-Softmax Loss (IPSL 2018)

論文地址:

在這裡,我們把全連線層的輸入

f_i

和權重

w_i

全部進行歸一化處理,然後令其

\varphi(\theta)=cos(\theta)-m

,為了使決策分類更加分離,可以增大超球面的體積,即調整超引數s。Additive Margin Softmax for Face Verification在這裡,我們把全連線層的輸入

f_i

和權重

w_i

全部進行歸一化處理,然後令其

\varphi(\theta)=cos(\theta)-m

,為了使決策分類更加分離,可以增大超球面的體積,即調整超引數s。

人臉識別:損失函式總結

人臉識別:損失函式總結

與A-Softmax相比,僅僅把原來的

cos(m\theta)

變成

cos\theta-m

,這兩者的區別就是一個是角度距離,另一個是餘弦距離。最終的決策邊界是和餘弦相關的,根據cos的性質,最佳化角度距離比最佳化餘弦距離更有效果,因為餘弦距離相對更密集!

ArcFace (CVPR2019)

論文地址:

ArcFace這個網路模型,很早就已經關注了,近幾天去查了一下,已經被CVPR2019收錄,看到人臉識別的各大榜單,基本上都是基於Arcface來進行的,作者認為角度餘量比餘弦餘量更加重要,所以對AM-Softmax進行了改進,得到如下loss函式:ArcFace: Additive Angular Margin Loss for Deep Face RecognitionArcFace這個網路模型,很早就已經關注了,近幾天去查了一下,已經被CVPR2019收錄,看到人臉識別的各大榜單,基本上都是基於Arcface來進行的,作者認為角度餘量比餘弦餘量更加重要,所以對AM-Softmax進行了改進,得到如下loss函式:

人臉識別:損失函式總結

本質上只是把AM-Softmax中的

cos\theta-m

變成了

cos(\theta+m)

,使得其只關注角度資訊,下面給出決策邊界對比

人臉識別:損失函式總結

精度比較

人臉識別:損失函式總結

參考連結

【1】

https://

blog。csdn。net/Fire_Ligh

t_/article/details/79599020

【2】Slumbers:人臉識別損失函式綜述(附開源實現)