Skip to content

This project is designed to demonstrate how to use transfer learning by fine-tuning a pre-trained model to perform a specific classification task.

Notifications You must be signed in to change notification settings

EzraMulaga/Using-a-Pre-trained-Image-Classifier-to-Identify-Dog-Breeds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Use a Pre-trained Image Classifier to Identify Dog Breeds 🐾

Welcome to my "Use a Pre-trained Image Classifier to Identify Dog Breeds" project, a project I completed as part of my studies on deep learning and transfer learning through Udacity and AWS. In this project, I leveraged a pre-trained neural network model to classify images of dogs into various breeds with high accuracy. Proudly sharing this achievement with the community!

Project Overview

This project is designed to demonstrate how to use transfer learning by fine-tuning a pre-trained model to perform a specific classification task: identifying the breed of a dog from an image. By using a pre-trained model, we are able to benefit from the high-quality feature extraction learned on large datasets, thus requiring less computational power and training time.

Key Highlights ✨

  • Objective: Build and evaluate a classifier that can identify various dog breeds from images.
  • Tools & Technologies: AWS, Jupyter Notebook, Python, TensorFlow/Keras, and OpenCV.
  • Dataset: The model was fine-tuned on a subset of labeled dog images.
  • Model: We used transfer learning, specifically a pre-trained convolutional neural network (CNN), to achieve reliable predictions.

Project Details

  1. Data Preprocessing:

    • Loaded images of dogs and prepared the data using OpenCV and other libraries.
    • Applied data augmentation techniques to enhance the generalization capability of the model.
  2. Model Architecture:

    • Used a pre-trained CNN model such as ResNet50, VGG16, or InceptionV3.
    • Fine-tuned the model by training only the top layers specific to the dog breed classification task.
  3. Model Training & Evaluation:

    • Split the dataset into training, validation, and test sets.
    • Used metrics such as accuracy, precision, and recall to evaluate model performance.
    • The model achieved an accuracy of XX% on the test set, validating its ability to correctly identify dog breeds.

Results 🏆

The final model demonstrated high accuracy in identifying the breed of a dog from an image, effectively showcasing the power of transfer learning in image classification tasks. By leveraging pre-trained models, we were able to create a robust classifier with a relatively small amount of data.

Conclusion

This project underscored the practical value of using pre-trained models for specialized tasks, like classifying dog breeds, without needing extensive training data or computational resources. It’s a great example of how deep learning and transfer learning can be applied to solve real-world problems.

Feel free to explore the code in this repository, and don’t hesitate to reach out if you have any questions or suggestions. 🚀


Connect

I'm excited to share my progress and learning experience with the community! Connect with me on LinkedIn and see more of my projects on GitHub.

If you enjoyed this project, please give it a ⭐ to show your support!

Tags

  • #AWS #Udacity #DeepLearning #ImageClassification #MachineLearning #DogBreedClassifier #TransferLearning

Thanks for checking out my project!


Badge 🎖️

Project Completed Badge

About

This project is designed to demonstrate how to use transfer learning by fine-tuning a pre-trained model to perform a specific classification task.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published