공돌이 공룡의 서재

[논문 리뷰] Center Loss : A Discriminative Feature Learning Approachfor Deep Face Recognition 본문

딥러닝/Vision

[논문 리뷰] Center Loss : A Discriminative Feature Learning Approachfor Deep Face Recognition

구름위의공룡 2022. 2. 23. 14:23

A Discriminative Feature Learning Approach for Deep Face Recognition

center loss 의 경우 face recognition 뿐 아니라 reid task에도 자주 적용되는 loss function으로, 최신 reID논문들을 이해하는데 필요한 loss 다. 이 함수를 처음 제시한 논문을 읽어보았다.


Introduction

  • face recognition task에서 feature는 separable + discriminative 특징이 있어야 한다. →class 간 구분이 잘 되며 특징이 뚜렷한 feature
  • Discriminative 한 feature는 NN이나 k-NN 같은 알고리즘으로 잘 구분이 될 수 있다. 그러나 softmax loss는 feature의 separability 만 다룬다.
  • discriminative feature를 위해 contrastive loss 나 triplet loss 등을 이용해서 학습할 수는 있으나, 이미지의 수가 늘어날 수록 학습에 쓰이는 pair (또는 triplet) 의 수가 기하급수적으로 늘어나게 되어, 학습이 불안정해지고 수렴 속도가 느려지게 된다.

→ 저자들은 Center Loss 를 제안해서 feature의 discriminative power를 더 높일 수 있다고 한다. softmax loss 만 사용하는 것은 다른 클래스들끼리 분리되는 것에만 작용하는 반면 (Inter-class difference를 키운다.) center loss는 같은 클래스에 대한 feature들은 중심점으로 모이도록 한다. (Intra-class variation을 줄인다.)


Toy project - Softmax

LeNet 을 수정한 모델로 MNIST를 이용해서 softmax로 학습한 다음, training set과 test set 에 대해 feature를 뽑아냈을 때를 시각화한 것이다.

좌측이 training set, 우측이 test set이다. 서로 다른 class 간 구분은 잘 되는 것을 볼 수 있는 반면, 같은 class 내에서는 분산이 큰 것을 확인할 수 있다.


Center Loss

$$L_c = \frac{1}{2} \sum_{i=1}^{m}{||x_i-c_{y_i}||^2_2 }$$

Center Loss는 위 수식을 이용해서 구한다. $c_{y_i}$ 는 $y_i$ 번째 클래스의 feature 의 center를 말한다. 이 center는 feature 가 바뀌면 그에 따라 바뀐다.

여기서 Center 를 어떻게 구하고 업데이트할 것인가? 가 관건이다.

  • 일반적으로 Data set의 크기가 매우 커서 실제로는 mini-batch 단위로 학습을 하기 때문에, mini-batch 단위로 center 의 업데이트가 이뤄져야 한다.
  • 일부 outlier나 mislabelled data가 있을 수 있으므로, 이를 고려해야 한다.

그래서 실제로는 다음과 같은 알고리즘을 따라서 이뤄진다.

($L_s$ 는 softmax를 이용해서 구한 classification loss에 해당한다.)

이 때 업데이트에 필요한 gradient 값은 다음 식을 따라서 구할 수 있다.

위 알고리즘에서 3: 을 보면 $L_C$ 와 $L_S$ 를 더한 joint loss를 사용해서 학습을 하는데, 이때 scalar 값을 둬서 두 loss 의 가중치를 조절할 수 있다.


Discussion

$L_C$ 에 대한 가중치가 클 수록 feature가 더 tight하게 뭉치는 것을 확인할 수 있다. 이를 통해 더 discriminative 한 feature를 얻었다고 할 수 있다.

 

논문에서는 MNIST 외에 사람 얼굴에 대해서도 진행해서 기존보다 더 좋은 결과를 얻을 수 있었다. 이 핵심을 응용해서 re ID에서도 적용이 가능하다.

Comments