Semi-Supervised Domain Adaptation of Visual Domain Adaptation (VisDA)-2019 Challenge 에서 1위를 한 네트워크의 베이스가 되는 방법으로 style-agnostic network를 통해 domain gap을 줄이는 방식에 대해 설명한다. 

 

 

Bias Properties of CNN

 

이 논문은 기존의 CNN이 bias를 갖고 있다고 말하면서 시작된다. classification task에서 사람들은 보통 무늬나 텍스쳐보다는 모양을 위주로 보고 판단한다면, CNN은 모양, 즉 contents보다는 무늬나 texture를 위주로 보고 classification하는 bias가 존재한다고 한다. 

 

 

이 논문의 contribution은 contents를 위주로 학습하는 네트워크와 style을 위주로 학습하는 네트워크를 구축함으로써 style bias 즉 domain bias를 줄인 CNN을 만들었다는 것에 있다. 

 

input x와 random하게 뽑은 x'으로부터 contents biased network Gc는 x의 content, x'의 style을 가진 feature를 받아 contents만 보고 classification을 진행하게 되고, style biased network Gs는 x'의 random한 contents와 input x의 style이 합쳐져 style만 보고 classification을 하게 된다. 

 

 

Content-biased Learning

 

 

contents biased network는 style을 blending시킴으로써 contents만 보고 판단하도록 만든다. z, z'은 feature extractor Gf의 output이며 각각 x, x'을 넣은 결과이다. z와 z'의 mean, std를 random한 숫자 alpha를 통해 interpolation하여 새로운 mean^, std^을 만든다. 그 후 z의 mean와 std를 mean^, std^로 변경시켜주어 contents는 동일하나 style이 달라진 feature로 만든다. 

 

이 점에서 주의할 점은 이 논문에서는 feature의 style은 mean와 std라는 가정 하에 진행되고 있다는 것이다. style transfer, instance normalization과 같은 선행연구들을 보았을 때 mean과 std가 어느정도 style에 연관이 있다는 사실은 자명하나 mean과 std가 가장 좋은 파라미터라고 말할 수는 없다. feature의 correlation을 계산하는 gram matrice도 style을 나타내는 파라미터라고 볼 수 있다. 무엇이 가장 옵피멀한 방법인지는 모르겠다. 이부분에 대해서는 더욱 연구되어야 할 부분인 것 같다. 

 

 

그 후 style이 randomization된 contents biased output에 대한 loss를 Gf, Gc에 update 한다. 

 

 

Adversarial Style-biased Learning

 

 

위의 contents biased learning에서와는 달리 interpolation을 진행하지 않은 상태로 z의 mean과 std로 z'의 pdf를 변경시킨다. 이렇게 되면 z'의 random한 contents는 가지고 있는 상태로 style을 대변하는 z의 mean과 std가 합쳐진 상태가 된다. 

 

 

z의 style만을 가지고 classification을 판단하는 위의 loss를 기반으로 Gs를 update해준다. 

 

 

우리는 style에 bias가 적은 network를 만드는 것이 목적이기 때문에 style만을 보고 판단하는 Gs로부터 cross entropy가 maximize되는 방향으로 Gf를 업데이트 해준다. (yk대신 1/K를 곱해준 것의 의미) 이 때 Gf의 모든 parameter를 업데이트하는 것이 아닌 affine transformation parameter(batch normalization parameter)만을 업데이트한다. 

 

 

Pseudo Code

 

 

Results

 

 

논문을 보면 다양한 관점에서 test가 진행되었다. 위의 test는 texture/Shape bias에 관한 실험으로, Gf에 업데이트되는 adversarial loss를 조절하는 adversarial weight를 높일수록 texture 학습은 낮아지고, shape 학습은 높아지는 경향성을 보였다. 또한 같은 class 내의 A-distance또한 줄어들었음을 확인했다. 

 

 

Domain Generation 에 관련된 많은 dataset을 가지고 실험한 결과, AlexNet, ResNet18 backbone모두에서 sagnet의 training 방식을 사용했을 시 평균 정확도가 높아짐을 볼 수 있었다. 

 

 

위 결과는 Unsupervised Domain Adaptation에 적용한 것으로 Office-Home dataset과 DomainNet dataset에서 모두 classification accuracy가 1-3정도 높아지는 것을 확인하였다. 

 

 

+ Recent posts