Project: Predictive Coding with CNN on MNIST Dataset
- Kyuta Yasuda

- Jan 24
- 1 min read
Objective
To develop a Convolutional Neural Network (CNN) that classifies handwritten digits from the MNIST dataset. The project demonstrates a complete pipeline from data preprocessing to model evaluation and visualization of results.
Key Highlights
Dataset: MNIST handwritten digit dataset, a benchmark dataset for image classification tasks.
Technologies Used:
Python: Core programming language.
TensorFlow/Keras: Framework for building and training the CNN model.
Matplotlib: For visualizing training performance.
Steps in the Project
Data Preparation:
Reshaped and normalized the MNIST images to prepare them for the CNN.
Converted labels to one-hot encoded format for multiclass classification.
Model Architecture:
Designed a CNN with multiple convolutional, pooling, and dense layers:
3 convolutional layers with ReLU activation.
Max-pooling layers for feature reduction.
Fully connected dense layers for classification.
Softmax activation for multiclass output.


Training and Evaluation:
Optimized the model using the Adam optimizer and categorical cross-entropy loss function.
Achieved robust training performance across 10 epochs with validation on the test set.
Results:
Test Accuracy: Achieved a competitive accuracy on the MNIST test set.
Performance Visualizations:
Plotted training and validation accuracy and loss across epochs.


Learning Outcomes
Gained hands-on experience in deep learning model development and evaluation.
Learned to interpret training dynamics using visualizations and performance metrics.
Successfully applied machine learning techniques to solve a classic image classification problem.



Comments