cifar10-lenet
Modernized variation of LeNet trained on the CIFAR-10 dataset using MindSpore 2.8.0 + CANN 8.5.0 with the structure below.
- 1st convolution layer:
- 3 input channels
- 32 output channels
- 3 by 3 kernel with unit stride
- Padding of
1px in all directions
- ReLU activation
- 1st batch normalization layer with 32 channels, epsilon =
1e-5, momentum = 0.9
- 1st max pooling layer with 2 by 2 window and a stride of 2
- 2nd convolution layer:
- 32 input channels
- 64 output channels
- 3 by 3 kernel with unit stride
- Padding of
1px in all directions
- ReLU activation
- 2nd batch normalization layer with 64 channels, epsilon =
1e-5, momentum = 0.9
- 2nd max pooling layer with 2 by 2 window and a stride of 2
- Flattening layer to convert the 64 x 8 x 8 feature maps to 4096 output channels
- 1st hidden fully connected layer: 4096 input channels, 2048 output channels, ReLU activation
- 1st dropout layer with
p=0.5
- 2nd hidden fully connected layer: 2048 input channels, 1024 output channels, ReLU activation
- 2nd dropout layer with
p=0.5
- Final fully connected layer: 1024 input channels, 10 output channels
Usage
See the included notebook for details.