HyperAI

Classification Des Fleurs Par Apprentissage Par Transfert (DesNet121)

5 types de classification des fleurs | DesNet121 | Ensemble d'entraînement 0,98 | Ensemble de tests 0,95

Tutoriel sur la classification d'images à l'aide de l'apprentissage par transfert

Aperçu

Bienvenue dans ce carnet sur la classification d'images par apprentissage par transfert ! Dans ce cahier, nous explorerons comment utiliser l'apprentissage par transfert, une technique puissante d'apprentissage en profondeur, pour résoudre un problème de classification d'images.

À propos de l'apprentissage par transfert

L'apprentissage par transfert est une technique d'apprentissage automatique qui permet à un modèle formé sur une tâche d'être réutilisé pour former une deuxième tâche connexe. Dans le contexte de l’apprentissage en profondeur, l’apprentissage par transfert utilise un modèle de réseau neuronal pré-entraîné comme point de départ pour une nouvelle tâche, plutôt que de former un modèle à partir de zéro. Cette approche est particulièrement utile lorsque les données ou les ressources informatiques sont limitées.

Cible

L'objectif de ce cahier est de démontrer comment utiliser l'apprentissage par transfert pour effectuer une classification d'images sur un ensemble de données d'images de fleurs. Nous utiliserons un réseau neuronal convolutif pré-entraîné (CNN) comme extracteur de fonctionnalités et construirons un classificateur personnalisé dessus pour prédire les espèces de fleurs.

Ensemble de données

Nous utiliserons le « jeu de données de classification des 5 types de fleurs » disponible sur Kaggle. L'ensemble de données contient des images de cinq types de fleurs différents : lys, lotus, orchidée, tournesol et tulipe. Chaque image est étiquetée avec le type de fleur correspondant.

Méthodologie

  1. Préparation des données:Nous commencerons par préparer l'ensemble de données, y compris le chargement des images, le prétraitement et la division en ensembles d'entraînement, de validation et de test.
  2. Construction de modèles:Ensuite, nous allons charger un CNN pré-entraîné comme modèle de base, supprimer les couches supérieures (classification) et ajouter des couches personnalisées par-dessus pour créer notre classificateur.
  3. former:Nous allons former le modèle à l’aide de l’apprentissage par transfert, en affinant les poids des couches personnalisées tout en gardant les poids des couches pré-entraînées figés.
  4. Évaluer:Enfin, nous évaluerons les performances du modèle entraîné sur l’ensemble de test et visualiserons les résultats.

Outils et bibliothèques

Le langage de programmation Python et plusieurs bibliothèques sont utilisés ici, notamment TensorFlow, Keras et Matplotlib. Ces bibliothèques fournissent des outils puissants pour l’apprentissage en profondeur, la création de modèles et la visualisation.