논문

하루에도 수만개의 글자를 읽고 있습니다. 하루에도 수백장의 종이를 들춰 읽습니다.
이것은 그 읽기에 대한 일기입니다.

Domain Balancing: Face Recognition on Long-Tailed Domains

Problem

  • 현실 세계의 데이터들은 long-tailed 분포를 가지고 있다. 특정한 몇몇개의 클래스는 상당히 많이 빈도로 등장하지만 나머지들은 상대적으로 적은 수를 가지고 있다.
  • 모델의 일반화성을 증가시키기 위해 이들 분포의 밸런스를 맞추는 것이 중요하나 문제는 모든 레이블 정보를 알 수가 없다는 점이다. 실제 데이터에 레이블링된 정보 외에도 다른 관점에서의 클래스들을 모두 레이블링한다는 것은 불가능한 일이다. 레이블 정보를 알 수 없기에 tail 도메인인지 판단도 할 수 없다.

Essence

  • 얼굴 인식 분야에서 이런 문제를 해결하기 위해 논문에서는 도메인이 분포의 어디에 속하는지 prediction해서 사용하고자 하였다.
  • 어떤 도메인의 빈도가 클래스간 compactness로 나타난다는 것을 착안하여 클래스 간의 local distance를 Domain Frequency Indicator (DFI)로 사용하였다.
  • 또한 Residual Balancing Mapping (RBM) 블록을 제안하여 DFI에 따라 네트워크를 변경시키도록 하였다.
  • 마지막으로 Domain Balancing Margin (DBM)를 로스에 적용하여 DFI에 따라 각 클래스의 마진을 조절하도록 하였다.

Detail

  • Domain balancing (DB)는 세가지 부분을 나뉜다.

    • DFI를 이용하여 빈도를 추정하고,
    • RBM을 이용하여 네트워크를 조정하고,
    • DBM를 이용하여 로스 함수를 조정한다.
  • DFI에 쓰일 클래스간 compactness는 다음과 같이 개의 K-nearest 클래스 간의 prototype 벡터간의 거리로 정의하였다.

  • 따라서 빈도가 높은 도메인은 IC가 커질 것이고 이를 역수로 사용하여 DFI로 사용하였다.

  • RBM은 tail 클래스의 feature를 DFI에 따라 조절하여 도메인 불균형 문제를 해소하는 모듈이다.
  • RBM은 다음과 같이 원래의 feature vector 에 feature enhancement 모듈인 와 이것의 가중치 를 이용하여 새로운 feature를 생성한다.

  • 는 2개의 FC layer와 BatchNorm으로 구성하였고, 는 1개의 FC layer로 구성하여 가중치를 regression하도록 하였고 의 로스를 부여하여 DFI에 따라 그 가중치가 조절되도록 하였다.
  • 따라서 DFI가 클 수록 enahancement가 더 크게 일어나도록 의도하였다.
  • DBM에서는 본래의 CosFace 로스에서 고정 값인 마진 파라미터 에 DFI 값을 곱하도록 수정하였다.
  • 따라서 DFI가 클 수록 마진이 더 커지도록 작용하도록 하였다.
  • 최종 로스는 아래와 같다.


Add a Comment Trackback