This repository contains the source code and resources for a machine learning project focused on classifying dog breeds from images. The project utilizes deep learning techniques to train a model capable of accurately identifying the breed of a dog from an input image.
Dog breed classification is a challenging problem due to the large variety of dog breeds and the subtle differences in their appearance. This project aims to address this challenge using deep learning algorithms, particularly convolutional neural networks (CNNs). By training a CNN on a large dataset of dog images labeled with their respective breeds, we can create a model capable of accurately predicting the breed of a dog from an input image.
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/AwnishRanjan/Dog-Breed-Classification.git
-
Navigate to the project directory:
cd Dog-Breed-Classification
-
Set up a virtual environment (optional but recommended):
python3 -m venv venv source venv/bin/activate
-
Install the required dependencies:
pip install -r requirements.txt
-
Data Preparation: If you have your own dataset, place it in the
data/
directory. Otherwise, the project comes with sample datasets for testing. -
Model Training: Train the model using the provided scripts or notebooks in the
notebook/
directory. -
Model Evaluation: Evaluate the trained model's performance using evaluation metrics and visualizations.
-
Inference: Use the trained model for inference by providing input images and obtaining predictions.
artifacts/
: Contains trained models, serialized objects, and other artifacts generated during the project.data
: Dataset files and data preprocessing scripts has been downloaded from Kaggle.notebook/
: Jupyter notebooks for exploratory data analysis, model training, and evaluation.src/
: Source code for the project, including data preprocessing, model architecture, and prediction pipeline.README.md
: This file providing an overview of the project.
Contributions to this project are welcome! If you find any issues or have suggestions for improvement, please open an issue or submit a pull request.