Utiliser l’assistant Train Deep Learning Model (Entraîner le modèle de Deep Learning)

Disponible avec une licence Image Analyst.

L’assistant Train Deep Learning Model (Entraîner le modèle de Deep Learning) est un processus assisté permettant d’entraîner un modèle de Deep Learning à l’aide des données que vous avez recueillies. Dès que vous avez entraîné les données, ouvrez l’assistant Train Deep Learning Model (Entraîner le modèle de Deep Learning) Entraîner le modèle d’apprentissage profond dans l’onglet Imagery (Imagerie) du menu déroulant Deep Learning Tools (Outils de Deep Learning) Outils de Deep Learning.

L’assistant contient trois pages : Get Started (Prise en main), Train (Entraîner) et Result (Résultat).

Pour utiliser l’assistant Train Deep Learning Model (Entraîner le modèle de Deep Learning), procédez comme suit :

  1. Cliquez sur l’onglet Imagery (Imagerie).
  2. Cliquez sur le menu déroulant Deep Learning Tools (Outils de Deep Learning) Outils de Deep Learning et choisissez Train Deep Learning Model (Entraîner le modèle de Deep Learning) Entraîner le modèle d’apprentissage profond.

    La fenêtre de l’assistant Train Deep Learning Model (Entraîner le modèle de Deep Learning) s’ouvre.

Prise en main

Sur la page Get Started (Prise en main) de l’assistant, vous devez spécifier la manière d’entraîner le modèle de Deep Learning.

  1. Spécifiez la manière d’entraîner le modèle.
    • Set the parameters automatically (Définir les paramètres automatiquement) — Le type de modèle, les paramètres et les hyperparamètres sont définis automatiquement pour générer le meilleur modèle.
    • Specify my own parameters (Spécifier mes paramètres personnels) — Vous définissez le type de modèle, les paramètres et les hyperparamètres pour générer le modèle.
  2. Cliquez sur le bouton Next (Suivant) pour accéder à la page Train (Entraîner).

Préparer

Sur la page Train (Entraîner), vous définissez les informations relatives aux paramètres d’entraînement. Selon l’option spécifiée sur la page Get Started (Prise en main), les paramètres peuvent varier.

  1. Spécifiez les paramètres requis.

    Données d’entraînement en entrée

    Dossiers contenant les fragments d’image, les étiquettes et les statistiques nécessaires à l’entraînement du modèle. Il s’agit de la sortie de l’outil Exporter les données d’entraînement pour le Deep Learning.

    Modèle en sortie

    (Entraînement automatique)

    Modèle entraîné en sortie enregistré en tant que paquetage Deep Learning (fichier .dlpk).

    Dossier en sortie

    (Entraînement manuel)

    Emplacement du dossier en sortie où sera stocké le modèle entraîné.

  2. Définissez éventuellement d’autres paramètres.

    Paramètres d’entraînement automatique

    ParamètreDescription

    Modèle pré-entraîné

    Modèle pré-entraîné qui sera utilisé pour affiner le nouveau modèle. L’entrée est un fichier de définition de modèle Esri (.emd) ou un fichier de paquetage Deep Learning (.dlpk).

    Un modèle pré-entraîné avec des classes similaires peut être affiné en vue de son adaptation au nouveau modèle. Le modèle pré-entraîné doit avoir été entraîné avec le même type de modèle et le même modèle d’architecture que ceux qui seront utilisés pour entraîner le nouveau modèle.

    Total Time Limit (Hours) (Limite de temps totale (Heures))

    Limite de temps totale, en heures, que prendra l’entraînement du modèle AutoDL. La valeur par défaut est de 2 heures.

    Auto DL Mode (Mode Auto DL)

    Spécifie le mode AutoDL qui sera utilisé et l’intensité de la recherche AutoDL.

    • Basic (Base) - Entraînez tous les réseaux sélectionnés sans optimisation des hyperparamètres.
    • Advanced (Avancé) - Permet d’optimiser les hyperparamètres des deux principaux modèles de performances.

    Réseaux neuronaux

    Spécifie les architectures qui seront utilisées pour entraîner le modèle.

    Par défaut, tous les réseaux seront utilisés.

    Save Evaluated Models (Enregistrer les modèles évalués)

    Indique si tous les modèles évalués sont enregistrés.

    • Activée - Tous les modèles évalués seront enregistrés.
    • Désactivée - Seul le meilleur modèle de performances sera enregistré. Il s’agit de l’option par défaut.

    Paramètres d’entraînement manuel

    ParamètreDescription

    Nombre maximal d’époques

    Nombre maximal d’époques pour lesquelles le modèle est entraîné. Si le nombre maximal d’époques est égal à 1, le jeu de données va-et-vient une fois à travers le réseau neuronal. La valeur par défaut est 20.

    Modèle pré-entraîné

    Modèle pré-entraîné utilisé pour optimiser le nouveau modèle. L’entrée est un fichier de définition de modèle Esri (.emd) ou un fichier de paquetage Deep Learning (.dlpk).

    Un modèle pré-entraîné avec des classes similaires peut être optimisé pour s’ajuster au nouveau modèle. Le modèle pré-entraîné doit avoir été entraîné avec le même type de modèle et le même modèle backbone que ceux qui serviront à entraîner le nouveau modèle.

    Type de modèle

    Indique le type de modèle à utiliser pour entraîner le modèle de Deep Learning.

    Pour plus d’informations relatives aux différents types de modèles, voir Architectures de modèles de Deep Learning

    Arguments du modèle

    Les informations du paramètre Model Type (Type de modèle) sont utilisées pour renseigner ce paramètre. Ces arguments varient selon l’architecture du modèle. Les arguments pris en charge pour les modèles entraînés dans ArcGIS sont décrits ci-dessous. Les modèles pré-entraînés ArcGIS et les modèles de Deep Learning personnalisés peuvent comporter des arguments supplémentaires pris en charge par l’outil.

    Pour plus d’informations sur les arguments disponibles pour chaque type de modèle, reportez-vous à la rubrique Arguments de Deep learning.

    Augmentation des données

    Spécifie le type d’augmentation des données utilisé.

    L’augmentation des données est une technique permettant d’augmenter artificiellement la taille du jeu d’entraînement en créant des copies modifiées d’un jeu de données à l’aide des données existantes.

    • Default (Valeur par défaut) - Les paramètres et valeurs d’augmentation de données par défaut sont utilisées. Les méthodes d’augmentation des données par défaut incluses sont crop, dihedral_affine, brightness, contrast et zoom. Ces valeurs par défaut fonctionnent généralement bien pour l’imagerie satellite.
    • None (Aucun) - Aucune augmentation de données ne se produit.
    • Custom (Personnalisé) - Spécifiez les valeurs d’augmentation des données définies par l’utilisateur à l’aide du paramètre Augmentation Parameters (Paramètres d’augmentation).
    • File (Fichier) - Spécifiez des transformations fastai pour l’augmentation de données des jeux de données d’entraînement et de validation. Elles sont spécifiées dans un fichier .json nommé transforms.json, se trouvant dans le même dossier que les données d’entraînement. Pour plus d’informations relatives aux différentes transformations, voir Transformation de vision fastai.

    Paramètres d’augmentation

    Spécifie la valeur de chaque transformation dans le paramètre d’augmentation.

    • rotate : l’image subit une rotation aléatoire (en degrés) selon une probabilité (p). Si le nombre de degrés est une plage (a,b), une valeur entre a et b est attribuée de manière uniforme. La valeur par défaut est 30.0; 0.5.
    • brightness : la luminosité de l’image est ajustée de manière aléatoire selon la valeur de changement, avec une probabilité (p). Une valeur de changement de 0 rend l’image plus sombre, alors que la valeur 1 la rend plus claire. Une valeur de changement de 0,5 ne modifie pas la luminosité. Si la valeur de changement est une plage (a,b), l’augmentation attribue de manière uniforme une valeur entre a et b. La valeur par défaut est (0.4,0.6); 1.0.
    • contrast : le contraste de l’image est ajusté de manière aléatoire selon la valeur d’échelle, avec une probabilité (p). Une valeur d’échelle de 0 transforme l’image en niveaux de gris et une échelle supérieure à 1 défini un contraste élevé. Une valeur d’échelle de 1 n’ajuste pas le contraste. Si la valeur d’échelle est une plage (a,b), l’augmentation attribue de manière uniforme une valeur entre a et b. La valeur par défaut est (0.75, 1.5); 1.0.
    • zoom : un zoom avant aléatoire est appliqué à l’image selon la valeur d’échelle. La valeur de zoom a le format scale(a,b); p. La valeur par défaut est (1.0, 1.2); 1.0 où p représente la probabilité. Un zoom avant n’est appliqué à l’image que si la valeur d’échelle est supérieure à 1. Si la valeur d’échelle est une plage (a,b), une valeur entre a et b est attribuée de manière uniforme.
    • crop : l’image est rognée de manière aléatoire. La valeur de rognage a le format size;p;row_pct;col_pctp représente la probabilité. La position est donnée par (col_pct, row_pct),, où col_pct et row_pct sont normalisés entre 0 et 1. Si col_pct ou row_pct est une plage (a,b), une valeur entre a et b est attribuée de manière uniforme. La valeur par défaut est chip_size;1.0; (0, 1); (0, 1) où 224 représente la taille de fragment par défaut.

    Taille de lot

    Nombre d’échantillons d’entraînement à traiter à la fois pour l’entraînement.

    Il est possible d’augmenter la taille de lot pour améliorer les performances de l’outil. Il convient toutefois de noter que le volume de mémoire utilisée est proportionnel à la taille de lot.

    Si la mémoire disponible du GPU est insuffisante pour la taille de lot définie, l’outil tente d’estimer et d’utiliser une taille de lot optimale. Si un message d’erreur s’affiche pour mémoire insuffisante, utilisez une taille de lot plus petite.

    Pourcentage de validation

    Pourcentage des échantillons d’entraînement utilisés pour valider le modèle. La valeur par défaut est 10.

    Taille de fragment

    Taille d’image utilisée pour entraîner le modèle. Les images sont rognées en fonction de la taille de fragment spécifiée. Si la taille d’image est inférieure à la valeur du paramètre, la taille d’image est utilisée. La valeur par défaut est de 224 pixels.

    Redimensionner à

    Redimensionne les fragments d’image. Une fois un fragment redimensionné, des blocs de pixels sont rognés à la taille de fragment et utilisés pour l’entraînement. Ce paramètre s’applique à la détection d’objets (PASCAL VOC), à la classification d’objets (tuiles étiquetées) et aux données de super-résolution uniquement.

    La valeur de redimensionnement correspond généralement à la moitié de la taille de fragment. Si la valeur de redimensionnement est inférieure à la taille de fragment, elle est utilisée pour créer les blocs de pixels pour l’entraînement.

    Vitesse d’apprentissage

    Vitesse à laquelle les informations existantes sont remplacées par les nouvelles informations acquises tout au long du processus d’entraînement. Si aucune valeur n’est spécifiée, la vitesse d’apprentissage optimale est extraite de la courbe d’apprentissage au cours du processus d’entraînement.

    Modèle de backbone

    Spécifie le réseau neuronal préconfiguré à utiliser comme architecture pour entraîner le nouveau modèle. Cette méthode est connue sous le nom de Transfer Learning.

    En outre, les réseaux neuronaux convolutifs pris en charge des modèles PyTorch Image Models (timm) peuvent être spécifiés en indiquant timm comme préfixe, par exemple timm:resnet31, timm:inception_v4, timm:efficientnet_b3, etc.

    Métrique surveillée

    Indique quelle métrique surveiller au point de contrôle et en cas d’arrêt prématuré.

    Arrêter lorsque le modèle ne s’améliore plus

    Indique si l’arrêt prématuré est implémenté.

    • Activé : l’arrêt prématuré est implémenté et l’entraînement du modèle s’arrête lorsque ce dernier cesse de s’améliorer, quelle que soit la valeur spécifiée pour le paramètre Nombre maximal d’époques. Il s’agit de l’option par défaut.
    • Désactivé : l’arrêt prématuré n’est pas implémenté et l’entraînement du modèle continue jusqu’à atteindre la valeur du paramètre Nombre maximal d’époques.

    Figer le modèle

    Spécifie si les couches backbone dans le modèle pré-entraîné sont figées afin que les pondérations et les biais conservent leur conception d’origine.

    • Activé : les couches backbone sont figées, et les pondérations et les biais prédéfinis ne sont pas altérés dans le paramètre Modèle backbone. Il s’agit de l’option par défaut.
    • Activé : les couches backbone ne sont pas figées, et les pondérations et les biais du paramètre Modèle backbone peuvent être altérés pour s’ajuster aux échantillons d’entraînement. Le temps de traitement est plus long, mais les résultats obtenus sont généralement meilleurs.

    Structure d’initialisation de la pondération

    Spécifie la structure dans laquelle les pondérations seront initialisées pour la couche.

    Pour qu’un modèle puisse être entraîné avec des données multispectrales, il doit contenir les divers types de canaux disponibles. Pour que cette condition soit remplie, il faut réinitialiser la première couche du modèle.

    • Random (Aléatoire) - Des pondérations aléatoires sont initialisées pour les canaux non RVB et les pondérations pré-entraînées sont conservées pour les canaux RVB. Il s’agit de l’option par défaut.
    • Red band (Canal rouge) - Les pondérations correspondant au canal rouge de la couche du modèle pré-entraîné sont clonées pour les canaux non RVB et les pondérations pré-entraînées sont conservées pour les canaux RVB.
    • All random (Tout aléatoire) - Des pondérations aléatoires sont initialisées pour les canaux RVB, ainsi que pour les canaux non RVB. Cette option s’applique uniquement à l’imagerie multispectrale.

    Ce paramètre s’applique uniquement lorsque des images multispectrales sont utilisées dans le modèle.

  3. Cliquez sur le bouton Next (Suivant) pour accéder à la page Result (Résultat).

Résultat

La page Result (Résultat) présente les détails essentiels du modèle entraîné afin de pouvoir les consulter. Elle permet également de comparer le modèle entraîné à d’autres modèles. Il faut bien comprendre les modèles de Deep Learning avant de pouvoir les utiliser pour l’inférence. Réviser un modèle donne une indication sur la façon dont il a été entraîné et sur ses performances. Il arrive souvent qu’il y ait plusieurs modèles à comparer.

ÉlémentDescription

Modèle

Utilisez le bouton Browse (Parcourir) Parcourir pour trouver le modèle à réviser. Tous les modèles associés seront ajoutés à la liste Model (Modèle). Vous pouvez changer de modèle et supprimer des modèles de la liste déroulante.

Type de modèle

Nom de l’architecture de modèle.

Backbone

Nom du réseau neuronal préconfiguré utilisé comme architecture pour le modèle d’entraînement.

Vitesse d’apprentissage

Vitesse d’apprentissage utilisée pour l’entraînement des réseaux neuronaux. Si vous n’avez pas spécifié cette valeur, elle est calculée par l’outil d’entraînement.

Perte d’entraînement et de validation

Cette section affiche un graphique qui montre les pertes d’entraînement et de validation lors de l’entraînement du modèle.

Perte d’entraînement et de validation

Analyse du modèle

Mesure ou nombre, selon l’architecture du modèle. Par exemple, les modèle de classification de pixels affichent les mesures suivantes pour chaque classe : précision, rappel et score f1. Les modèles de détection d’objets affichent le score de précision moyen.

Exemples de résultats

Affiche des exemples de paires référence de terrain/prévisions.

Exemples de paires référence de terrain/prévisions

Détails des époques

Tableau contenant des informations sur chaque époque, telles que la perte d’entraînement, la perte de validation, le temps et d’autres mesures.

Tableau Détails des époques

Rubriques connexes


Dans cette rubrique
  1. Prise en main
  2. Préparer
  3. Résultat