Dog breed classificaion
- Project Overview
- Setup/Testing Instructions
- File/Folder Descriptions
- Results/Findigns
- Licensing, Authors, and Acknowledgements
The aim of this project is to develop an application that predicts an image of a dog, your algorithm will identify an estimate of the canine’s breed. If supplied an image of a human, the code will identify the resembling dog breed.
I have also written a Medium Blog that details the steps and process that I took to complete this project.
"Dog Breed Classification Model: DSND Capstone Project"
Git clone this repo to an environment that has the ability to train Machine Learning utilizing a GPU. I utilized Google Colab to perform all tasks in this notebook.
Libraries/Dependencie
- Pandas
- Numpy
- PyTorch
- CV2
- Pillow
- Matplotlib
- Seaborn
Within the main/
folder is where the mechanics of the application are found.
DogBreedApp.ipynb is the jupyter notebook that contains all the code for setting up and running the ML models and analytics.
DataExploring.ipynb is the jupyter notebook that contains the code that I utilize to look at the images in the dataset.
After training a custom model and a transfer learning model, it was no surprise that the transfer learning model performed better than the custom model. From the better performing transfer learning model I then created the baseline for a dog breed classification application that performs classification of an image provided and then provides an estimated breed if the image is dog or human.
Even though my final model didn't classify all the images correctly, I believe that it is heading in the right direction. The model has a good accuracy level, and it shows that it generalizes well with images it hasn't seen before. It is my conclusion that with some more time and effort this classification model could become a real application to help people decern a dog's breed.
The data that was utilized in this project was obtained from Udacity Data Science Nano Degree.