This code is for the paper "Confident Multiple Choice Learning".
It is tested under Ubuntu Linux 16.04.1 and Python 2.7 environment, and requries following Python packages to be installed:
- TensorFlow: version 1.0.0 or above. Only GPU version is available.
- Torchfile: version 0.0.2 or above.
Simple torchfile installation:
pip install torchfile
We provide the following datasets in torch format:
- CIFAR-10 whitened: pre-processed data (1.37GB)
- SVHN (excluding the extra dataset): pre-processed data (2.27GB)
run_CMCL.sh
: train the models using "Confident multiple choice learning".run_MCL.sh
: train the models using "Multiple choice learning".run_IE.sh
: train the models using "Independent ensemble".
python src/ensemble.py \
--dataset=cifar \
--model_type=resnet \
--batch_size=128 \
--num_model=5 \
--loss_type=cmcl_v0 \
--k=4 \
--beta=0.75 \
--feature_sharing=True \
--test=False
dataset
: supportscifar
andsvhn
.model_type
: supportsvggnet
,googlenet
, andresnet
.batch_size
: we use batch size 128.num_model
: number of models to ensemble.loss_type
: supportsindependent
,mcl
,cmcl_v0
, andcmcl_v1
.k
: overlap parameter.beta
: penalty parameter.feature_sharing
: use feature sharing ifTrue
.test
: ifTrue
, test the result of previous training, otherwise run a new training.