CS194-26 Project 4 CNN

Weichao Chen

 

MNIST Apparel Classification using CNN

Model Specifications

The following Convolutional Neural Network was constructed

Layer (type)Output ShapeParam #
conv2d (Conv2D)(None, 26, 26, 32)320
max_pooling2d (MaxPooling2D)(None, 13, 13, 32)0
conv2d_1 (Conv2D)(None, 11, 11, 64)18496
max_pooling2d (MaxPooling2D)(None, 5, 5, 64)0
conv2d_1 (Conv2D)(None, 3, 3, 128)73856
max_pooling2d (MaxPooling2D)(None, 1152)0
dense (Dense)(None, 128)147584
dense_1 (Dense)(None, 10)1290

nn

Training and Validation Process

Train the CNN with 10 Epochs using the 60k samples, the training accuracy reached over 95.93%. Validation accuracy is slightly lower but still north of 90%.

accuracy_plot

 

Per Class Analysis

Histogram of accuracy by class is given below. In my case, Trouser appear to have the highest.

acc_per_class

Sample of correctly/incorrectly predicted images

apparels

 

Visualize the learned filters

Sample filter learnt in the first Conv2D layer

filters