Skip to content
Chainer implementation of between-class learning for Image classification
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
models first commit Dec 12, 2017
.gitignore first commit Dec 12, 2017 first commit Dec 12, 2017

BC learning for images

Implementation of Between-class Learning for Image Classification by Yuji Tokozume, Yoshitaka Ushiku, and Tatsuya Harada.

Our preliminary experimental results on CIFAR-10 and ImageNet-1K were already presented in ILSVRC2017 on July 26, 2017.

Between-class (BC) learning:


  • BC learning for images
    • BC: mix two images simply using internal divisions.
    • BC+: mix two images treating them as waveforms.
  • Training of 11-layer CNN on CIFAR datasets


  • Install Chainer v1.24 on a machine with CUDA GPU.
  • Prepare CIFAR datasets.


  • Template:

      python --dataset [cifar10 or cifar100] --netType convnet --data path/to/dataset/directory/ (--BC) (--plus)
  • Recipes:

    • Standard learning on CIFAR-10 (around 6.1% error):

        python --dataset cifar10 --netType convnet --data path/to/dataset/directory/
    • BC learning on CIFAR-10 (around 5.4% error):

        python --dataset cifar10 --netType convnet --data path/to/dataset/directory/ --BC
    • BC+ learning on CIFAR-10 (around 5.2% error):

        python --dataset cifar10 --netType convnet --data path/to/dataset/directory/ --BC --plus
  • Notes:

    • It uses the same data augmentation scheme as fb.resnet.torch.
    • By default, it runs training 10 times. You can specify the number of trials by using --nTrials command.
    • Please check for other command line arguments.


Error rate (average of 10 trials)

Learning CIFAR-10 CIFAR-100
Standard 6.07 26.68
BC (ours) 5.40 24.28
BC+ (ours) 5.22 23.68
  • Other results (please see paper):
    • The performance of Shake-Shake Regularization [1] on CIFAR-10 was improved from 2.86% to 2.26%.
    • The performance of ResNeXt [2] on ImageNet-1K was improved from 20.4% to 19.4% (single-crop top-1 validation error).


[1] X. Gastaldi. Shake-shake regularization. In ICLR Workshop, 2017.

[2] S. Xie, R. Girshick, P. Dollar, Z. Tu, and K. He. Aggregated residual transformations for deep neural networks. In CVPR, 2017.

You can’t perform that action at this time.