This is the PyTorch implementation for our paper Robust Learning from Noisy Web Data for Fine-Grained Recognition
The architecture of our proposed approach is as follows
Create a virtual environment with python 3.7,
$ conda create -n msdejor_env python=3.7
$ conda activate msdejor_env
Install all dependencies
$ pip install -r requirements.txt
Download these web fine-grained datasets, namely Web-CUB, Web-Car and Web-Aircraft. Then uncompress them into ./data
directory.
---data
├── web-bird
│ ├── train
│ └── val
├── web-car
│ ├── train
│ └── val
└── web-aircraft
├── train
└── tval
- If you want to use multi-scale module, modify the corresponding parameters in
main_msdejor.py
or directly runmain_msdejor.py
to get the final result. We provide the default parameter settings as following:
python main_msdejor.py --bs 30 --net 50 --data bird --lamb 0.1 --gama 2
- If you only prefer the DeJoR module, run
main_dejor.py
.
python main_dejor.py --bs 50 --net 18 --data bird --lamb 0.1 --gama 2
In our experiments, we adopt the same hyperparameters across three benchmark datasets, setting to 0.1 and to 2.
- The final experimental results are shown in the following table: