Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mitmul/chainer-cifar10

Various CNN models for CIFAR10 with Chainer
https://github.com/mitmul/chainer-cifar10

chainer cifar10 convnet convolutional-neural-networks deep-convolutional-networks deep-learning densenet network-in-network neural-networks residual-networks resnet vgg wide-residual-networks

Last synced: about 2 months ago
JSON representation

Various CNN models for CIFAR10 with Chainer

Awesome Lists containing this project

README

        

# Train various models on CIFAR10 with Chainer

## Requirements

- Python 3.5.1+ (not tested with Python2)
- pip packages:
- chainer>=3.1.0
- chainercv>=0.8.0
- numpy>=1.10.1
- matplotlib>=2.0.0
- scikit-image>=0.13.1
- opencv-python>=3.3.0
- tabulate>=0.8.2

## Quick Start

```bash
MPLBACKEND=Agg python train.py
```

With full arguments:

```bash
MPLBACKEND=Agg python train.py \
--model_file models/wide_resnet.py \
--model_name WideResNet \
--batchsize 128 \
--training_epoch 500 \
--initial_lr 0.05 \
--lr_decay_rate 0.5 \
--lr_decay_epoch 70 \
--weight_decay 0.0005 \
--random_angle 15.0 \
--pca_sigma 25.5 \
--expand_ratio 1.2 \
--crop_size 28 28 \
--seed 0 \
--gpus 0
```

## About data augmentation

It performs various data augmentation using [ChainerCV](https://github.com/chainer/chainercv). Provided operations are:

- Random rotating (using OpenCV or scikit-image)
- Random lighting
- Random LR-flipping
- Random zomming (a.k.a. expansion)
- Random cropping

See the details at `transform` function in `train.py`.

## Exprimental Results

| model_name | val/main/accuracy | epoch | batchsize | crop_size | expand_ratio | pca_sigma | random_angle | weight_decay | initial_lr | lr_decay_rate | lr_decay_epoch |
|:-------------|--------------------:|--------:|------------:|:------------|---------------:|------------:|---------------:|---------------:|-------------:|----------------:|-----------------:|
| LeNet5 | 0.860166 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.01 | 0.5 | 50 |
| NIN | 0.879351 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.01 | 0.5 | 100 |
| VGG | 0.934237 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.05 | 0.5 | 50 |
| ResNet50 | 0.950455 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.05 | 0.5 | 50 |
| DenseNet | 0.944818 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.05 | 0.5 | 50 |
| WideResNet | 0.962322 | 500 | 128 | [28, 28] | 1.2 | 25.5 | 15 | 0.0005 | 0.05 | 0.5 | 70 |

![](compare.png)