This project addresses a binary image classification problem: distinguishing between images of dogs and cats using deep learning. A pretrained MobileNetV2 model was employed and fine-tuned to improve performance on the target dataset.
- Task: Classify images as either a dog or a cat.
- Model: Transfer learning with MobileNetV2 pretrained on ImageNet.
- Dataset: A labeled dataset of cat and dog images.
- Approach:
- Used MobileNetV2 as a feature extractor initially.
- Fine-tuned selected layers of the model for improved accuracy.
- Applied image augmentation and normalization.
- Outcome: Achieved high classification accuracy through fine-tuning.
- Python 3.x
- TensorFlow / Keras
- NumPy, Matplotlib
- Scikit-learn (for evaluation)
- Base Model:
MobileNetV2(include_top=False) - Fine-Tuning:
- Unfroze top layers of MobileNetV2
- Re-trained using a low learning rate
- Custom Head:
- Global Average Pooling
- Dense layer with dropout
- Output layer with sigmoid activation