損失函數之AMSoftmax Loss

深度學習交流QQ羣:116270156

論文鏈接:Additive Margin Softmax for Face Verification 
代碼鏈接:https://github.com/happynear/AMSoftmax

簡介

嚴格意義上,這篇還不算一篇正式的論文,只能算是一篇技術報告。但是誰讓作者太牛呢(分別是Norm Face 和A-Softmax的一作),當然不等論文正式成型就趕緊消化一下。

之前的L-Softmax, A-Softmax引入了角間距的概念,用於改進傳統的softmax loss函數,使得人臉特徵具有更大的類間距和更小的類內距。作者在這些方法的啓發下,提出了一種更直觀和更易解釋的additive margin Softmax (AM-Softmax)。同時,本文強調和討論了特徵正則化的重要性。實驗表明AM-Softmax在LFW和MegaFace得到了比之前方法更好的效果。相關代碼也公佈在網上。

算法介紹

1. 算法流程

AM-Softmax,單看名字,就能意會它和A-Softmax有關聯。之前我在博客裏寫過L-Softmax、A-Softmax,因此這裏直接跳過這兩者的介紹,直奔主題。 

L-Softmax和A-Softmax均是引入了一個參數因子m將權重W的cos距離變爲cos(mθ),通過m來調節特徵間的距離。與前兩者類似,AM-Softmax將cos(θ)的式子改寫爲: 
上式是一個單調遞減的函數,且比L-Softmax/A-Softmax所用的 Ψ(θ)在形式和計算時更爲簡單。 
除了將b=0, ||W||=1, 作者進一步將||x||=1,最終的AM-Softmax寫爲: 
其中s是一個縮放因子,論文中固定爲30。

2. 討論

與L-Softmax/A-Softmax類似,作者也討論了AM-Softmax的幾何解釋。同樣的,m的取值大小也在控制着了分類邊界的大小。兩類分類呂,對於1類的分類邊界從變爲了。3D解釋圖很好看,但是之前已經貼過兩次,這裏就不再囉嗦了。

這裏寫圖片描述

另外,作者還討論了什麼時候該 加入feature normalization。本篇論文與NormFace一樣,將 ||x||=1在論文【1】中提到,質量較差的人臉圖片的feature norm越小。在進行了feature normalizaiton後,這些質量較差的圖片特徵會產生更大的梯度,導致網絡在訓練過程中將更多的注意力集中在這些樣本上。因此,對於數據集圖片質量較差時,更適合採用feature normalization。後續的實驗也將證明這一點。 

這裏寫圖片描述

3. 實驗

與SphereFace的實驗的數據設置相同,本文與其它Loss函數進行了比較,均取得了最好的結果。 
這裏寫圖片描述
值得注意的是,在LFW集上,未採用feature normalization比採用了feature normalizaiton的結果更好,作者分析是由於LFW的數據質量較高。

總結

本文在特徵和權值正則化的情況下,提出了一種 additive margin Softmax,更直觀也更易解釋,同時也取得了比A-Softmax更好的實驗結果。m可以用乘法、減法加入softmax函數,應該也存在其它的可能來改進;如果能夠動態自適應地調節類間邊界也是一個很有意思和值得討論的課題。

參考文獻

【1】Ranjan R, Castillo C D, Chellappa R. L2-constrained softmax loss for discriminative face verification[J]. arXiv preprint arXiv:1703.09507, 2017.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章