$25
INSTRUCTIONS
1. In this homework, you will construct a Convolutional Neural Network (CNN) for Fashion-MNIST
(http://www.vision.caltech.edu/Image_Datasets/Caltech101/Caltech101.html). This dataset contains a training set of 60,000 samples and a test set of 10,000 samples. Each example is a 28x28 grayscale image, associated with a label from 10 classes. This classification problem is important in e-commerce website. For instance, in recommendation system, the high accuracy of CNN classification model can boost the performance of the recommendation list we show the customers.
PROBLEMS
1. (20%) Please implement a CNN for image recognition. You need to design at least two layers of convolutional layers and analyze the effect of different settings including stride size and filter size. The objective function is
E , (1)
where tmi is the ith target of the mth sample in the batch, M is the batch size, C is the number of total classes, Si is softmax activation of neural nets output function.
2. (20%) Plot the learning and the accuracy curve of the training and test set as shown in Figure 1, and Figure 2, respectively.
Figure 1: Learning curve. Figure 2: Accuracy curve.
3. (20%) Please plot activations of the first layer as illustrated in Figure.4. Please also plot the corresponding image with your prediction and label (see Figure 3) and explain what you observe.
Figure 3: Detected image.
Figure 4: The first convolution layers.
4. (20%) Please classify the clothing and plot the corresponding image and label (see Figure 5). The color of the label is green, it means the prediction is successful. If the color is red, it means the prediction fails.
Figure 5: Fashion MNIST classification.
5. (20%) Try at least one improved model (e.g. Alexnet, VGG-16, ResNet, etc.) that can deal with image classification. Repeat problem 2. 3. 4. Compare the results of different models.