/dog-cat-cnn

Binary classification using a CNN for cats and dogs

Primary LanguagePython

Binary Classification using a Convolutional Neural Network for Cats and Dogs

This project serves as a foundation for learning how to create a convolutional neural network (CNN) and how to structure an ML project for reproducibility and maintainability.

Motivation

The primary focus of this project is to understand the project structure rather than achieving high accuracy in the model's predictions.

What I Learned

Throughout this project, I gained knowledge in the following areas:

  • Creating a simple data pipeline using Python scripts and Makefiles for orchestration.
  • Training a CNN model, saving it to disk, and loading it for predictions.
  • Working with hdf5 files.
  • Training the model by loading data from disk. Although the project's data comfortably fit into memory, I incorporated the flexibility to train the model in parts.

How to Use

To explore and execute the scripts, you can access the provided Google Colab notebook using the following link:

Google Colab