1 minute read

학습 데이터의 수와 ID 수가 늘어나면서 Fully connected layer의 비용도 선형적으로 늘어나는 문제를 해결하기 위한 방법

연구배경 및 목적

안면 인식 데이터의 학습 데이터 수와 ID 수가 늘어나면서 Softmax 방식의 특성상 fully connected layer의 비용도 선형적으로 증가합니다. 그리고 학습데이터의 long tail 문제와 label noise(label flip, outlier) 이슈가 심화되면서 대용량 안면인식 데이터를 학습하기 어려운 문제가 있습니다.

이를 해결하기 위해 본 논문에서는 Partial FC를 적용하여 Negative의 일부만 샘플링하여 학습 비용을 낮춥니다.

기존 방식들의 문제점

Softmax loss 와 FC Layer를 그대로 사용하여 대용량 데이터를 학습하는 경우 아래와 같은 문제점들이 발생합니다.

1. inter class conflictwe———–

  • 서로 다른 클래스가 동일인으로 구성되어 있다면 label flip으로 인해 성능저하가 발생합니다.
  • class내 다른 사람이 있는 경우 보다 inter class conflict가 더 치명적인 성능 저하의 원인이 됩니다.

2. center of tail classes undergo too many passive updates

  • tail class 들은 model update 동안 대부분의 반복에서 등장하지 못하게 됩니다. 이로 인해 다른 class들에 의해 pull만 되어 동일한 영역에 뭉치게 될 가능성이 있습니다.

3. easily exceed current GPU capabilities

  • Face ID 수가 증가함에 따라 학습 속도와 메모리 양이 선형적으로 증가합니다.

위의 문제들을 방지하기 위한 방법을 본 논문에서는 PartialFC의 도입으로 해결하려고 합니다.

PartialFC

1. Inter Sampling을 통해 Positive center와 Negative center의 일부 선택

  • center weight들의 일부만을 가지고 연산을 하여 Face ID 수가 증가하여도 Partial FC의 설정 비율만큼 감소하여 증가합니다. O(n/k)
  • tail class들의 등장 횟수 감소 효과가 있습니다. 다만 미미한 정도이기 때문에 해당 문제를 해결하는 별도의 논문은 추후에 작성하겠습니다.
  • 제가 연구를 진행할 때, 40일 동안 해야할 학습을 10일만에 끝내었습니다. (ViT-L, DGX A100 기준)

2. Inter Filtering을 통해 Negative logits 중 유사도가 높은 logits는 filtering 진행

  • 유사한 Inter class를 제거하여 클래스 간 positive class가 있을 확률을 낮춥니다. 이렇게 할 경우, gradient confusion 발생이 줄어듭니다.

결론

본 논문은 대용량 데이터셋을 효율적으로 학습하기 위해 PartialFC 연구를 제시하였습니다. 컴퓨팅 사용량을 줄이고 학습속도를 향상 시키며 Noise Inter class간 충돌을 억제하여 정확도를 향상하였습니다. 저도 본 논문의 기술을 사용하여 학습 연구를 많이 진행하였으며 안면인식의 성능을 한단계 높여주는 중요한 연구 중 하나로 여기고 있습니다. 내용을 정리하면서 실험에 대한 내용은 미작성하였지만 위의 연구 결과에 근거가 되는 내용이므로 직접 논문에서 한번은 살펴보면 좋을 것 같습니다.

Comments