SphereFace: Deep Hypersphere Embedding for Face Recognition - 人臉識別 - Angular softmax loss

Paper name

SphereFace: Deep Hypersphere Embedding for Face Recognition

Paper Reading Note

URL: https://arxiv.org/pdf/1704.08063.pdf

TL;DR

該篇文章出自CVPR2017,提出了angular softmax(A-Softmax) loss來增強用於人臉識別任務的卷積神經網絡產生更具判別性特徵的能力。從幾何角度看,A-Softmax損失可被視爲將人臉特徵強制約束在超球面流形上,同時各特徵在超球面上的角度margin可以通過參數m來進行調節。基於A-Softmax損失實現的模型在LFW、YTF、MegaFace等數據集上取得了SOTA結果。


Introduction

  • 人臉識別(face recognition)任務細分來說有以下兩種:人臉辨認(face identification)與人臉驗證(face verification)

  • 從測試規則來看,人臉識別任務分爲閉集評測(Closed-set),開集評測(Open-set)兩種類型,如下圖所示。其中閉集評測是所有評測的人臉id都存在於訓練集中,這種情況下人臉辨認與人臉驗證兩個任務都可以看做是一個分類任務;而開集評測是評測的人臉id不存在於訓練集,這種情況下人臉辨認與人臉驗證則無法當做分類任務進行處理,目前的處理方式是通過度量學習(metric learning)來解決開集評測任務,度量學習具體來說就是利用深度神經網絡將人臉映射到一個特徵空間中,通過增強特徵空間中不同id的feature之間的差異並減小相同id的feature之間的差異來使各個人臉在特徵空間中能夠被正確分辨出來。
    在這裏插入圖片描述

  • 作者認爲當前的loss function不足以達到上述希望的生成極具判別力特徵的能力。其中傳統softmax loss能夠生成separable的特徵,但是不夠discriminative;contrastive loss和center loss在softmax loss基礎改進來提高特徵的判別能力,triplet loss也別提出來用於監督embedding learning,但是其中center loss僅能夠提升特徵的類內緊湊性,contrastive loss和triplet loss也無法直接限制單個樣本在特徵空間上的分佈,需要精心設計好配對的pair/triplet樣本挖掘過程,這是耗時且performance-sensitive的。

  • 如下圖所示,作者通過將fc層輸入限制爲兩維以便於將CASIA人臉數據集中的人臉圖片映射到二維平面中進行顯示,黃綠色和紫紅色的點分別代表兩個不同id的人臉。可以看出modified softmax loss在softmax loss基礎上提高了特徵判別力,而A-softmax loss又在modified softmax loss的基礎上進一步提高了所提取的特徵的判別力。
    在這裏插入圖片描述


Dataset/Algorithm/Model/Experiment Detail

數據集

  • 訓練集
    作者使用CASIA-WebFace數據集用於訓練,使用的數據集剔除了訓練集與測試集重疊的部分。CASIA-WebFace數據集有10575個不同人臉id的494414張圖片。訓練過程中加入了水平翻轉的數據增廣。值得注意的是作者認爲他們使用的CASIA-WebFace(0.49M)的數據量相比於DeepFace(4M)、VGGFace(2M)、FaceNet(200M)來說並不是很大。
  • 測試集
    在測試過程,作者使用了最經典的LWF,YTF,MegaFace這三個數據集來進行性能評測

實現方式

  • 作者提出的最核心的創新就是A-softmax loss,A-softmax loss的思路簡單來說就是在傳統softmax loss中加入角度的margin約束。下面對A-softmax loss的提出的基礎以及具體形式進行闡述:
    • 傳統的softmax的形式如下所示,其中W和b在這裏代表着網絡最後的fc層的權重和偏移量:
      在這裏插入圖片描述
    • 表示成softmax loss的形式如下所示,作者利用權重與輸入的二範數和權重與輸入的夾角餘弦值來對softmax loss進行改寫,
      在這裏插入圖片描述
    • 將權重normalize操作到二範數爲1,並使偏移量爲0,則可以得到以下的modified softmax loss形式,這種方式的loss能夠將feature映射到一個超球面的流行特徵空間上,作者列舉了之前有研究證明人臉圖片也是處於類似超球面的流行空間上:
      在這裏插入圖片描述
    • 在modified softmax loss的基礎上,作者進一步增加了angular margin的約束,具體形式如下所示:
      在這裏插入圖片描述
      如果要用一個公式或者一句話表示該篇文章的創新點,上面的一個公司和一句話的內容就足夠了。具體來說,對於一個兩類別分類任務,modified softmax loss的分界面爲以下所示:
      在這裏插入圖片描述
      如果在上述的分類邊界中增加一個angular margin約束,分別邊界就變成如下所示:
      在這裏插入圖片描述
      很明顯可以看出這需要類別1的角度要比類別2的角度大一個m的margin才能夠正確被分類,這種方式能夠讓學習的特徵達到增加類內緊湊性和類間區分性的目標。
  • 以上提到的三個loss的分界面如下表所示:
    在這裏插入圖片描述
  • A-softmax loss與歐氏距離margin loss與modified softmax loss的對比情況如下:
    在這裏插入圖片描述
  • 作者在論文中做的比較好的地方是對提出的A-softmax loss進行了一定的特性分析
    • 特性一:m越大角度margin越大,在特徵空間中的約束更大,學習任務也變得更難。會有一個最小的理想m值,即在這個m值能夠讓最大的類內距離小於最小的類間距離
    • 特性二:兩類的分類情況下,上述的m值約束爲:
      在這裏插入圖片描述
    • 特性三:多類分類情況下,上述的m值約束爲:
      在這裏插入圖片描述
      作者在試驗中發現使用m=4一般就足夠了。

實驗結果

  • 實驗具體設置如下所示,在訓練過程中利用A-Softmax loss來根據訓練集中的labels對深度神經網絡進行優化;在測試階段則使用訓練好的網絡的FC層輸出feature,由於這些提取的feature已經在超球面的特徵空間中有優良的判別性,利用餘弦相似度的度量方式即可進行人臉驗證與人臉辨認任務。
    在這裏插入圖片描述
  • 判斷m值對實驗結果的影響,當m值取4時有最優結果。

在這裏插入圖片描述

  • 判斷網絡結構對實驗的影響,隨着網絡層數的增加,識別精度不斷提高
    在這裏插入圖片描述

  • 在LFW與YTF數據集上的實驗結果,取得了SOTA結果,在使用WebFace爲訓練集的方法中取得的測試精度最高
    在這裏插入圖片描述

  • 在MegaFace數據集上的實驗結果,ensemble模型取得了最優結果

在這裏插入圖片描述
在這裏插入圖片描述

Thoughts

該篇文章的創新其實很簡單,最簡單來看就是在modified softmax loss的基礎上加了一個角度的margin約束,以提高類內相似性的同時增加類間區分度。作者能將這麼一個簡單的想法構造成一篇理論基礎紮實、證明充分、展示生動、實驗豐富的文章是值得學習的。

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