Étiquette | Explication | Type de données |
Dossier en entrée | Dossier contenant des données d’entraînement sous la forme de jeux de données standard pour les tâches de reconnaissance d’entités nommées. Les données d’entraînement doivent se trouver dans des fichiers .json ou .csv. Le format de fichier détermine le type de jeu de données de l’entrée. Les types de jeu de données suivants sont pris en charge :
| Folder |
Modèle en sortie | Emplacement du dossier en sortie qui stocke le modèle entraîné. | Folder |
Fichier de modèle pré-entraîné (Facultatif) | Modèle pré-entraîné qui est utilisé pour optimiser le nouveau modèle. L’entrée peut être un fichier de définition de modèle Esri (.emd) ou un fichier de paquetage d’apprentissage profond (.dlpk). Un modèle pré-entraîné avec des entités 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 |
Entité d’adresse (Facultatif) | Entité d’adresse qui sera traitée comme un emplacement. Au cours de l’inférence, de telles entités sont géocodées à l’aide du localisateur spécifié et une classe d’entités est générée par le processus d’extraction d’entités. Si aucun localisateur n’est fourni ou si le modèle entraîné n’extrait pas les entités d’adresse, une table contenant les entités extraites est générée à la place. | String |
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 5. | Long |
Backbone du modèle (Facultatif) | Spécifie le réseau neuronal préconfiguré à utiliser comme architecture pour entraîner le nouveau modèle.
| String |
Taille de lot (Facultatif) | Nombre d’échantillons d’entraînement qui seront traités en une fois. Ce paramètre ne s’applique pas aux modèles dont le backbone est spaCy. La valeur par défaut est de 2. 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. | Double |
Arguments du modèle (Facultatif) | Arguments supplémentaires pour l’initialisation du modèle, tels queseq_len pour la longueur de séquence maximale des données d’entraînement, qui seront pris en compte lors de l’entraînement du modèle. Reportez-vous aux arguments de mots-clés dans la documentation EntityRecognizer pour prendre connaissance de la liste des arguments de modèle pris en charge que vous pouvez utiliser. | Value Table |
Vitesse d’apprentissage (Facultatif) | Taille de l’intervalle indiquant dans quelle mesure les pondérations du modèle seront ajustées au cours du processus d’entraînement. Si aucune valeur n’est spécifiée, une vitesse d’apprentissage optimale est déduite automatiquement. | Double |
Pourcentage de 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’entraînement du modèle s’arrête lorsque ce dernier cesse de s’améliorer ou continue jusqu’à atteindre la valeur du paramètre Nombre maximal d’époques.
| Boolean |
Adapter le backbone du modèle pour l’entraînement (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.
| Boolean |
Synthèse
Entraîne un modèle de reconnaissance d’entités nommées pour extraire un ensemble prédéfini d’entités à partir d’un texte brut.
En savoir plus sur le fonctionnement de l’outil Reconnaissance d’entités
Utilisation
Cet outil requiert l’installation des structures de Deep Learning. Pour configurer votre machine afin d’utiliser des structures d’apprentissage profond dans AllSource, consultez la rubrique Installer les structures d’apprentissage profond pour ArcGIS.
Cet outil permet également d’optimiser un modèle entraîné existant.
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.
L’entrée de l’outil est un dossier contenant des fichiers .json ou .csv.
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 la FAQ sur le Deep Learning.
Paramètres
arcpy.geoai.TrainEntityRecognitionModel(in_folder, out_model, {pretrained_model_file}, {address_entity}, {max_epochs}, {model_backbone}, {batch_size}, {model_arguments}, {learning_rate}, {validation_percentage}, {stop_training}, {make_trainable})
Nom | Explication | Type de données |
in_folder | Dossier contenant des données d’entraînement sous la forme de jeux de données standard pour les tâches de reconnaissance d’entités nommées. Les données d’entraînement doivent se trouver dans des fichiers .json ou .csv. Le format de fichier détermine le type de jeu de données de l’entrée. Les types de jeu de données suivants sont pris en charge :
| Folder |
out_model | Emplacement du dossier en sortie qui stocke le modèle entraîné. | Folder |
pretrained_model_file (Facultatif) | Modèle pré-entraîné qui est utilisé pour optimiser le nouveau modèle. L’entrée peut être un fichier de définition de modèle Esri (.emd) ou un fichier de paquetage d’apprentissage profond (.dlpk). Un modèle pré-entraîné avec des entités 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 |
address_entity (Facultatif) | Entité d’adresse qui sera traitée comme un emplacement. Au cours de l’inférence, de telles entités sont géocodées à l’aide du localisateur spécifié et une classe d’entités est générée par le processus d’extraction d’entités. Si aucun localisateur n’est fourni ou si le modèle entraîné n’extrait pas les entités d’adresse, une table contenant les entités extraites est générée à la place. | String |
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 5. | Long |
model_backbone (Facultatif) | Spécifie le réseau neuronal préconfiguré à utiliser comme architecture pour entraîner le nouveau modèle.
| String |
batch_size (Facultatif) | Nombre d’échantillons d’entraînement qui seront traités en une fois. Ce paramètre ne s’applique pas aux modèles dont le backbone est spaCy. La valeur par défaut est de 2. 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. | Double |
model_arguments [model_arguments,...] (Facultatif) | Arguments supplémentaires pour l’initialisation du modèle, tels queseq_len pour la longueur de séquence maximale des données d’entraînement, qui seront pris en compte lors de l’entraînement du modèle. Reportez-vous aux arguments de mots-clés dans la documentation EntityRecognizer pour prendre connaissance de la liste des arguments de modèle pris en charge que vous pouvez utiliser. | Value Table |
learning_rate (Facultatif) | Taille de l’intervalle indiquant dans quelle mesure les pondérations du modèle seront ajustées au cours du processus d’entraînement. Si aucune valeur n’est spécifiée, une vitesse d’apprentissage optimale est déduite automatiquement. | Double |
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’entraînement du modèle s’arrête lorsque ce dernier cesse de s’améliorer ou continue jusqu’à atteindre la valeur du paramètre max_epochs.
| Boolean |
make_trainable (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.
| Boolean |
Exemple de code
Le script suivant pour la fenêtre Python illustre l’utilisation de la fonction TrainEntityRecognitionModel.
# Name: TrainEntityRecognizer.py
# Description: Train an Entity Recognition model to extract useful entities like "Address", "Date" from text.
#
# Requirements: ArcGIS Pro Advanced license
# Import system modules
import arcpy
import os
arcpy.env.workspace = "C:/textanalysisexamples/data"
dbpath = "C:/textanalysisexamples/Text_analysis_tools.gdb"
# Set local variables
in_folder = 'train_data'
out_folder = "test_bio_format"
# Run Train Entity Recognition Model
arcpy.geoai.TrainEntityRecognitionModel(in_folder, out_folder)
Environnements
Vous avez un commentaire à formuler concernant cette rubrique ?