アルゴリズム弱太郎

Twitter @01futabato10

ArcFace: Additive Angular Margin Loss for Deep Face RecognitionrcFace

こんにちは、futabatoです。

今回は、ArcFace: Additive Angular Margin Loss for Deep Face RecognitionrcFace ( Deng, Jiankang, et al. , 2019 )の論文に目を通したので、論文メモとしてBlogに残しておきます。

openaccess.thecvf.com


ArcFace: Additive Angular Margin Loss for Deep Face RecognitionrcFace

論文の概要

ArcFace(Additive Angular Margin Loss)です。
Deep Metric Learningの代表的なモデルとなっています。
先日終了したKaggleのHappyWhaleコンペでArcFaceが多く採用されていたのが印象的でした。

HappyWhale ArcFace Baseline (TPU) | Kaggle

Figure 1. Based on the centre and feature normalisation, all identities are distributed on a hypersphere.

ArcFace: Additive Angular Margin Loss for Deep Face RecognitionrcFace

Abstract

One of the main challenges in feature learning using Deep Convolutional Neural Networks (DCNNs) for large-scale face recognition is the design of appropriate loss functions that can enhance the discriminative power. Centre loss penalises the distance between deep features and their corresponding class centres in the Euclidean space to achieve intra-class compactness. SphereFace assumes that the linear transformation matrix in the last fully connected layer can be used as a representation of the class centres in the angular space and therefore penalises the angles between deep features and their corresponding weights in a multiplicative way. Recently, a popular line of research is to incorporate margins in well-established loss functions in order to maximise face class separability. In this paper, we propose an Additive Angular Margin Loss (ArcFace) to obtain highly discriminative features for face recognition. The proposed ArcFace has a clear geometric interpretation due to its exact correspondence to geodesic distance on a hypersphere. We present arguably the most extensive experimental evaluation against all recent state-of-the-art face recognition methods on ten face recognition benchmarks which includes a new large-scale image database with trillions of pairs and a large-scale video dataset. We show that ArcFace consistently outperforms the state of the art and can be easily implemented with negligible computational overhead. To facilitate future research, the code has been made available.

既存研究と比べてどこがすごい?

  • 特徴量と重みの角度情報の統計を分析することで、512次元空間で何が起こっているかを直感的に説明できる。
  • 10の顔認識ベンチマークにおいてSoTA
  • 実装が簡単
  • どんなデータセットでも用意に就職させる安定した性能を持つ
  • 計算量も軽い

技術や手法のキモはどこ?

Softmax関数には課題(closedなデータセットでの分類問題では分離可能であるが、顔認識タスクでは境界が曖昧で十分な識別性が得られない)があるため、ArcFace Lossを提案。

  1. Normalize: 特徴量と分類器の重みの各列をL2正規化、バイアスの除去
  2. Penalize: 特徴量とその正解クラスの代表する点のベクトルとの角度にマージンを付与
  3. Re-Scale: マージン付与後のベクトルをs倍

Figure 2. Training a DCNN for face recognition supervised by the ArcFace loss. ##

どうやって有効だと検証した?

LFW, CFP-FP, AgeDB-30を用いて検証を行った。

議論はある?

deep metric learningモデルに対する攻撃は普通の画像分類モデルに刺さる手法は同様に刺さるのか?

次に読むべき論文は?

ハイパーパラメータm, sの調整が大変らしいが、AdaCosというもので自動設定ができるらしい。

arxiv.org


最後までご覧いただきありがとうございました。