FaceNet: A Unified Embedding for Face Recognition and Clustering - 人臉識別 -- Triplet Loss

Paper name

FaceNet: A Unified Embedding for Face Recognition and Clustering

Paper Reading Note

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

TL;DR

該文章出自google公司,其提出了一種直接將人臉嵌入到歐式空間中的特徵來進行人臉驗證、人臉檢索、人臉聚類的方法。該方法的主要創新點在Triple Loss的提出和Triplet難樣本挖掘實現。


Introduction

不同於當時已有的分類人臉的處理方式,如通過神經網絡得到人臉的高維特徵,然後通過PCA進行降維操作得到人臉的特徵表達,最後通過softmax來對人臉特徵進行分類。這樣學習到的特徵在後續用於人臉驗證,即基於聯合貝葉斯等方法對兩個人臉的特徵進行匹配。這個過程很不直接,因爲訓練集和最後測試集並不同源,在訓練集中需要儘量使用更多的softmax輸出、更多的訓練數據以及更高維的人臉特徵纔能有效將網絡提取到的特徵泛化到在測試集上work。
這篇文章希望直接將人臉圖片映射到歐式空間的特徵表達,通過計算不同人臉在特徵空間上的距離來進行人臉驗證、搜索、聚類等任務。如下圖所示,相同id的人臉在特徵空間中的距離明顯低於不同id的人臉,即便不同id的人臉是處於相同的光照以及姿態下。
在這裏插入圖片描述


Dataset/Algorithm/Model/Experiment Detail

數據集

文章中使用了四個數據集

  • 與訓練集同源的測試集,包含1000k的圖片,分成了5個200k圖片的子評測集,在最後評測時計算五個評測數據集上的均值
  • 個人照片集,與訓練集圖片分佈類似,包含大概12k圖片
  • LFW,經典人臉識別公開數據集
  • Youtube Faces DB,經典公開數據集

評估標準

主要包含兩個指標: 驗證率與誤識率

  • 首先定義了true accept(正確識別)的樣本爲一對屬於同一id的圖片的距離小於閾值d,false accept(錯誤識別)的樣本爲一對不屬於同一id的圖片的距離小於閾值d
    在這裏插入圖片描述
  • 如果所有的測試樣本對中屬於同一id的樣本數爲Psame,而不屬於同一id的樣本數爲Pdiff,那麼驗證率(VAL)和誤識率(FAR)定義如下:

在這裏插入圖片描述

實現方式

  • 實現方式在特徵提取方面很簡單直接,即將人臉成batch輸入深度卷積神經網絡得到人臉的特徵表達,通過L2Norm將提取的人臉feature控制在d維的超平面上,也就是滿足feature的二範數等於1,這才使得後續的不同圖片的距離計算能夠在同一尺度下進行。

在這裏插入圖片描述

  • 通過上述得到的人臉特徵需要使用Triplet Loss對網絡進行訓練, Triplet Loss的思想就是相同id的兩個圖片在特徵空間上的距離小於不同id的兩個圖片在特徵空間上的距離,並且約束要小於一個margin以上,loss的示意圖與具體公式表達如下:

在這裏插入圖片描述

在這裏插入圖片描述

  • Triplet訓練樣本選取。在訓練過程中需要選擇較難的樣本來加快模型的收斂,及不滿足上述公式(1)的樣本對。但是也不能全部選取最難的樣本來進行訓練,這很容易造成模式崩塌現象,即模型爲了讓學出來的樣本對中相同id的特徵距離儘量小,學出來的特徵f(x)都等於0。作者實驗中發現semi-hard樣本訓練效果最好,及樣本對中相同id的特徵距離小於不同id的特徵距離,而小於的程度還沒有到達所設定的margin。

在這裏插入圖片描述

實驗結果

  • 作者嘗試了不同參數量和計算量的多個模型,可以看到基本上隨着模型的計算量的增加,模型的精度得到提升,但是該幅圖中沒有表現出模型的計算量,其實NN1和NN2兩個模型雖然計算量基本一致,但是NN2比NN1的參數量小20倍左右,並且還取得了更高的精度
    在這裏插入圖片描述

在這裏插入圖片描述

  • 在這個圖中可以看到在FAR小於1E-6時VAL有驟降的情況,作者認爲這是由於測試集中的誤標註樣本導致的,因爲在FAR特別小時,一個誤標註樣本就能極大降低VAL值 在這裏插入圖片描述

  • 作者可視化LFW數據中被錯誤標註的樣本,在false reject的13個樣本中,有5個都是誤標註導致的

在這裏插入圖片描述

  • 聚類效果展示,可以看到不同光照、不同姿態、甚至不同年齡階段的同一id的人都被良好聚類在一起

在這裏插入圖片描述

Thoughts

這篇文章一改以往通過分類的方式來進行人臉驗證網絡訓練的過程,通過學習將人臉映射到歐式特徵空間來進行距離匹配的方法取得了當時SOTA的效果。這種方法的應用方便,很容易應用在人臉驗證、檢索、聚類等任務中,Triplet Loss的思想在後續的多個工作中也都被沿用。

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