Entraîner le modèle de Deep Learning (Image Analyst)

Disponible avec une licence Image Analyst.

Synthèse

Entraîne un modèle d’apprentissage profond à l’aide de la sortie de l’outil Export Training Data For Deep Learning (Exporter les données d’entraînement pour l’apprentissage profond).

Utilisation

  • Cet outil entraîne le modèle de Deep Learning à l’aide de structures de Deep Learning.

  • Pour configurer votre machine afin d’utiliser des structures d’apprentissage profond dans ArcGIS Pro, consultez la rubrique Installer les structures d’apprentissage profond pour ArcGIS.

  • Si vous comptez entraîner des modèles dans un environnement déconnecté, reportez-vouz à la rubrique Installation supplémentaire pour un environnement déconnecté pour plus d’informations.

  • Cet outil permet également d’optimiser un modèle entraîné existant. Par exemple, un modèle existant qui a été entraîné pour des voitures peut être adapté pour l’identification de camions.

  • Pour exécuter cet outil avec un processeur, définissez le paramètre d’environnement Type de processeur sur GPU. Si vous avez plusieurs processeurs, spécifiez plutôt le paramètre d’environnement ID de GPU.

  • Les données d’entraînement en entrée pour cet outil doivent inclure les dossiers d’images et d’étiquettes qui sont générés par l’outil Exporter les données d’entraînement pour Deep Learning.

  • Pour en savoir plus sur les exigences relatives à l’exécution de cet outil, ainsi que sur les problèmes que vous pouvez rencontrer, consultez les rubriques FAQ Apprentissage profond. .

  • Pour plus d’informations sur l’apprentissage profond, reportez-vous à la rubrique Apprentissage profond dans ArcGIS Pro.

Paramètres

ÉtiquetteExplicationType de données
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 Deep Learning.

Plusieurs dossiers en entrée sont pris en charge lorsque les conditions suivantes sont remplies :

  • Le format de métadonnées doit être de type tuiles classées, tuiles étiquetées, tuiles à plusieurs étiquettes, classes d’objets visuels PASCAL ou masques RCNN.
  • Toutes les données d’entraînement doivent avoir le même format de métadonnées.
  • Toutes les données d’entraînement doivent posséder le même nombre de bandes.
  • Toutes les données d’entraînement doivent avoir la même taille de tuile.

Folder
Modèle en sortie

Emplacement du dossier en sortie qui stocke le modèle entraîné.

Folder
Nombre maximal d’époques
(Facultatif)

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.

Long
Type de modèle
(Facultatif)

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

  • Détecteur de tir unique (détection des objets)La méthode SSD (Single Shot Detector) est utilisée pour entraîner le modèle. SSD est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Pascal Visual Object Classes.
  • U-Net (classification de pixels)La méthode U-Net est utilisée pour entraîner le modèle. U-Net est utilisé pour la classification des pixels.
  • Classificateur d’entités (classification des objets)La méthode du classificateur d’entités est utilisée pour entraîner le modèle. Ce type de modèle est utilisé pour la classification des images ou des objets.
  • Pyramid Scene Parsing Network (classification de pixels)La méthode PSPNET (Pyramid Scene Parsing Network) est utilisée pour entraîner le modèle. PSPNET est utilisé pour la classification des pixels.
  • RetinaNet (détection des objets)La méthode RetinaNet est utilisée pour entraîner le modèle. RetinaNet est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Pascal Visual Object Classes.
  • MaskRCNN (détection des objets)La méthode MaskRCNN est utilisée pour entraîner le modèle. MaskRCNN est utilisé pour la détection des objets. Cette méthode est utilisée pour la segmentation d’instances, qui est la délimitation précise des objets dans une image. Ce type de modèle peut servir pour détecter les emprises de bâtiments. Il utilise le format de métadonnées MaskRCNN pour les données d’entraînement en entrée. Les valeurs de classe pour les données d’entraînement en entrée doivent commencer à 1. Ce type de modèle peut uniquement être entraîné avec un GPU compatible CUDA.
  • YOLOv3 (détection des objets)La méthode YOLOv3 est utilisée pour entraîner le modèle. YOLOv3 est utilisé pour la détection des objets.
  • DeepLabV3 (classification de pixels)La méthode DeepLabV3 est utilisée pour entraîner le modèle. DeepLabV3 est utilisé pour la classification des pixels.
  • FasterRCNN (détection des objets)La méthode FasterRCNN est utilisée pour entraîner le modèle. FasterRCNN est utilisée pour la détection des objets.
  • Détecteur de segment BDCN (classification de pixel)L’architecture BDCN (Bi-Directional Cascade Network) est utilisée pour entraîner le modèle. Le détecteur des contours BDCN est utilisé pour la classification des pixels. Cette méthode est utile pour améliorer la détection des contours d’objets à différentes échelles.
  • Détecteur de segment HED (classification de pixel)L’architecture HED (Holistically-Nested Edge Detection) est utilisée pour entraîner le modèle. Le détecteur de contour HED est utilisé pour la classification des pixels. Cette méthode est utile pour améliorer la détection des contours et des limites d’objets.
  • Extracteur de route multitâche (classification de pixel)L’architecture de l’extracteur de route multitâche est utilisée pour entraîner le modèle. L’extracteur de route multitâche est utilisé pour la classification des pixels. Cette méthode est utile pour extraire des réseaux routiers de l’imagerie satellite.
  • ConnectNet (classification de pixel)L’architecture ConnectNet est utilisée pour entraîner le modèle. ConnectNet est utilisé pour la classification des pixels. Cette méthode est utile pour extraire des réseaux routiers de l’imagerie satellite.
  • Pix2Pix (conversion d’image)La méthode Pix2Pix est utilisée pour entraîner le modèle. Pix2Pix est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • CycleGAN (conversion d’image)La méthode CycleGAN est utilisée pour entraîner le modèle. CycleGAN est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Cette méthode est unique en ce sens que les images à entraîner n’ont pas besoin de se superposer. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées CycleGAN.
  • Super résolution (conversion d’image)La méthode de super-résolution est utilisée pour entraîner le modèle. La super-résolution est utilisée pour la conversion image à image. Cette méthode crée un objet de modèle qui augmente la résolution et améliore la qualité des images. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • Détecteur de changement (classification de pixels)La méthode de détection des changements est utilisée pour entraîner le modèle. Le détecteur de changement est utilisé pour la classification des pixels. Cette méthode crée un objet de modèle qui utilise deux images spatio-temporelles pour créer un raster classé du changement. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Tuiles classées.
  • Créateur de légende d’image (conversion d’images)La méthode de créateur de légende d’image est utilisée pour entraîner le modèle. Créateur de légende d’image est utilisé pour la conversion d’image en texte. Cette méthode crée un modèle qui génère des légendes textuelles pour une image.
  • SiamMask (suiveur d’objet)La méthode SiamMask est utilisée pour entraîner le modèle. SiamMask est utilisé pour la détection des objets dans les vidéos. Le modèle est entraîné à l’aide d’images de la vidéo et détecte les classes et zones de délimitation des objets dans cette image. Les données d’entraînement en entrée pour ce type de modèle utilise le format de métadonnées MaskRCNN.
  • MMDetection (détection des objets)La méthode MMDetection est utilisée pour entraîner le modèle. MMDetection est utilisé pour la détection des objets. Les formats de métadonnées pris en charge sont les rectangles PASCAL Visual Object Class et les rectangles KITTI.
  • MMSegmentation (classification de pixels)La méthode MMSegmentation est utilisée pour entraîner le modèle. MMDetection est utilisé pour la classification des pixels. Le format de métadonnées pris en charge est Tuiles classées.
  • Deep Sort (suiveur d’objet)La méthode Deep Sort est utilisée pour entraîner le modèle. Deep Sort est utilisé pour la détection des objets dans les vidéos. Le modèle est entraîné à l’aide d’images de la vidéo et détecte les classes et zones de délimitation des objets dans cette image. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Imagenet. Là où Siam Mask est utile lors du suivi d’un objet, Deep Sort est utile pour entraîner un modèle à suivre plusieurs objets.
  • Pix2PixHD (conversion d’images)La méthode Pix2PixHD est utilisée pour entraîner le modèle. Pix2PixHD est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • MaX-DeepLab (segmentation panoptique)La méthode MaX-DeepLab est utilisée pour entraîner le modèle. MaX-DeepLab est utilisé pour la segmentation panoptique. Cette méthode crée un objet de modèle qui génère des images et des entités. Les données d’entraînement en entrée pour ce type de modèle utilise le format de métadonnées Panoptique.
  • DETReg (détection d’objets)La méthode DETReg est utilisée pour entraîner le modèle. DETReg est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent les classes d’objets visuels Pascal. Ce type de modèle sollicite beaucoup le GPU ; son exécution requiert un GPU dédié avec au moins 16 Go de mémoire.
String
Taille de lot
(Facultatif)

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 un message d’erreur s’affiche pour mémoire insuffisante, utilisez une taille de lot plus petite.

Long
Arguments du modèle
(Facultatif)

Les arguments de la fonction sont définis dans la classe de fonction raster Python. C’est là que vous répertoriez les paramètres d’apprentissage profond supplémentaires et les arguments des expériences et améliorations, tels qu’un seuil de confiance pour l’ajustement de la sensibilité. Les noms des arguments sont alimentés lors de la lecture du module Python.

Lorsque vous sélectionnez Détecteur de tir unique (détection des objets) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • grids : nombre de grilles selon lequel l’image est divisée pour le traitement. Si vous définissez cet argument sur 4, l’image est divisée en 4 x 4 ou 16 cellules de grille. Si aucune valeur n’est spécifiée, la valeur de grille optimale est calculée en fonction de l’imagerie en entrée.
  • zooms : nombre de niveaux de zoom selon lequel chaque cellule de grille est réduite ou agrandie. Si vous définissez cet argument sur 1, toutes les cellules de grille restent à la même taille ou au même niveau de zoom. Un niveau de zoom égal à 2 signifie que toutes les cellules de grille deviennent deux fois plus grandes (agrandies à 100 pour cent). Si vous fournissez une liste de niveaux de zoom, toutes les cellules de grille sont mises à l’échelle avec tous les nombres de la liste. La valeur par défaut est 1,0.
  • ratios : liste des proportions à utiliser pour les zones d’ancrage. Dans le domaine de la détection d’objet, une zone d’ancrage représente la localisation, la forme et la taille idéales de l’objet qui fait l’objet d’une prédiction. Si vous définissez cet argument sur [1,0, 1,0], [1,0, 0,5], la zone d’ancrage est un carré (1:1) ou un rectangle dans lequel le côté horizontal fait la moitié de la taille du côté vertical (1:0,5). La valeur par défaut est [1,0, 1,0].
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et average_precision. La métrique par défaut est valid_loss.

Lorsque vous choisissez un modèle de classification des pixels tel que Pyramid Scene Parsing Network (classification de pixels), U-Net (classification de pixels) ou DeepLabv3 (classification de pixels) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • use_net : indique si le décodeur U-Net est utilisé pour récupérer les données une fois le regroupement pyramidal opéré. La valeur par défaut est Vrai. Cet argument est propre au modèle Pyramid Scene Parsing Network.
  • pyramid_sizes : nombre et taille des couches de convolution à appliquer aux différentes sous-régions. La valeur par défaut est [1, 2 , 3, 6]. Cet argument est propre au modèle Pyramid Scene Parsing Network.
  • mixup : indique si l’augmentation MixUp et la perte MixUp sont utilisées. La valeur par défaut est Faux.
  • class_balancing : indique si la perte d’entropie croisée inverse est équilibrée avec la fréquence des pixels par classe. La valeur par défaut est Faux.
  • focal_loss : indique si la perte focale est utilisée. La valeur par défaut est Faux.
  • ignore_classes : contient la liste des valeurs de classe sur lesquelles le modèle n’encourt pas de perte.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et accuracy. La métrique par défaut est valid_loss.

Lorsque vous sélectionnez RetinaNet (détection des objets) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • scales : nombre de niveaux d’échelle selon lequel chaque cellule est réduite ou agrandie. La valeur par défaut est [1, 0,8, 0,63].
  • ratios : proportions de la zone d’ancrage. La valeur par défaut est 0,5, 1, 2.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et average_precision. La métrique par défaut est valid_loss.

Lorsque vous sélectionnez Extracteur de route multitâche (classification de pixels) ou ConnectNet (classification de pixels) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • gaussian_thresh : définit le seuil gaussien, qui configure la largeur de route requise. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 0,76.
  • orient_bin_size : définit la taille de groupe pour les angles d’orientation. La valeur par défaut est 20.
  • orient_theta : définit la largeur du masque d’orientation. La valeur par défaut est 8.
  • mtl_model : définit le type d’architecture à utiliser pour créer le modèle. Les choix valides sont linknet ou hourglass pour les architectures neuronales basées respectivement sur linknet ou sur hourglass. La valeur par défaut est hourglass.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, accuracy, miou et dice. La métrique par défaut est valid_loss.

Lorsque vous sélectionnez Créateur de légende d’image (conversion d’image) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • decode_params : dictionnaire qui contrôle le mode de fonctionnement du créateur de légende d’image. La valeur par défaut est {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}.
  • chip_size : définit la taille d’image pour entraîner le modèle. Les images sont rognées selon la taille de fragment spécifiée. Si la taille de l’image est inférieure à la taille du fragment, la taille de l’image est utilisée. La taille par défaut est 224 pixels.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, accuracy, corpus_bleu et multi_label_fbeta. La métrique par défaut est valid_loss.
L’argument decode_params se compose des six paramètres suivants :
  • embed_size : définit la taille d’intégration. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • hidden_size : définit la taille de la couche masquée. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • attention_size : définit la taille de la couche d’attention intermédiaire. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • teacher_forcing : définit la probabilité de forçage des enseignants. Le forçage des enseignants est une stratégie destinée à entraîner les réseaux neuronaux récurrents. Il utilise en entrée la sortie du modèle d’un intervalle temporel précédent au lieu de la sortie précédente, au cours de la rétro-propagation. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 1.
  • dropout : définit la probabilité d’abandon. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 0,1.
  • pretrained_emb : définit l’indicateur d’intégration pré-entraînée. Si la valeur est Vrai, il utilise l’intégration de texte rapide. Si la valeur est Faux, il n’utilise pas l’intégration de texte pré-entraînée. La valeur par défaut est Faux.

Lorsque vous sélectionnez Détecteur des changements (classification de pixels) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • attention_type : indique le type de module. Les modules disponibles sont PAM (Pyramid Attention Module) ou BAM (Basic Attention Module). La valeur par défaut est PAM.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, precision, recall et f1. La métrique par défaut est valid_loss.

Lorsque vous sélectionnez MMDetection (détection des objets) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • model : modèle backbone utilisé pour entraîner le modèle. Les choix disponibles sont les suivants : atss, carafe, cascade_rcnn, cascade_rpn, dcn, detectors, double_heads, dynamic_rcnn, empirical_attention, fcos, foveabox, fsaf, ghm, hrnet, libra_rcnn, nas_fcos, pafpn, pisa, regnet, reppoints, res2net, sabl et vfnet. La valeur par défaut est cascade_rcnn.
  • model_weight : détermine l’utilisation ou non des pondérations du modèle pré-entraîné. Par défaut, cette propriété est définie sur faux. La valeur peut également être un chemin d’accès à un fichier de configuration contenant les pondérations d’un modèle, dans le référentiel MMDetection.

Lorsque vous sélectionnez MMSegmentation (classification de pixels) comme valeur du paramètre Type de modèle, le paramètre Arguments du modèle est renseigné avec les arguments suivants :

  • model : modèle backbone utilisé pour entraîner le modèle. Les choix disponibles sont les suivants : ann, apcnet, ccnet, cgnet, danet, deeplabv3, deeplabv3plus, dmnet, dnlnet, emanet, encnet, fastscnn, fcn, gcnet, hrnet, mobilenet_v2, mobilenet_v3, nonlocal_net, ocrnet, ocrnet_base, pointrend, psanet, pspnet, resnest, sem_fpn, unet et upernet. La valeur par défaut est deeplabv3.
  • model_weight : détermine l’utilisation ou non des pondérations du modèle pré-entraîné. Par défaut, cette propriété est définie sur faux. La valeur peut également être un chemin d’accès à un fichier de configuration contenant les pondérations d’un modèle, dans le référentiel MMSegmentation.

Tous les types de modèle prennent en charge l’argument chip_size, qui est la taille du fragment d’image des échantillons d’entraînement. La taille du fragment d’image est extraite du fichier .emd situé dans le dossier spécifié dans le paramètre Données d’entraînement en entrée.

Value Table
Vitesse d’apprentissage
(Facultatif)

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.

Double
Modèle backbone
(Facultatif)

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.

Par ailleurs, les réseaux neuronaux convolutifs pris en charge des modèles d’image PyTorch (timm) peuvent être spécifiés à l’aide du préfixe timm:. Par exemple, timm:resnet31 , timm:inception_v4 , timm:efficientnet_b3, etc.

  • DenseNet-121Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 121 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DenseNet-161Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 161 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DenseNet-169Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 169 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DenseNet-201Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 201 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • MobileNet version 2Ce modèle préconfiguré est entraîné dans la base de données Imagenet, a une profondeur de 54 couches et est destiné à l’informatique en périphérie de réseau (Edge Computing) car il utilise moins de mémoire.
  • ResNet-18Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 18 couches.
  • ResNet-34Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 34 couches. Il s’agit de l’option par défaut.
  • ResNet-50Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 50 couches.
  • ResNet-101Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 101 couches.
  • ResNet-152Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 152 couches.
  • VGG-11Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 11 couches.
  • VGG-11 avec normalisation par lotsCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 11 couches.
  • VGG-13Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 13 couches.
  • VGG-13 avec normalisation par lotsCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 13 couches.
  • VGG-16Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 16 couches.
  • VGG-16 avec normalisation par lotsCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 16 couches.
  • VGG-19Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 19 couches.
  • VGG-19 avec normalisation par lotsCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 19 couches.
  • DarkNet-53Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 53 couches.
  • Reid_v1Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui est utilisé pour le suivi d’objets.
  • Reid_v2Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui est utilisé pour le suivi d’objets.
String
Modèle pré-entraîné
(Facultatif)

Modèle pré-entraîné qui est utilisé pour optimiser le nouveau modèle. L’entrée est un fichier de définition du modèle Esri (.emd) ou un fichier de paquetage de 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.

File
% validation
(Facultatif)

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

Double
Arrêter lorsque le modèle ne s’améliore plus
(Facultatif)

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.
Boolean
Figer le modèle
(Facultatif)

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.

Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Modèle en sortie

Fichier du modèle entraîné en sortie.

File

TrainDeepLearningModel(in_folder, out_folder, {max_epochs}, {model_type}, {batch_size}, {arguments}, {learning_rate}, {backbone_model}, {pretrained_model}, {validation_percentage}, {stop_training}, {freeze})
NomExplicationType de données
in_folder
[in_folder,...]

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 Deep Learning.

Plusieurs dossiers en entrée sont pris en charge lorsque les conditions suivantes sont remplies :

  • Le format de métadonnées doit être de type tuiles classées, tuiles étiquetées, tuiles à plusieurs étiquettes, classes d’objets visuels PASCAL ou masques RCNN.
  • Toutes les données d’entraînement doivent avoir le même format de métadonnées.
  • Toutes les données d’entraînement doivent posséder le même nombre de bandes.
  • Toutes les données d’entraînement doivent avoir la même taille de tuile.

Folder
out_folder

Emplacement du dossier en sortie qui stocke le modèle entraîné.

Folder
max_epochs
(Facultatif)

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.

Long
model_type
(Facultatif)

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

  • SSDLa méthode SSD (Single Shot Detector) est utilisée pour entraîner le modèle. SSD est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Pascal Visual Object Classes.
  • UNETLa méthode U-Net est utilisée pour entraîner le modèle. U-Net est utilisé pour la classification des pixels.
  • FEATURE_CLASSIFIERLa méthode du classificateur d’entités est utilisée pour entraîner le modèle. Ce type de modèle est utilisé pour la classification des images ou des objets.
  • PSPNETLa méthode PSPNET (Pyramid Scene Parsing Network) est utilisée pour entraîner le modèle. PSPNET est utilisé pour la classification des pixels.
  • RETINANETLa méthode RetinaNet est utilisée pour entraîner le modèle. RetinaNet est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Pascal Visual Object Classes.
  • MASKRCNNLa méthode MaskRCNN est utilisée pour entraîner le modèle. MaskRCNN est utilisé pour la détection des objets. Cette méthode est utilisée pour la segmentation d’instances, qui est la délimitation précise des objets dans une image. Ce type de modèle peut servir pour détecter les emprises de bâtiments. Il utilise le format de métadonnées MaskRCNN pour les données d’entraînement en entrée. Les valeurs de classe pour les données d’entraînement en entrée doivent commencer à 1. Ce type de modèle peut uniquement être entraîné avec un GPU compatible CUDA.
  • YOLOV3La méthode YOLOv3 est utilisée pour entraîner le modèle. YOLOv3 est utilisé pour la détection des objets.
  • DEEPLABLa méthode DeepLabV3 est utilisée pour entraîner le modèle. DeepLabV3 est utilisé pour la classification des pixels.
  • FASTERRCNNLa méthode FasterRCNN est utilisée pour entraîner le modèle. FasterRCNN est utilisée pour la détection des objets.
  • BDCN_EDGEDETECTORL’architecture BDCN (Bi-Directional Cascade Network) est utilisée pour entraîner le modèle. Le détecteur des contours BDCN est utilisé pour la classification des pixels. Cette méthode est utile pour améliorer la détection des contours d’objets à différentes échelles.
  • HED_EDGEDETECTORL’architecture HED (Holistically-Nested Edge Detection) est utilisée pour entraîner le modèle. Le détecteur de contour HED est utilisé pour la classification des pixels. Cette méthode est utile pour améliorer la détection des contours et des limites d’objets.
  • MULTITASK_ROADEXTRACTORL’architecture de l’extracteur de route multitâche est utilisée pour entraîner le modèle. L’extracteur de route multitâche est utilisé pour la classification des pixels. Cette méthode est utile pour extraire des réseaux routiers de l’imagerie satellite.
  • CONNECTNETL’architecture ConnectNet est utilisée pour entraîner le modèle. ConnectNet est utilisé pour la classification des pixels. Cette méthode est utile pour extraire des réseaux routiers de l’imagerie satellite.
  • PIX2PIXLa méthode Pix2Pix est utilisée pour entraîner le modèle. Pix2Pix est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • CYCLEGANLa méthode CycleGAN est utilisée pour entraîner le modèle. CycleGAN est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Cette méthode est unique en ce sens que les images à entraîner n’ont pas besoin de se superposer. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées CycleGAN.
  • SUPERRESOLUTIONLa méthode de super-résolution est utilisée pour entraîner le modèle. La super-résolution est utilisée pour la conversion image à image. Cette méthode crée un objet de modèle qui augmente la résolution et améliore la qualité des images. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • CHANGEDETECTORLa méthode de détection des changements est utilisée pour entraîner le modèle. Le détecteur de changement est utilisé pour la classification des pixels. Cette méthode crée un objet de modèle qui utilise deux images spatio-temporelles pour créer un raster classé du changement. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Tuiles classées.
  • IMAGECAPTIONERLa méthode de créateur de légende d’image est utilisée pour entraîner le modèle. Créateur de légende d’image est utilisé pour la conversion d’image en texte. Cette méthode crée un modèle qui génère des légendes textuelles pour une image.
  • SIAMMASKLa méthode SiamMask est utilisée pour entraîner le modèle. SiamMask est utilisé pour la détection des objets dans les vidéos. Le modèle est entraîné à l’aide d’images de la vidéo et détecte les classes et zones de délimitation des objets dans cette image. Les données d’entraînement en entrée pour ce type de modèle utilise le format de métadonnées MaskRCNN.
  • MMDETECTIONLa méthode MMDetection est utilisée pour entraîner le modèle. MMDetection est utilisé pour la détection des objets. Les formats de métadonnées pris en charge sont les rectangles PASCAL Visual Object Class et les rectangles KITTI.
  • MMSEGMENTATIONLa méthode MMSegmentation est utilisée pour entraîner le modèle. MMDetection est utilisé pour la classification des pixels. Le format de métadonnées pris en charge est Tuiles classées.
  • DEEPSORTLa méthode Deep Sort est utilisée pour entraîner le modèle. Deep Sort est utilisé pour la détection des objets dans les vidéos. Le modèle est entraîné à l’aide d’images de la vidéo et détecte les classes et zones de délimitation des objets dans cette image. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Imagenet. Là où Siam Mask est utile lors du suivi d’un objet, Deep Sort est utile pour entraîner un modèle à suivre plusieurs objets.
  • PIX2PIXHDLa méthode Pix2PixHD est utilisée pour entraîner le modèle. Pix2PixHD est utilisé pour la conversion image à image. Cette méthode crée un objet de modèle qui génère des images d’un type à un autre. Les données d’entraînement en entrée pour ce type de modèle utilisent le format de métadonnées Exporter les tuiles.
  • MAXDEEPLABLa méthode MaX-DeepLab est utilisée pour entraîner le modèle. MaX-DeepLab est utilisé pour la segmentation panoptique. Cette méthode crée un objet de modèle qui génère des images et des entités. Les données d’entraînement en entrée pour ce type de modèle utilise le format de métadonnées Panoptique.
  • DETREGLa méthode DETReg est utilisée pour entraîner le modèle. DETReg est utilisé pour la détection des objets. Les données d’entraînement en entrée pour ce type de modèle utilisent les classes d’objets visuels Pascal. Ce type de modèle sollicite beaucoup le GPU ; son exécution requiert un GPU dédié avec au moins 16 Go de mémoire.
String
batch_size
(Facultatif)

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 un message d’erreur s’affiche pour mémoire insuffisante, utilisez une taille de lot plus petite.

Long
arguments
[arguments,...]
(Facultatif)

Les arguments de la fonction sont définis dans la classe de fonction raster Python. C’est là que vous répertoriez les paramètres d’apprentissage profond supplémentaires et les arguments des expériences et améliorations, tels qu’un seuil de confiance pour l’ajustement de la sensibilité. Les noms des arguments sont alimentés lors de la lecture du module Python.

Lorsque vous sélectionnez SSD comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • grids : nombre de grilles selon lequel l’image est divisée pour le traitement. Si vous définissez cet argument sur 4, l’image est divisée en 4 x 4 ou 16 cellules de grille. Si aucune valeur n’est spécifiée, la valeur de grille optimale est calculée en fonction de l’imagerie en entrée.
  • zooms : nombre de niveaux de zoom selon lequel chaque cellule de grille est réduite ou agrandie. Si vous définissez cet argument sur 1, toutes les cellules de grille restent à la même taille ou au même niveau de zoom. Un niveau de zoom égal à 2 signifie que toutes les cellules de grille deviennent deux fois plus grandes (agrandies à 100 pour cent). Si vous fournissez une liste de niveaux de zoom, toutes les cellules de grille sont mises à l’échelle avec tous les nombres de la liste. La valeur par défaut est 1,0.
  • ratios : liste des proportions à utiliser pour les zones d’ancrage. Dans le domaine de la détection d’objet, une zone d’ancrage représente la localisation, la forme et la taille idéales de l’objet qui fait l’objet d’une prédiction. Si vous définissez cet argument sur [1,0, 1,0], [1,0, 0,5], la zone d’ancrage est un carré (1:1) ou un rectangle dans lequel le côté horizontal fait la moitié de la taille du côté vertical (1:0,5). La valeur par défaut est [1,0, 1,0].
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et average_precision. La valeur par défaut est valid_loss.

Lorsque vous choisissez un modèle de classification des pixels tel que PSPNET, UNET ou DEEPLAB comme valeur du paramètre model_type, les arguments suivants sont renseignés pour le paramètre arguments :

  • USE_UNET : le décodeur U-Net est utilisé pour récupérer les données une fois le regroupement pyramidal opéré. La valeur par défaut est True. Cet argument est propre au modèle PSPNET.
  • PYRAMID_SIZES : nombre et taille des couches de convolution à appliquer aux différentes sous-régions. La valeur par défaut est [1, 2 , 3, 6]. Cet argument est propre au modèle PSPNET.
  • MIXUP : indique si l’augmentation MixUp et la perte MixUp sont utilisées. La valeur par défaut est False.
  • CLASS_BALANCING : indique si la perte d’entropie croisée inverse est équilibrée avec la fréquence des pixels par classe. La valeur par défaut est False.
  • FOCAL_LOSS : indique si la perte focale est utilisée. La valeur par défaut est False.
  • IGNORE_CLASSES : contient la liste des valeurs de classe sur lesquelles le modèle n’encourt pas de perte.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et accuracy. La valeur par défaut est valid_loss.

Lorsque vous sélectionnez RETINANET comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • SCALES : nombre de niveaux d’échelle selon lequel chaque cellule est réduite ou agrandie. La valeur par défaut est [1, 0,8, 0,63].
  • RATIOS : proportions de la zone d’ancrage. La valeur par défaut est [0,5, 1, 2].
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss et average_precision. La valeur par défaut est valid_loss.

Lorsque vous sélectionnez MULTITASK_ROADEXTRACTOR ou CONNECTNET comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • gaussian_thresh : définit le seuil gaussien, qui configure la largeur de route requise. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 0,76.
  • orient_bin_size : définit la taille de groupe pour les angles d’orientation. La valeur par défaut est 20.
  • orient_theta : définit la largeur du masque d’orientation. La valeur par défaut est 8.
  • mtl_model : définit le type d’architecture à utiliser pour créer le modèle. Les choix valides sont linknet ou hourglass pour les architectures neuronales basées sur linknet ou sur hourglass, respectivement. La valeur par défaut est hourglass.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, accuracy, miou et dice. La valeur par défaut est valid_loss.

Lorsque vous sélectionnez IMAGECAPTIONER comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • decode_params : dictionnaire qui contrôle le mode de fonctionnement du créateur de légende d’image. La valeur par défaut est {'embed_size':100, 'hidden_size':100, 'attention_size':100, 'teacher_forcing':1, 'dropout':0.1, 'pretrained_emb':False}.
  • chip_size : définit la taille de l’image pour entraîner le modèle. Les images sont rognées selon la taille de fragment spécifiée. Si la taille de l’image est inférieure à la taille du fragment, la taille de l’image est utilisée. La taille par défaut est 224 pixels.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, accuracy, corpus_bleu et multi_label_fbeta. La valeur par défaut est valid_loss.
L’argument decode_params se compose des six paramètres suivants :
  • embed_size : définit la taille d’intégration. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • hidden_size : définit la taille de la couche masquée. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • attention_size : définit la taille de la couche d’attention intermédiaire. La valeur par défaut est de 100 couches dans le réseau neuronal.
  • teacher_forcing : définit la probabilité de forçage des enseignants. Le forçage des enseignants est une stratégie destinée à entraîner les réseaux neuronaux récurrents. Il utilise en entrée la sortie du modèle d’un intervalle temporel précédent au lieu de la sortie précédente, au cours de la rétro-propagation. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 1.
  • dropout : définit la probabilité d’abandon. La plage valide est comprise entre 0,0 et 1,0. La valeur par défaut est 0,1.
  • pretrained_emb : définit l’indicateur d’intégration pré-entraînée. Si la valeur est Vrai, il utilise l’intégration de texte rapide. Si la valeur est Faux, il n’utilise pas l’intégration de texte pré-entraînée. La valeur par défaut est Faux.

Lorsque vous sélectionnez CHANGEDETECTOR comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • attention_type : indique le type de module. Les modules disponibles sont PAM (Pyramid Attention Module) ou BAM (Basic Attention Module). La valeur par défaut est PAM.
  • monitor : indique la métrique à surveiller lors de la création des points de contrôle et de l’arrêt prématuré. Les métriques disponibles sont valid_loss, precision, recall et f1. La valeur par défaut est valid_loss.

Lorsque vous sélectionnez MMDETECTION comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • model : modèle backbone utilisé pour entraîner le modèle. Les choix disponibles sont les suivants : atss, carafe, cascade_rcnn, cascade_rpn, dcn, detectors, double_heads, dynamic_rcnn, empirical_attention, fcos, foveabox, fsaf, ghm, hrnet, libra_rcnn, nas_fcos, pafpn, pisa, regnet, reppoints, res2net, sabl et vfnet. La valeur par défaut est cascade_rcnn.
  • model_weight : détermine l’utilisation ou non des pondérations du modèle pré-entraîné. La valeur par défaut est false. La valeur peut également être un chemin d’accès à un fichier de configuration contenant les pondérations d’un modèle, dans le référentiel MMDetection.

Lorsque vous sélectionnez MMSegmentation comme valeur du paramètre model_type, le paramètre arguments est renseigné avec les arguments suivants :

  • model : modèle backbone utilisé pour entraîner le modèle. Les choix disponibles sont ann, apcnet, ccnet, cgnet, danet, deeplabv3, deeplabv3plus, dmnet, dnlnet, emanet, encnet, fastscnn, fcn, gcnet, hrnet, mobilenet_v2, mobilenet_v3, nonlocal_net, ocrnet, ocrnet_base, pointrend, psanet, pspnet, resnest, sem_fpn, unet et upernet. La valeur par défaut est deeplabv3.
  • model_weight : détermine l’utilisation ou non des pondérations du modèle pré-entraîné. La valeur par défaut est false. La valeur peut également être un chemin d’accès à un fichier de configuration contenant les pondérations d’un modèle, dans le référentiel MMSegmentation.

Tous les types de modèle prennent en charge l’argument chip_size, qui est la taille de fragment des tuiles dans les échantillons d’entraînement. La taille du fragment d’image est extraite du fichier .emd situé dans le dossier spécifié dans le paramètre in_folder.

Value Table
learning_rate
(Facultatif)

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.

Double
backbone_model
(Facultatif)

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.

  • DENSENET121Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 121 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DENSENET161Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 161 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DENSENET169Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 169 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • DENSENET201Le modèle préconfiguré est un réseau dense entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 201 couches. Contrairement à RESNET, qui combine la couche à l’aide de l’addition, DenseNet combine les couches à l’aide de la concaténation.
  • MOBILENET_V2Ce modèle préconfiguré est entraîné dans la base de données Imagenet, a une profondeur de 54 couches et est destiné à l’informatique en périphérie de réseau (Edge Computing) car il utilise moins de mémoire.
  • RESNET18Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 18 couches.
  • RESNET34Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 34 couches. Il s’agit de l’option par défaut.
  • RESNET50Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 50 couches.
  • RESNET101Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 101 couches.
  • RESNET152Le modèle préconfiguré est un réseau résiduel entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 152 couches.
  • VGG11Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 11 couches.
  • VGG11_BNCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 11 couches.
  • VGG13Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 13 couches.
  • VGG13_BNCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 13 couches.
  • VGG16Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 16 couches.
  • VGG16_BNCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 16 couches.
  • VGG19Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images en vue de classer des images dans 1 000 catégories d’objets et a une profondeur de 19 couches.
  • VGG19_BNCe modèle préconfiguré repose sur le réseau VGG mais avec une normalisation par lots, ce qui signifie que chaque couche du réseau est normalisée. Il est entraîné sur le jeu de données Imagenet et comporte 19 couches.
  • DARKNET53Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui contient plus d’un million d’images et a une profondeur de 53 couches.
  • REID_V1Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui est utilisé pour le suivi d’objets.
  • REID_V2Le modèle préconfiguré est un réseau neuronal convolutif entraîné sur le jeu de données Imagenet qui est utilisé pour le suivi d’objets.

Par ailleurs, les réseaux neuronaux convolutifs pris en charge des modèles d’image PyTorch (timm) peuvent être spécifiés à l’aide du préfixe timm:. Par exemple, timm:resnet31 , timm:inception_v4 , timm:efficientnet_b3, etc.

String
pretrained_model
(Facultatif)

Modèle pré-entraîné qui est utilisé pour optimiser le nouveau modèle. L’entrée est un fichier de définition du modèle Esri (.emd) ou un fichier de paquetage de 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.

File
validation_percentage
(Facultatif)

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

Double
stop_training
(Facultatif)

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

  • STOP_TRAININGL’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 max_epochs. Il s’agit de l’option par défaut.
  • CONTINUE_TRAININGL’arrêt prématuré n’est pas implémenté et l’entraînement du modèle continue jusqu’à atteindre la valeur du paramètre max_epochs.
Boolean
freeze
(Facultatif)

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.

  • FREEZE_MODELLes 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 backbone_model. Il s’agit de l’option par défaut.
  • UNFREEZE_MODELLes couches backbone ne sont pas figées, et les pondérations et les biais du paramètre backbone_model 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.
Boolean

Sortie obtenue

NomExplicationType de données
out_model_file

Fichier du modèle entraîné en sortie.

File

Exemple de code

Exemple 1 d’utilisation de la fonction TrainDeepLearningModel (fenêtre Python)

Cet exemple entraîne un modèle de classification d’arbres avec la méthode U-Net.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
# Execute 
TrainDeepLearningModel(r"C:\DeepLearning\TrainingData\Roads_FC", 
     r"C:\DeepLearning\Models\Fire", 40, "UNET", 16, "# #", None, 
     "RESNET34", None, 10, "STOP_TRAINING", "FREEZE_MODEL")
Exemple 2 d’utilisation de la fonction TrainDeepLearningModel (script autonome)

Cet exemple entraîne un modèle de détection d’objets avec la méthode SSD.

# Import system modules  
import arcpy  
from arcpy.ia import *  
 
# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 
 
#Define input parameters
in_folder = "C:\\DeepLearning\\TrainingData\\Cars" 
out_folder = "C:\\Models\\Cars"
max_epochs = 100
model_type = "SSD"
batch_size = 2
arg = "grids '[4, 2, 1]';zooms '[0.7, 1.0, 1.3]';ratios '[[1, 1], [1, 0.5], [0.5, 1]]'"
learning_rate = 0.003
backbone_model = "RESNET34" 
pretrained_model = "C:\\Models\\Pretrained\\vehicles.emd"
validation_percent = 10
stop_training = "STOP_TRAINING"
freeze = "FREEZE_MODEL"


# Execute
TrainDeepLearningModel(in_folder, out_folder, max_epochs, model_type, 
     batch_size, arg, learning_rate, backbone_model, pretrained_model, 
     validation_percent, stop_training, freeze)

Informations de licence

  • Basic: Nécessite Image Analyst
  • Standard: Nécessite Image Analyst
  • Advanced: Nécessite Image Analyst

Rubriques connexes