Project 1: (Training Deep Neural Networks)
Project 1 (Training Deep Neural Networks)
Building a Deep Neural Network for Image Classification
In this project activity, you will build a deep neural network for image classification using the concepts learned in Lessons 1 to 4. The goal of the project is to classify images of handwritten digits from the MNIST dataset, achieving high accuracy while avoiding overfitting.
Guidelines:
- Data Preparation:
– Download the MNIST dataset and preprocess it, normalize pixel values between 0 and 1, and split it into training, validation, and testing sets.
– Visualize some examples of the training set to get familiar with the data.
- Network Architecture:
– Choose an appropriate network architecture for the task, such as a convolutional neural network (CNN) or a combination of convolutional and fully connected layers.
– Experiment with different number of layers, filter sizes, and pooling techniques to find the best configuration.
- Hyperparameter Tuning:
– Tune the learning rate, batch size, regularization techniques, and other hyperparameters to improve the performance of the network on the validation set.
– Experiment with different values and compare the results to find the best configuration.
- Optimizer Selection:
– Experiment with different optimization algorithms, such as SGD, Adam, and Adagrad, to find the best performance on the validation set.
– Tune the hyperparameters of the optimizer, such as momentum and adaptive learning rates, to improve convergence speed and accuracy.
- Learning Rate Schedules:
– Experiment with different learning rate schedules, such as step decay, exponential decay, and polynomial decay, to improve the performance of the network on the validation set.
– Compare the results and choose the best learning rate schedule for the task.
- Evaluation:
– Evaluate the performance of the network on the testing set to measure its generalization ability.
– Visualize some examples of the predictions to see how well the network is doing.
By following these guidelines, you will build a deep neural network for image classification that achieves high accuracy on the MNIST dataset. This project activity will help you understand the process of training deep neural networks and the importance of careful selection of hyperparameters and optimization algorithms.