티스토리 뷰

반응형

논문

 

Abstract

대규모 얼굴 인식 (Face Recognition) 에서 깊은 CNN (DCNNs, Deep Convolutional Neural Networks) 을 사용하는 Feature 학습의 중요한 과제 중 하나는 분별력 (Discriminative Power) 을 향상시키는 적절한 손실 함수 설계임.

  • Centre Loss 는 클래스 내 빽빽함 (Compactness) 을 달성하기 위해 유클리드 공간에서 Deep Features이 Features에 해당하는 클래스 Centres 사이의 거리에 패널티를 부과함.
  • SphereFace 는 마지막 완전 연결층 (Fully Connected Layer) 에서 선형 변환 행렬이 각도 공간 (Angular Space) 의 클래스 Centres 표현으로 사용될 수 있으며, Deep Features 와 이 Features 에 해당하는 가중치들 사이의 증식 (Multiplicative) 방법으로 Angle 에 패널티를 부과함.
  • 최근에, 유명한 연구 라인 (a Popular Line of Research) 은 얼굴 클래스 구분을 최대화하기 위해서 잘 구축된 손실 함수에서 Margins를 통합하는 것임.
  • 이 논문에서, 우리는 얼굴 인식에 대한 매우 분별력 있는 Features를 얻기 위한 Additive Angular Margin Loss (ArcFace) 를 제시함.
  • 제시된 ArcFace 는 Hypersphere 에서 Geodesic Distance 와 정확하게 일치하기 때문에 분명한 기하학적 해석을 가짐.
  • 우리는 ArcFace 가 지속적으로 최첨단 성능을 내며, 무시할 수 있는 계산적인 오버헤드를 가지고 쉽게 구현될 수 있음을 보여줌.

 

1. Introduction

Deep Convolutional Neural Network (DCNN) 임베딩 (Embedding) 을 사용한 얼굴 표현은 얼굴 인식을 위한 선택 방법 (the Method of Choice) 임.

  • DCNNs 는 일반적으로 자세 정규화 (Pose Normalization) 단계 후에, 얼굴 이미지를 작은 클래스 내부 (Small Intra-Class)큰 클래스간 (Large Inter-Class) 거리를 가진 Feature에 맵핑 (Map) 함.

얼굴 인식에서 DCNNs 를 훈련시키기 위한 두 가지 중요 라인 (Main Lines) 이 있음.

  1. Softmax 분류기를 사용하는 것과 같이, Training Set에서 서로 다른 Identities를 분리할 수 있는 다중 클래스 분류기를 훈련시키는 것들.
  2. Triplet Loss 같이 임베딩을 직접 학습하는 것들.
  • 대규모 Training 데이터와 정교한 DCNN 아키텍처들을 기반으로, Softmax Loss 기반 방식과 Triplet Loss 기반 방식들 모두 얼굴 인식에서 훌륭한 성능을 얻을 수 있음.
  • 그러나, Softmax LossTriplet Loss 둘 모두 일부 결점을 가짐.
  • Softmax Loss의 경우 :
    1. 선형 변환 행렬 크기Identities 수에 따라 선형적으로 증가함.
    2. 학습된 Features는 폐쇄형 (Closed-Set) 분류 문제의 경우에서는 분류할 수 있지만, 개방형 (Open-Set) 얼굴 인식 문제의 경우는 충분히 분별적이지 않음.
  • Triplet Loss의 경우 :
    1. 특히 대규모 Dataset의 경우에서 얼굴 Triplets 갯수의 결합적인 폭발이 존재하고, 이는 상당한 반복 단계의 횟수 증가를 야기함.
    2. Semi-hard Sample Mining이 효과적인 모델 훈련에 대해 꽤 어려운 문제임.

일부 다른 형태의 방법들이 Softmax의 분별력을 향상시키기 위해 제시되어 왔음.

  • Wen 등은 Softmax Loss의 공동 패널티 부과 (Joint Penalization) 로 클래스간 분산 (Dispersion) 이 보장되는 동안, 클래스 내부Compactness를 얻기 위해 각 Feature 벡터와 이 벡터 클래스의 Centre 사이의 유클리드 거리인 Centre Loss를 개혁했음.
  • 그럼에도 불구하고, Training 동안 실제 Centres를 갱신하는 것은 Training 동안 사용 가능한 얼굴 클래스의 수가 최근에 급격하게 증가함에 따라 극도로 어려움.

Softmax Loss로 훈련된 분류 DCNN의 마지막 완전 연결층의 가중치가 각 얼굴 클래스의 Centres와 개념적으로 유사함을 관찰함으로써, Sphereface와 Large-margin softmax loss for CNN의 연구에서는 동시에 추가적인 클래스간 불일치 클래스 내 Compactness를 시행하기 위해 증식 각도 여백 패널티 (Multiplicative Angular Margin Penalty) 를 제시했으며, 이는 훈련된 모델의 더 좋은 분별력을 이끌었음.

  • 비록 SpherefaceAngular Margin의 중요한 아이디어를 도입했지만, 이들의 손실 함수는 계산을 위해 일련의 근사치들을 필요로 했으며, 이는 불안정한 네트워크 훈련을 야기했음.
  • 훈련을 안정시키기 위해서, 이들은 표준 Softmax 손실을 포함하는 하이브리드 손실 함수를 제시했음.
  • 경험적으로, Softmax 손실이 훈련 과정을 지배함.
  • 훈련 과정을 지배하는 이유는 정수형 기반 (Integer-based) Multiplicative Angular Margin이 목표 로짓 (Logit) 곡선을 매우 가파르게 만들고, 따라서 수렴을 방해하기 때문임.
  • CosFace직접 목표 로짓 Cosine Margin 패널티를 더함.
  • 이는 SphereFace와 비교하여 더 좋은 성능을 얻으면서 더 쉽게 구현할 수 있고, Softmax 손실에서 공동 감독 (Joint Supervision) 에 대한 필요성을 덜어줌.

이 논문에서, 우리는 훈련 과정을 안정화시키고, 얼굴 인식 모델의 분별력을 추가로 향상시키기 위한 Additive Angular Margin Loss (ArcFace) 를 제시함.

  • Figure 2에서 설명한 것처럼, DCNN Feature마지막 완전 연결층 사이의 내적 (Dot Product)정규화 후FeatureWeight코사인 거리동일함.
  • 우리는 호-코사인 (arc-cosine) 함수를 사용하여 현재 Feature와 목표 가중치 사이의 각도 (Angle) 를 계산함.
  • 나중에, 우리는 목표 AngleAdditive Angular Margin을 추가하고, 코사인 함수를 이용하여 목표 로짓을 다시 얻음.
  • 그런 다음, 우리는 모든 로짓들 (logits)고정된 Feature Norm에 따라 re-scale하고, 후속 단계들Softmax Loss와 동일하게 동작함.

 

  • 제시된 ArcFace의 이점들은 다음과 같이 요약할 수 있음 :

Engaging

  • ArcFace는 정규화된 Hypersphere에서 호 (Arc) 와 각도 (Angle) 사이의 정확한 일치성 덕분에 직접 Geodesic Distance Margin을 최적화함.
  • 우리는 Features와 Weights 사이각도 통계량 (Angle Statistics) 분석을 통해 512-차원의 공간에서 일어나는 일을 직관적으로 설명함.

Effective

  • ArcFace는 대규모 이미지와 비디오 Datasets을 포함하는 10개의 얼굴 인식 Benchmarks에서 최첨단 성능을 달성함.

Easy

  • ArcFace는 주어진 Algorithm 1의 여러 줄의 코드만 필요하며, 계산적인 그래프 기반 딥러닝 프레임워크에서 구현하기가 너무 쉬움 (ex, MxNet, Pytorch, Tensorflow).

  • 게다가, Sphereface, Large-margin softmax loss for CNN 연구들과 대조적으로, ArcFace는 안정적인 성능을 가지기 위해 다른 손실 함수들과 결합하여 사용할 필요가 없으며, 어떠한 훈련 Dataset에서도 쉽게 수렴 (Converge) 할 수 있음.

Efficient

  • ArcFace는 훈련 동안 무시할 수 있는 계산 복잡도만 추가함.
  • 현재 GPUs는 훈련에 대해 수백만 개의 Identities를 쉽게 지원할 수 있으며, 모델 병렬 전략은 더 많은 Identities를 쉽게 지원함.

 

2. Proposed Approach

2-1. ArcFace

  • 가장 널리 사용되는 분류 손실 함수인 Softmax Loss는 다음과 같이 나타내짐.

  • 그러나, Softmax 손실 함수는 클래스 샘플들 간다양성클래스 내부 샘플들에 대한 더 높은 유사성을 적용하기 위해 명시적으로 Feature Embedding을 최적화 하지 않음.
  • 이는 커다란 클래스 내부외형의 변화 (ex, 다른 자세들과 나이 차이)대규모 테스트 시나리오들 (ex, 수백만 또는 수조 쌍들) 에서 성능 차이를 야기함.

단순성을 위해, 우리는 Sphereface에서 편향 b_j = 0 으로 고정함.

  • 그런 다음, 아래와 같이 로짓을 변형시킴.

  • θ_j 는 Weight W_j 와 Feature x_j 사이의 각도임.
  • 우리는 l_2 정규화에 의해 개별 가중치 (Weight) 를 ||W_j|| = 1로 고정시킴.
  • 또한, Embedding Feature ||x_i||l_2 정규화에 의해 고정시키고, s로 다시 스케일 (Re-scale) 함.
  • Features와 Weights의 정규화 단계에서는 Feature와 Weight 사이의 각도 (Angle) 에 따라 예측을 만듬.
  • 학습된 Embedding Features는 결국 Radius가 s인 Hypersphere에 분산됨.

  • Embedding Features가 Hypersphere의 각 Feature Centre 주변에 분산되어 있으므로, 우리는 클래스 내부 (Intra-Class) Compactness와 클래스 간 (Inter-Class) 불일치를 동시에 향상시키기 위해 x_iW_(y_i) 사이에 Additive Angular Margin Penalty인 m을 추가함.
  • 제시된 Additive Angular Margin Penalty가 정규화된 Hypersphere의 Geodesic Distance Margin Penalty와 동일하기 때문에, 우리는 이 방법을 ArcFace라고 지음.

  • Figure 3에 설명된 것처럼, Softmax Loss는 대략 분리가능한 Feature Embedding을 제공하지만 결정 경계 (Decision Boundaries) 에서 현저한 애매함 (Noticeable Ambiguity) 을 생성함.
  • 반면에, 제시된 ArcFace Loss는 가장 가까운 클래스들 간의 더 분명한 차이를 강제할 수 있음.

 

2-2. Comparison with SphereFace and CosFace

Numerical Similarity

  • SphereFace, ArcFace, CosFace에서, 서로 다른 세 가지의 Margin Penalty가 제시됨 :
    1. Multiplicative Angular Margin, m_1
    2. Additive Angular Margin, m_2
    3. Additive Cosine Margin, m_3
  • 수치적 분석 관점에서, 서로 다른 Margin Penalties에 Angle 또는 Cosine Space을 추가하더라도, 이들 모두 목표 로짓에 패널티를 부과함으로써 클래스내 Compactness 와 클래스 간 다양성 (Diversity) 을 시행함.
  • Figure 4(b) 에서, 최상의 Margin 설정하에 CosFace, ArcFace, SphereFace의 목표 로짓 곡선을 표시함.
  • 우리는 [20˚, 100˚] 내에서만 이러한 것들의 목표 로짓 곡선들을 보여줌.
  • 그 이유는 W_(y_i)x_i 사이의 Angles가 Figure 4(a) 에서 보이는 ArcFace 훈련동안 약 90˚ (난수 초기화) 에서 시작하여 약 30˚에서 종료하기 때문임.
  • 직관적으로, 목표 로짓 곡선에서 성능에 영향을 미치는 세 가지 요인들이 있음:
    • 시작 지점 (Starting Point).
    • 종료 지점 (End Point).
    • 기울기 (Slope).
  • 이 모든 Margin Penalties를 결합함으로써, 우리는 SphereFace, ArcFace, CosFace를 각각 하이퍼 파라미터 m_1, m_2, m_3로 하는 통합된 프레임워크에서 구현함.

  • Figure 4(b) 에서 보이는 것과 같이, 위의 모든 Motioned Margins 를 결합하여 (아래), 우리는 높은 성능을 가진 일부 다른 목표 로짓 곡선을 쉽게 얻을 수  있음.

Geometric Difference

  • ArcFace와 이전 작업들 사이의 수치적인 유사성에도 불구하고, 제시된 Additive Angular Margin은 Angular Margin이 Geodesic Distance와 정확하게 일치하기 때문에 더 좋은 기하학적 (Geometric) 속성을 가짐,
  • Figure 5에 설명된 것처럼, 우리는 이진 분류 사례에서 결정 경계들 (Decision Boundaries) 을 비교함.
  • 제시된 ArcFace는 전체 간격 동안 일정한 선형 Angular Margin을 가짐.
  • 대조적으로, SphereFace와 CosFace는 비선형 Angular Margin만 가짐.

Margin 설계의 조그마한 차이가 모델 훈련에서 "나비 효과" 를 일으킬 수 있음.

  • 예를 들어, 초기 SphereFace는 Annealing 최적화 전략을 사용함.
  • 훈련 시작시 발산 (Divergence) 을 피하기 위해서, Softmax의 공동 감독이 Multiplicative Margin Penalty를 약화시키기 위해 SphereFace에서 사용됨.
  • 우리는 복잡한 Double Angle 형식을 사용하는 것 대신에 호-코사인 (arc-cosine) 함수를 사용하여 Margin에서 정수 요건 (Integer Requirement) 없는 SphereFace의 새로운 버전을 구현함.
  • 이 구현에서, 우리는 m = 1.35가 어떠한 수렴 어려움 없이 초기 SphereFace와 비교하여 유사한 성능을 얻을 수 있다는 것을 발견함.

2-3. Comparison with Other Losses

다른 손실 함수들은 Features와 Weight-Vectors의 Angular 표현을 기반으로 설계될 수 있음.

  • 예를 들어, HyperSphere에서 클래스간 불일치와 클래스 내 Compactness를 집행 (Enforce) 하기 위해 손실을 설계할 수 있음.
  • Figure 1에 보여지는 것처럼, 이 논문에서 세 가지 다른 손실들 (Losses) 를 비교함.

Intra-Loss

  • Sample과 Ground Truth Centre 사이의 Angle / Arc 를 감소시켜 클래스 내부의 (Intra-Class) Compactness 를 개선시키기 위해 설계됨.

Inter-Loss

  • 서로 다른 Centres 사이의 Angle / Arc 를 증가시켜 클래스 간 (Inter-Class) 불일치 (Discrepancy) 를 향상시키는 것이 목표임.
  • Inter-Loss는 최소 초-구형 에너지 (MHE, Minimum Hyper-Spherical Energy) 방법의 특별한 경우임.
  • MHE에서, 은닉층과 출력층 둘 다 MHE에 의해 정규화됨.
  • MHE 논문에서, 손실 함수의 특별한 경우가 네트워크의 마지막 층에서 MHE Loss와 SphereFace Loss를 결함함으로써 또한 제시되었음.

Triplet-Loss

  • 이 Loss는 Triplet Samples 사이의 Angle / Arc Margin을 확장하는 것을 목표로 잡음.
  • FaceNet에서, 유클리드 Margin은 정규화된 Features에 적용됨.
  • 여기서, 우리는 아래와 같은 식으로 우리 Features의 Angular 표현을 위해 Triplet Loss를 사용함.

 

4. Conclusions

  • 우리는 Additive Angular Margin 손실 함수를 제시했으며, 이는 얼굴 인식에 대해 DCNNs를 통해 학습된 Feature Embeddings의 분별력을 효과적으로 향상시킬 수 있음.
  • 문서에 기록된 대부분의 종합적인 실험들은 우리 방법이 꾸준하게 최첨단 성능을 낸다는 것을 증명함.

 

Reference

반응형

'Paper > Vision' 카테고리의 다른 글

Image Question Answering using Convolutional Neural Network with Dynamic Parameter Prediction  (0) 2019.11.11
Searching for MobileNetV3  (2) 2019.10.09
Triplet Loss  (0) 2019.07.29
AlexNet  (0) 2019.03.29
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함