Unsupervised Domain Adaptation by Backpropagation

April 19, 2019    Domain Adaptation

Domain Adaptation

  • 위 그림 같이, 예측하고자하는 label은 같지만, 그 source와 target domain이 다를 경우 예측된 label은 domain에 의해서 상당히 다를 수 있다.
    • 딥러닝은 label-set이 많아야 잘 학습됨
    • label이 많아도 실제(test)데이터와 다를 수 있음
    • domain adaptation방법론을 사용하면 traintest분포를 유사하게 학습할 수 있음


관련 연구

  • 과거 연구에는 일반적으로 파라미터가 고정된 features을 사용(shallow learning)
    • source domain(train)에서 유효한 것만 샘플링
    • source domain feature를 target domain에 잘 맞도록 transformation(re-weighted)
      • 제안된 논문은 feature 자체를 변형
    • 두 domain에 대한 유사성을 학습
      • 제안된 논문은 두 분포의 차이를 학습

한 해결책으로 Unsupervised Domain Adaptation by Backpropagation가 제안 되었다.

  • target domain의 label이 없어도 학습가능
  • end-to-end learning
  • backpropagation만 조금 바꾼 단순한 구조


학습 구조

  • label predictor($G_y$): label을 잘 예측하는 feed-forward 레이어 학습
  • domain classifier($G_d$): domain을 잘 예측하는 feed-forward 레이어 학습
  • feature extractor($G_f$): feature 임베딩 gradient 학습은 직관적으로 두가지 gradient로 나눠진다.
\[\theta_f \leftarrow \theta_f - \alpha (\frac{\partial{L^{i}_{y}}}{\partial{\theta_f}}-\lambda \frac{\partial{L^{i}_{y}}}{\partial{\theta_f}})\]
  • (1) label을 잘 맞추는 방향($\frac{\partial{L^{i}_{y}}}{\partial{\theta_f}}$)으로 업데이트
  • (2) domain을 잘 맞추는 방향과 반대 방향($-\lambda \frac{\partial{L^{i}_{y}}}{\partial{\theta_f}}$)으로 업데이트
  • $\lambda$: label prediction과 domain adaptation의 상대적 중요도
  • $\alpha$: learning rate


요약

source(train) domain target(test) domain
Objectives 주요 Task를 잘 맞추는 것
(discriminativeness)
서로 다른 domain의 차이를 줄이는 것
(domain-invariance)
Optimization min label loss max domain loss

DSBA