Face Recognition 카테코리 이전 게시글들 에서 정리했듯이,
다음과 같은 트렌드를 보인다.
1. metric-learning problem
기존 classification 에 사용되는 soft max로는 학습한 이후에 새롭게 추가, 축소 되는 클래스가 있을경우 사용하기 어렵다. 즉, Open-set에서 적용하기 위해서는 모든 데이터에 대해 generalize 해야하므로 metric-learning problem쪽으로 발전하게된다. ( Contrastive Loss, 2005 , Triplet Loss(아이디어 2014, Face Verification Task 적용 2015))
2. Soft max의 변형
1의 방법은 학습시 sample pair를 뽑아야 하므로 기존 Classification이 time complexity가 O(n)(n=#data)일때 Contrastive Loss는 O(n^2), triplet Los는 O(n^3)이 되므로 학습하는데 너무 오래걸리고 그렇다고 몇개만 랜덤으로 sampling 하자니 performance에 영향을 끼치게 된다.
그래서 기존 Softmax에 class간 compact를 줄 수있는 방법을 연구하게된다.
(Center Loss[2]: Soft max loss에 intra class loss를 class center 기준으로 추가,
L2-SoftMax[4],, 2016 : feature를 normalization
NormFace[3], 2017 : training phase에서도 normalization사용, 두 가지 Loss의 변화 제시
1) Softmax 변경 : Normalize 이후 학습이 잘안되는 현상 해결위해 Scale parameter 추가
2) Metric learning 개념 추가 : weight, feature 둘다 normalize 하고 식을 변형시키다 보니 softmax를 feature 와 class간의 normalized euclidean distance를 바탕으로 optimization 하는것으로 생각가능.
-> triplet loss와 Contrastive loss의 개념을 적용시킨 Classfication Loss 제안)
3. Softmax + Margin
이후 NormFace의 2)발견으로 softmax 에서 class 대표 weight과 feature 간의 distance 측정법을 euclidean distance 말고 cosine similarity등 다른 distance로 대체 + margin으로 weight간의 discriminative 성능 향상(feature간의 구별성능도 따라서 향상)
sphere face(Angular Softmax), cosface, arcface, Large-margin Softmax, additive softmax 등이 있는데 다들 직관과 방향이 비슷하므로 식과 decision boundary figure로 정리하겠다. 구체적으로 정리된 내용을 찾는다면 [1], [5]를 참조
4.Mining
~특정 샘플(어려운샘플) 에 대해 집중해 fully exploit.
-OHEM : 실제로 어려움을 측정하는 metric(ex. Cross Entropy 등)을 가지고 정렬 후 미니 배치 구성
-Adaptive Sample Mining : 배치구성시 sample probablity를 가지고 샘플 뽑음. Training에서 틀릴 시 SP 높이고 맞출시 SP 낮춤.[6]
-Focal loss : Cross Entropy식중 로그 안에있는 p(y)부분을 importance로 여겨 weight 줌.
5.Mining + Margin
-MV-Softmax : 기본 True class에 대한 margin 말고도 Negative class에 대해서 weight을 주었고, cos(theta)를 어려움 측정 지표로 잡아 loss로 Mining구현.[7]
6. Learning Strategy
-Curricular Face : 학습 stage에 따라 softmax loss 식에서 Negatvie class에 대한 weight를 stage 마다, 어려운정도(cos (theta))에 따라 줌. 즉, 원래 Curriculum Learning은 Data Set을 분리하여 구현했지만 본 논문은 Loss로 Adaptive Curriculum Learning 구현. [8]
-AdaCos : Hyperparameter인 m(margin)과 s(scale)설정에 따라 Performance가 차이가 나고 m같은경우 심하면 수렴발산에까지 영향을 준다. 따라서 hyperparameter설정을 실험해보고 높은 acc를 찾는것이 아니라 gradient stduy를 통해 학습이 잘되는 parameter를 찾아 설정해준다. 나아가 학습하는 도중에 optimal한 m과 s의 값이 바뀌므로 fixed m,s가 아닌 adaptive m,s까지 고안(logit의 median과 average값 사용)
출처
[1] J.Deng, "ArcFace : Additive Angular Margin Loss for Deep Face Recognition", 2019,CVPR
[2] Yandong Wen, et al. , "A Discriminative Feature Learning Approach for Deep Face Recognition",(a.k.a. Center Loss) 2016, ECCV
[3] F. Wang, "Norm Face: Hypersphere Embedding for Face verification.", 2017, ACM MM
[4] R. Ranjan , "L2-constrained Softmax Loss for Discriminative Face Verification", 2017
[5] M.Wang, "Deep Face Recognition: A survey", 2020
[6] Hao Liu, Xiangyu Zhu, Zhen Lei, Stan Z. Li; Adaptive Face: Adaptive Margin and Sampling for Face Recognition(CVPR), 2019, pp. 11947-11956
[7] Xiabo Wang et al. Mis-classified Vector Guided Softmax Loss for Face Recognition(MV-Softmax), 2020 AAAI
[8]Yuge Huang, Yuhan Wang, Ying Tai. Curricular Face : Adaptive Curriculum Learning Loss for Deep Face Recognition, 2020 CVPR
'인공지능 > Face Recognition' 카테고리의 다른 글
[Paper Review] Curricular Face 정리 (0) | 2021.02.23 |
---|---|
[Paper Review] MV-Softmax (SV-Softmax, SV-X-Softmax) 정리 (0) | 2021.02.09 |
[Paper Review] L2Softmax, NormFace 총 정리 (5) | 2021.01.27 |
[Paper Review] Center loss 정리 (4) | 2021.01.27 |
Triplet Loss, Triplet Mining 정리 (5) | 2021.01.27 |