https://arxiv.org/abs/2104.02008

 

1. Domain Generalization(DG) 이란?

우선 domain 이라는 것은 image 의 distribution이 다 다른 것을 뜻합니다. 학습할 때 쓴 domain과 다른 dataset에서는 모델이 잘 작동하지 않는 경우가 발생합니다. 

 

예를 들면, 배경이 낮인 사진으로 모델을 학습했고 현재 환경이 밤이라면 이 모델은 잘 작동하지 않습니다.

 

그래서 제안된 방법이 DG입니다. DG는 여러 domain의 데이터로 학습을 시키면, unseen domain에서도 잘 작동하도록 하는 것입니다. 

 

2.  구조

하늘 색이랑, 파란 색은 서로 다른 data입니다. (a)는 domain label이 있다고 가정한 상황입니다. domain label이 있다면, 이를 inverse해주고, 각 domain 끼리 shuffle 해줍니다. 

 

(b)는 domain label이 없을 때 입니다. random하게 shuffle을 해줍니다.

 

그리고 data의 channel의 평균과 표준편차(instance normalization 을 위해)를 구해줍니다. 람다는 batch size만큼 구합니다. 이 람다 값은 beta(a,a)에서 무작위로 뽑고 논문에서는 a를 0.1로 했다고 합니다.

 

이 데이터를 이용하여 학습을 하게 됩니다. 기존 모델에 추가하기도 매우 쉽습니다.

 

저는 간단한 것 같으면서도 신박하다고 생각했습니다.

 

3. Experiments

 

 

 

이 mixstyle을 어느 layer에다 적용시킬 지 저자들은 실험을 해봤다고 합니다. 일반적으로 resnet의 맨 마지막 layer에서는 classfication에 대한 정보를 담고 있다고 합니다. 그래서 맨 마지막 layer(res4)에 mixstyle을 할 경우에는 성능이 떨어지는 것을 확인할 수 있습니다.

반응형

+ Recent posts