Skip to content

My CNN for classifying healthy and unhealthy plants for the ANNDL course challenge

Notifications You must be signed in to change notification settings

Jacopopiazza/ANNDL-Image-Classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Artificial Neural Networks and Deep Learning HW1 - AY 2023/2024

Challenge: Image Classification

This challenge's goal was to train a classifier to correctly predict whether an image represented a healthy or unhealthy plant.

We examined three distinct approaches to address the task at hand:

  1. Custom CNNs
  2. Utilizing Transfer Learning and Fine-Tuning with pre-trained models sourced from the Keras Applications on the ImageNet dataset.
  3. Implementing Self-Supervised Learning techniques models.

After thorough evaluation, the combination of Transfer Learning + Fine-Tuning emerged as the most effective strategy for solving this challenge.

Data Analysis and Augmentation

The original dataset contained 196 outliers, which we identified and removed to ensure the quality of our training data. Following data preprocessing, data augmentation played a pivotal role in enhancing the robustness of our models. We utilized a variety of augmentation techniques sourced from KerasCV's official APIs, including:

  • Random Flips
  • Random Translations
  • Random Rotations
  • Random Zoom
  • Random Brightness
  • Random Crop
  • CutMix/Mixup
  • GaussianNoise
  • RandAugment

After careful consideration of the nature of the task and validation through cross-validation, we selected augmentation transformations that do not compromise the model's ability to identify unhealthy patterns. Therefore, transformations involving cropping, cutting, and mixing were discarded from our augmentation pipeline. We focused on augmentation techniques that enhance the robustness of the model without altering the fundamental characteristics of the data.

More Information

For a detailed overview of the challenge, methods, and models built, please refer to the report and the notebooks.

Results

Our team attained an 0.88 accuracy on the private test set, placing us in the top 10% among 580+ participants. Leveraging fine-tuned Keras' ConvNextLarge model, our approach showcases the efficacy of pre-trained models in image classification.

Team

About

My CNN for classifying healthy and unhealthy plants for the ANNDL course challenge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published