1. Abstract
이 논문은 meta-learning을 이용한 DG입니다. Source domain을 meta-train meta-test로 나누고, 이를 이용하여 model-agnostic learning을 합니다. global 적으로 inter-class relationship에 대한 knowledge를 유지하기 위해서 soft confusion matrix를 이용합니다. local적으로는 domain independent class-specific cohesion과 샘플 feature의 separation을 metric-learning을 이용해 향상시킵니다.
2. Method
2.1 Model_agnostic Learning with Episodic Training
이 논문의 key는 episodic training 입니다. 여러 개의 source domain을 meta-train D_tr와 meta-test D_te로 나눕니다. Dtr 도메인의 데이터를 학습한 후에, Dte를 이용하여 학습을 하게 됩니다.
task-specific supervised loss 인 L_task를 통해 feature extractor와 classifier를 업데이트 합니다. 여기선 D_tr만 이용합니다.
parameter를 업데이트 한 후에 meta-learning step을 적용할 수 있습니다. meta-learning을 하더라도 feature가 semantically relevant한 특성을 가지도록 해야합니다. 그리고 domain에 상관없이 같은 label이라면, 서로 밀집해 있도록 clustering이 되어야 합니다. 이를 위해 L_meta = b1*L_global + b2*L_local 를 이용합니다. b1,b2는 0보다 큰 수입니다.
2.2 Global Calss Alignment Objective
여기서 목표는 feature가 unseen data에서도 학습했던 class 관계를 유지하는 것입니다. 그러기 위해서 soft label을 이용해 모델이 class ambiguities를 배우도록 합니다. D_tr과 D_te를 consistent하게 만들어 줍니다.
이를 이용해 class-specific mean feature vector인 z를 구합니다. c는 class이고 k는 domain입니다.
그리고 softmax를 통해 soft label을 만들어줍니다. 여기서 타우는 1보다 큰 값입니다. soft label 논문에서는 2로 설정한 것으로 알고 있습니다.
이 식을 이용해서 두 도메인 간의 거리를 줄여줍니다. D_KL은 kl divergence입니다. kl divergence는 symmetry하지 않기 때문에 이런 구조를 사용합니다. D_te, D_tr 모든 pair의 l_global을 통해서 L_global을 계산합니다. 그렇기 때문에, 연산량 에 대한 이슈도 있지만, 논문에서는 D_tr의 개수는 2, D_te의 개수는 1이라서 크게 상관없다고 합니다.
2.3 Local Sample Clustering
이는 domain에 상관없이 class에 따라서 cluster 해주도록, robust semantic feature를 생성합니다. 이는 매우 중요하다고 합니다. 만약에 제대로 되지 않으면, ambiguous decision boundaries를 만들게 되어 unseen domain에서 제대로 작동하지 않게 됩니다.
그래서 L_local loss를 이용하여 class-specific cluster의 밀집도를 높입니다. 이를 feature에 그대로 적용하게 되면, unseen domain에서의 성능에 지장을 준다고 합니다. 그래서 metric learning이라는 기법을 이용합니다. 위의 그림에서 보이는 M을 도입하여 학습가능한 distance function입니다.
모든 Source domain에서 (n,m) pair를 랜덤하게 뽑습니다. 이를 이용하여 loss 를 계산합니다.
이는 Contrastive loss 입니다. 같은 class 샘플은 서로 끌어당기고, 아닌 경우에는 떨어트리도록 합니다.
Triplet loss 입니다. 다른 class보다 같은 class간의 거리를 가깝게 해줍니다. 이 논문에선 semi-hard를 이용하고, 모든 triplet pair의 평균을 L_local로 합니다.
3. Experiment
여기서는 triplet loss를 이용합니다.
이 데이터셋에 대해서도 triplet loss를 이용합니다.
MASF, 즉 이 논문이 class를 좀 더 잘 구별하는 것을 확인할 수 있습니다.