Awesome
OVANet: One-vs-All Network for Universal Domain Adaptation (ICCV2021)
This repository provides code for the paper. Please go to our project page to quickly understand the content of the paper or read our paper.
Project Page| Paper
Environment
Python 3.6.9, Pytorch 1.6.0, Torch Vision 0.7.0, Apex. We used the nvidia apex library for memory efficient high-speed training.
Data Preparation
Datasets
Office Dataset, OfficeHome Dataset, VisDA, DomainNet, NaBird
Prepare dataset in data directory.
./data/amazon/images/ ## Office
./data/Real ## OfficeHome
./data/visda_train ## VisDA synthetic images
./data/visda_val ## VisDA real images
./data/dclipart ## DomainNet # We add 'd' for all directories of DomainNet to avoid confusion with OfficeHome.
./data/nabird/images ## Nabird
File splits
File list need to be stored in ./txt, e.g.,
./txt/source_amazon_opda.txt ## Office
./txt/source_dreal_univ.txt ## DomainNet
./txt/source_Real_univ.txt ## OfficeHome
./txt/nabird_source.txt ## Nabird
.
.
.
Training and Evaluation
All training scripts are stored in script directory.
Ex. Open Set Domain Adaptation on Office.
sh scripts/run_office_obda.sh $gpu-id train.py
Reference
This repository is contributed by Kuniaki Saito. If you consider using this code or its derivatives, please consider citing:
@article{saito2021ovanet,
title={OVANet: One-vs-All Network for Universal Domain Adaptation},
author={Saito, Kuniaki and Saenko, Kate},
journal={arXiv preprint arXiv:2104.03344},
year={2021}
}