canghaiwuya / Adversarial-Reweighting-for-Partial-Domain-Adaptation

Code for Adversarial Reweighting for Partial Domain Adaptation (NeurIPS 2021)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Adversarial Reweighting for Partial Domain Adaptation (NeurIPS)

Code for paper "Xiang Gu, Xi Yu, Yan Yang, Jian Sun, Zongben Xu, Adversarial Reweighting for Partial Domain Adaptation, Conference on Neural Information Processing Systems (NeurIPS), 2021".

The code for the extended version "Adversarial Reweighting with α-Power Maximization: A Theoretically Motivated Approach for Partial Domain Adaptation" is available. Welcome to try it!

Prerequisites:

python==3.6.13
pytorch ==1.5.1
torchvision ==0.6.1
numpy==1.19.2
cvxpy ==1.1.14
tqdm ==4.1.2
Pillow == 8.3.1

Datasets:

Download the datasets of
VisDA-2017
DomainNet
Office-Home
Office
ImageNet
Caltech-256
and put them into the folder "./data/" and modify the path of images in each '.txt' under the folder './data/'. Note the full list of ImageNet (imagenet.txt) is too big. Please download it here and put it into './data/imagenet_caltech/'.

Domain ID:

VisDA-2017: train (synthetic), validation (real) ==> 0,1
DomainNet: clipart, painting, real, sketch ==> 0,1,2,3
Office-Home: Art, Clipart, Product, RealWorld ==> 0,1,2,3
Office: amazon, dslr, webcam ==> 0,1,2
ImageNet-Caltech: imagenet, caltech ==> 0,1

Training

VisDA-2017:

python train.py --dset visda-2017 --s 0 --t 1

DomainNet:

python train.py --dset domainnet --s 0 --t 1

Office-Home:

#for AR
python train.py --dset office_home --s 0 --t 1
#for AR+LS
python train.py --dset office_home --s 0 --t 1 --label_smooth

Office:

python train.py --dset office --s 0 --t 1

ImageNet-Caltech:

python train.py --dset imagenet_caltech --s 0 --t 1

Citation:

@inproceedings{
gu2021adversarial,
title={Adversarial Reweighting for Partial Domain Adaptation},
author={Xiang Gu and Xi Yu and Yan Yang and Jian Sun and Zongben Xu},
booktitle={Thirty-Fifth Conference on Neural Information Processing Systems},
year={2021},
url={https://openreview.net/forum?id=f5liPryFRoA}
}

Reference code:

https://github.com/thuml/CDAN
https://github.com/tim-learn/BA3US
https://github.com/XJTU-XGU/RSDA

Contact:

If you have any problem, feel free to contect xianggu@stu.xjtu.edu.cn.

About

Code for Adversarial Reweighting for Partial Domain Adaptation (NeurIPS 2021)


Languages

Language:Python 100.0%