Skip to content

This is my classification dogs lab from my "Artificial Intelligence With Python" Nano Degree

Notifications You must be signed in to change notification settings

Ajeo/aipnd-classifying-dogs

Repository files navigation

classifying-dogs

This is my classification dogs Lab from my "Artificial Intelligence With Python" Nano Degree.

Principle Objectives

  1. Correctly identify which pet images are of dogs (even if breed is misclassified) and which pet images aren't of dogs.
  2. Correctly classify the breed of dog, for the images that are of dogs.
  3. Determine which CNN model architecture (ResNet, AlexNet, or VGG), "best" achieve the objectives 1 and 2.
  4. Consider the time resources required to best achieve objectives 1 and 2, and determine if an alternative solution would have given a "good enough" result, given the amount of time each of the algorithms takes to run.

Dependencies

  1. Install Python 3.6
  2. Install Pipenv

Development

  1. Clone this project
  2. Run pipenv shell
  3. Run pipenv install
  4. Edit classifier.py or check_images.py

How To Use

Give execution permission to run_models_batch.sh with this command:

sudo chmod +x run_models_batch.sh

To run that script you need to run './run_models_batch.sh' in your terminal.

This will generate 3 files with the performance detail for each CNN model architectures:

  • AlexNet -> alexnet.txt
  • ResNet -> resnet.txt
  • VGG -> vgg.txt

Results

Screenshot

VGG has the best performance

About

This is my classification dogs lab from my "Artificial Intelligence With Python" Nano Degree

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published