[VLM][UDA][CLS] DAPL: Domain Adaptation via Prompt Learning
[VLM][UDA][CLS] DAPL: Domain Adaptation via Prompt Learning
- paper: https://arxiv.org/pdf/2202.06687.pdf
- github: https://github.com/LeapLabTHU/DAPrompt
- archived (인용수: 61회, ‘24-01-02 기준)
- downstream task: UDA for CLS
1. Motivation
-
기존의 Domain Adaptation에서 사용하는 adversarial learning 등은 semantic feature를 손상시켜 class간 discriminability를 훼손한다. (실험적으로 제안한 것에 비해 성능이 열등함을 통해 반증한 듯)
-
domain 와 semantic representation을 disentangle 해보자!
-
-
최적화 하는 parameter 수가 적어 training time efficient한 prompt learning을 UDA에 적용해보자!
2. Contribution
-
domain 과 semantic representation을 disentangle하는 prompt learning 방식 (DAPL)을 제안함
-
Cotrastive Learning 기반으로 Domain Specific Prompt와 (source, target 에 별도로 부여한) semantic prompt (category prompt)가 모두 일치할 경우에 text prompt와 image prompt를 당기고, vice versa로 학습하는 방식임
-
-
Office-Home, VisDA-2017등에서 SOTA
3. DAPL
-
baseline: CLIP (CoOp)
- Image Encoder : ResNet 계열, ViT
- Text Encoder : Transformer
-
text representation과 image representation간의 similarity prediction score를 기반으로 함
-
Domain Adaptation via Prompt Learning
-
overall diagram
-
unified style prompt : domain의 specific한 특징 없는 text prompt (Eq3)
- k: class index k
- $M_1$: domain agnostic token 갯수
-
domain specific prompt : domain의 specific한 특징을 추가한 text prompt (Eq4)
- $M_2$: domain specific token 갯수
- d : [l, u]. l : label(source), u: unlabel(target)
-
domain specific + class specific prompt : domain-agnostic prompt (v)를 class별로 다른 값으로 초기화 및 학습하게 되면 class token [CLASS]만 학습하는 것보다 큰 representation space로 학습이 가능하게 됨 $\to$ 최종 text prompt로 채택! (Eq5)
-
-
-
Total Loss
-
supervised loss
-
unsupervised loss
-
pseudo label : self-generated
-
thresholding with $\tau$
-
-
Total Loss
$\to$ domain 과 semantic이 같은 경우에만 contrastic learning으로 학습에 사용함. 단, domain만 같거나 class만 같은 경우에는 해당 text prompt를 loss에 반영하지 않음
- ex. $(I_1, P_3)$
- domain 정보 (“Photo of”)를 제거
- ex. $(I_1, P_2)$
- class 정보 (“dog”)를 제거
- ex. $(I_1, P_3)$
-
4. Experiments
-
Office-Home
-
DomainNet2017
-
Ablation
- Manual : a photo of [CLASS]
- Unified :
- unified style prompt : domain의 specific한 특징 없는 text prompt (Eq3)
- Class-specific : domain-agnostic prompt + class-specific context
- Unified + domain specific : domain의 specific한 특징을 추가한 text prompt (Eq4)
- Class-specific + domain specific : domain의 specific한 특징을 추가한 text prompt (Eq5)
-
Context token length에 따른 ablation ($M_1, M_2$)
-
Pseudo label threshold에 따른 ablation
-
Visualization