This is the code repository complementing the paper
Jan Kremer, Fei Sha, and Christian Igel. Robust Active Label Correction. PMLR: Volume 84 (AISTATS), 2018
@inproceedings{Kremer18,
author = {J. Kremer and F. Sha and C. Igel},
title = {Robust Active Label Correction},
booktitle = {Proceedings of the 21st International Conference on Artificial Intelligence and Statistics},
series = {Proceedings of Machine Learning Research},
year = 2018,
volume = 84,
publisher = {PMLR}
}
Please cite us if you use any of the code provided here. All experiments from the paper can be reproduced from this repository. We use Python 3 and tensorflow 1.4. You can create and activate the conda environment by running
conda env create --file environment/relabeling.yml
source activate relabeling
or if you have GPU support
conda env create --file environment/relabeling-gpu.yml
source activate relabeling-gpu
To get the necessary data and the pretrained model weights for the CNN experiment, run
sh scripts/fetch_model.sh
and get the data (images and annotions) from http://bit.ly/2Duy6nK and should be unpacked into data/baidu
.
The necessary Cython code can be compiled by calling
sh scripts/compile.sh
The logistic regression experiments can be reproduced by calling
sh scripts/relabeling.sh
The results can be found in output/experiment/std
.
The CNN experiments can be reproduced by calling
sh scripts/relabeling_deep.sh
The results can be found in output/experiment/deep
.
All plots can be generated by calling
sh scripts/generate_plots.sh
The figures can be found in output/experiment/std/figures
for the logistic regression experiments and in output/experiment/deep/figures
for the CNN experiment.
A single experiment can be run by calling
python relabeling.py
The command-line help should guide you regarding available options.