Domain Adaptation: A Survey.
Ajith, A., & Gopakumar, G.
Computer Vision and Machine Intelligence Lecture Notes in Networks and Systems, vol 586. Springer.(pp. 591–602).2023
Abstract
- Computer Vision분야에서는 Domain shift가 많음
- souce domain에서 학습된 classifier는 target domain이나, 새로운 데이터가 들어왔을때 잘 적용 안됨
→ domain shift 해결하려고 domain adaptation이 연구되고 있음
Introduction
1. Supervised Domain Adaptation
- 타겟 도메인(Target domain)의 샘플 대부분에 레이블
- 이는 전통적인 지도 학습(Supervised Learning) 환경과 유사하게, 타겟 도메인의 데이터에도 충분한 레이블 정보가 있어 모델이 해당 도메인에 직접적으로 적응할 수 있도록 도움
2. Semi-Supervised Domain Adaptation
- 타겟 도메인에 소수의 레이블이 지정된 샘플이 제공
- 이 방식은 두 도메인(source/target 도메인)에서 공통적으로 불변 특징(invariant features)을 추출하는 데 도움을 줌
- 하지만 여전히 타겟 이미지의 일부에 레이블을 지정하는 작업 필요
3. Unsupervised Domain Adaptation (UDA)
- 레이블이 없는 타겟 데이터셋
- 동시에 타겟 데이터셋에서 classifier의 성능을 최대화하는 것을 목표
- 타겟 이미지는 소스 이미지와 동시에 네트워크에 입력
- 워크는 소스 도메인 이미지에서 제공된 레이블을 기반으로 타겟 이미지를 분류하려고 시도
2. Datasets Used for Domain Adaptation
2.1 Office 31
- 2010년에 생성. 31가지 카테고리, 총 4,110개의 이미지
- 세 가지 도메인(Amazon, DSLR, Webcam)

2.2 Caltech
- 257개의 클래스를 가진 객체 인식 데이터셋. 각 클래스당 최소 80개 이상, 총 30,607개 이미지
- Caltech-101 데이터셋의 상위 집합이며, 크기, 배경 등 다양한 요인에서 더 복잡하고 까다로움

2.3 Office Home
- 65가지 다른 카테고리의 15,500개의 이미지 또는 스냅샷을 포함합니다.
- 네 가지 도메인(Art, Clipart, Product, Real-World)

2.4 MNIST and MNIST-M
- MNIST: 70,000개의 회색조 손글씨 숫자 이미지로 구성된 데이터셋
- MNIST-M:
- MNIST 데이터셋을 기반으로 생성
- 컬러 이미지에서 추출한 다양한 색상 패치를 배경으로 추가(도메인 시프트 인위적으로 생성)
- 약 59,001개의 훈련 이미지와 90,001개의 테스트 이미지

3. Methods of Deep Domain Adaptation
3.1 Discrepancy Based
: 도메인 간의 차이(discrepancy)를 줄여 성능을 향상시키는 방법
Maximum Mean Discrepancy (MMD) Loss : 최대 평균 불일치 손실
- 분포 간의 거리를 특징의 평균 임베딩 간의 거리로 나타냄
- kernel trick을 사용하여 분포 간의 무한한 모멘트(infinite moments)를 찾아냄
→ 샘플에서 얻은 분포의 기대값(expectation of distribution) 간의 거리를 줄임
→ 도메인 정렬을 개선
- source 도메인과 target 도메인의 특징 분포의 평균을 가깝게 만듦
- ex) Learning transferable features with deep adaptation networks, Unsupervised domain adaptation with residual transfer networks
Correlational Alignment (CORAL) : 상관 정렬
- second-order distributions statistics를 사용하여 도메인 적응을 개선
- 소스 및 타겟 도메인 간의 상관 관계를 정렬하기 위해 고차원 표현 특징을 활용
→ fully connected layers 내에서 고차원 표현 텐서 간의 공분산을 최소화하여 CORAL 손실을 줄임
→ 도메인을 정렬
- ex) Return of frustatingly easy domain adaptation, Deep coral: Correlation alignment for deep domain adaptation
Optimal Transport (OT) : 최적 수송
- 하나의 확률 분포를 최소한의 노력으로 다른 확률 분포로 변환하는 도구
- 가장 효율적인 변환 기술로 두 분포 사이를 원활하게 보간(interpolate)하고 중간 변환을 얻음
- 작동 방식: source 데이터를 도메인 간에 가장 짧은 Wasserstein distance를 갖는 부분 공간(subspace)으로 변환
- 샘플 크기에 따라 계산 비용이 2차적으로 증가함
→ DeepJDOT Deepjdot: deep joint distribution optimal transport for unsupervised domain adaptation에서 심층 적응 네트워크(DAN)에 OT를 확률적으로 구현하여 이러한 단점을 극복
- ex) Joint Distribution Optimal Transportation for Domain Adaptation
3.2 Adversarial Based
-
핵심 원리: 생성자(generator)와 판별자(discriminator)라는 두 가지 신경망을 경쟁적으로 학습시켜 도메인 불변(domain invariant) 특징을 추출하는 데 중점을 둠.
→ GAN(Generative Adversarial Network)의 기본 구조와 유사
-
생성자(Generator): source domain과 target domain의 데이터를 모두 사용하여 도메인과 관계없이 일반적인(domain invariant) 특징과 분류에 유용한(discriminative) 특징을 학습. 목표는 판별자가 어떤 도메인에서 온 데이터인지 구분하지 못하게 만드는 것
-
판별자(Discriminator): 생성자가 추출한 특징이 원본 도메인에서 왔는지, 타겟 도메인에서 왔는지 예측하는 역할. 목표는 생성자가 속임수를 쓰더라도 정확하게 도메인을 분류하는 것
-
학습 과정: 생성자와 판별자는 서로 대립(adversarial)하며 학습. 생성자는 판별자를 속여 도메인 구분을 어렵게 만듦. 즉, 도메인 간의 차이를 줄이는 방향으로 특징을 생성.
판별자는 도메인을 더 잘 구별하기 위해 학습.
-
결국 생성자는 어떤 도메인에서도 동일하게 인식될 수 있는, 즉 도메인 불변의 특징을 생성하게 됨.
→ 이 특징들은 target domain에서 분류 작업을 수행하는 데 사용됨
-
최근 연구에서 Discrepancy-based 접근 방식보다 더 나은 정확도를 제공
-
대표적인 모델:
- DANN (Domain-adversarial neural network): GAN의 원리를 사용하여 domain shift을 줄임. 특징 추출기와 도메인 분류기를 연결하고, 역전파 시 기울기 역전 계층(gradient reversal layer)을 통해 도메인 불변 특징을 추출
- CoGANs (Coupled generative adversarial networks): 두 개의 GAN을 사용하여 두 도메인 간의 결합 분포(joint distribution)를 학습
- PixelDA: 픽셀 수준에서 source domain을 target domain으로 변환하여 domain shift 줄임
- ADDA (Adversarial discriminative domain adaptation): 사전 학습된 소스 인코더를 사용하여 판별자가 이미지의 도메인 출처를 식별할 수 없도록 소스 및 타겟 이미지를 사용
- SANs (Selective adversarial networks): 부분 전이 학습(partial transfer learning)에 사용되며, target label이 source label의 부분 집합인 경우에 적합. 공통 서브스페이스에서 소스 및 타겟 데이터 분포를 일치시키면서 소스 도메인의 이상치 클래스를 분리
3.3 Reconstruction Based
: 두 도메인 간의 데이터 분포 차이를 줄이고, 도메인 불변(domain invariant) 특징을 학습
- encoder-decoder network
- encoder: 입력 이미지를 latent feature(고차원 특징)으로 변환
- decoder: 인코더가 추출한 특징을 사용하여 원본 입력 이미지 재구성
- 도메인 불변 특징 학습: 모델이 이미지를 재구성 하며 이미지의 공통적인 패턴을 학습함
- source domain에서 학습된 모델이 target domain 이미지의 상위 표현을 효과적으로 학습
3.4 Combination Based
: 여러 손실함수/전략을 함께 사용하는 방식
- Minimum Discrepancy Estimation:
MMD + CORAL loss: 분포의 평균과 공분산이라는 두 가지 통계적 측면에서 domain shift를 줄임
- 기존 domain adaptation은 주로 손실 함수, 재구성, GAN 기반의 end-to-end 아키텍처 사용
- Transforamtion based 접근은 입력 도메인 샘플에 전처리로서 변환 적용
- 대표적 방법: DDA
DDA (Direct Domain Adaptation)
- 네트워크에 데이터가 들어가기 전에 데이터 전처리에서 doamin shift 줄임
- "reciprocal linear transformation"라는 기법을 사용하여 도메인 간의 신호 대 잡음비(Signal-to-Noise Ratio, SNR)를 일치시킴
- target domain의 샘플이 source domain과 convoluted 되고, 반대도 마찬가지 > domain shift 줄어듦
- domain shift 감소 작업이 네트워크 외부에서 (train/test 이전에) 발생
TransPar
- 네트워크가 훈련중에 도메인 불변 특징을 학습할 수 있도록 네트워크 내의 매개변수를 식별하는 방법
- 매개변수 중에서 전이 가능한/전이 불가능한 부분 찾아냄
- 전이 가능한 매개변수 비율 = 도메인 분포간의 domain shift distance 와 반비례 (도메인 간 차이가 클수록 전이 가능한 매개변수 비율 낮아짐)
4. Conclusions
real world cases 에는 target domain 은 라벨이 없고, source domain과는 몇개 class 밖에 공유 안함
5. Future Works
adversarial network, combinational model 은 DA technique 중에 좋은 결과