Le but de ce projet est de développer et d’évaluer plusieurs modèles d’intelligence artificielle capables de classifier des images de fruits. Les images utilisées dans ce projet sont de taille 100x100 pixels. Nous cherchons à entraîner des modèles qui peuvent reconnaître et classer différents types de fruits, tels que des pommes, des bananes, etc.
Dans ce projet, nous visons à entraîner et évaluer quatre modèles différents pour la classification d’images. Les modèles avec lesquels nous travaillons incluent :
Cloner le dépôt GitHub contenant les données :
Lien des données 🍎🍌🍇
Les données téléchargées sont divisées en deux dossiers : Training
et Test
.
Training
contient 70,491 images. Nous appliquerons de la data augmentation
pour obtenir un total de 422,946 images. Ces images seront ensuite divisées en deux ensembles :train_ds
: 317,209 images (75%)val_ds
: 105,737 images (25%)
Test
contient 23,619 images qui seront utilisées pour évaluer les modèles.Le dataset est composé d’images de 141 classes de fruits.
data/
├── Training/ (70,491 images)
│ ├── Augmented/(422,946 images)
│ │ ├── train_ds/(317,209 images - 75%)
│ │ └── val_ds/(105,737 images - 25%)
└── Test/ (23,619 images)
Installer les dépendances :
load_data()
: Divise les données en ensembles d’entraînement et de validation.data_augmentation()
: Applique des augmentations.create_cnn_model()
, create_resnet_model()
, create_efficientnet_model()
, create_vgg16_model()
.train_model()
, evaluate_model()
, plot_training_history()
, plot_confusion_matrix()
.zip_directory()
: Compresse un répertoire.Visualisez une grille d’images issues du dataset pour vérifier leur intégrité :
L’augmentation inclut la rotation, le flip et l’ajustement de contraste :
CNN Custom | EfficientNet | ResNet | VGG16 |
---|---|---|---|
Métrique | Coefficient |
---|---|
Accuracy 🎯 | 0.4 |
AUC 📈 | 0.1 |
Précision 🧮 | 0.1 |
Rappel 🔍 | 0.1 |
F1 🏆 | 0.1 |
Temps d’inférence moyen ⏱️ | 0.2 |
Modèle | Accuracy 🎯 | AUC 📈 | Précision 🧮 | Rappel 🔍 | F1 🏆 | Temps d’inférence moyen ⏱️ | Score final 🏅 |
---|---|---|---|---|---|---|---|
CNN | 0.985317 | 0.999915 | 0.988543 | 0.985317 | 0.984813 | 1.000000 | 0.989986 |
ResNet | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 1.000000 | 0.185564 | 0.837113 |
VGG16 | 0.974489 | 0.999853 | 0.977447 | 0.974489 | 0.973609 | 0.065214 | 0.795378 |
EfficientNet | 0.954392 | 0.999682 | 0.965315 | 0.954392 | 0.954058 | 0.044032 | 0.777908 |
Le projet se termine par la sélection du modèle le plus performant. Le modèle choisi sera recommandé pour des tâches futures de classification d’images.
Pour toute question ou suggestion, veuillez contacter Abraham KOLOBOE à l’adresse email abklb27@gmail.com.
Merci pour votre attention ! 😊