This repository contains the implementation of two neural network architectures using PyTorch for classifying images in the CIFAR-10 dataset. The project includes a multi-layer perceptron (MLP) and a convolutional neural network (CNN), both trained to classify images into 10 different classes.
Image classification is a fundamental task in computer vision, aiming to categorize images into predefined classes or labels. This project explores two popular neural network architectures, MLP and CNN, for classifying images in the CIFAR-10 dataset.
The CIFAR-10 dataset consists of 60,000 32x32 color images in 10 classes, with 6,000 images per class. The classes include common objects such as airplanes, automobiles, birds, cats, and more.
mlp_classification.ipynb
: Jupyter Notebook containing the implementation of the Multi-layer Perceptron for image classification.cnn_classification.ipynb
: Jupyter Notebook containing the implementation of the Convolutional Neural Network for image classification.
- Clone the repository:
git clone https://github.com/alireza-nasirian/image-classification.git
-
Install the required dependencies
-
Open and run the Jupyter Notebooks
mlp_classification.ipynb
andcnn_classification.ipynb
to train and evaluate the MLP and CNN models, respectively.
-
MLP Model:
- Final Test Accuracy: 50% (minimum)
- Final Train Accuracy: 60% (minimum)
-
CNN Model:
- Final Test Accuracy: 70% (minimum)
- Final Train Accuracy: 80% (minimum)
Contributions to improve the project are welcome! Feel free to open issues or pull requests.