Reconnaissance d'entités nommées
Utilisez l'outil Reconnaissance d'entités nommées pour identifier les entités, telles que les individus, les lieux et les objets, dans le texte. L'outil exploite les fonctionnalités de reconnaissance d'entités nommées dans le package spaCy . Vous pouvez utiliser l'ensemble d'entités prédéfini ou vos propres entités personnalisées.
Alteryx Intelligence Suite requis
Cet outil fait partie de Alteryx Intelligence Suite . Intelligence Suite nécessite une licence séparée et un programme d'installation complémentaire pour Designer. Après avoir installé Designer, installez Intelligence Suite et commencez votre essai gratuit .
Prise en charge des langues
L'outil Reconnaissance d'entités nommées prend en charge l'anglais, le français, l'allemand, l'italien, le portugais et l'espagnol.
Composants de l'outil
L'outil Reconnaissance d'entités nommées possède 4 ancrages.
Ancrage d'entrée D : connectez les données de texte avec les entités que vous souhaitez identifier.
Ancrage d'entrée E (facultatif) : connectez les données avec les entités personnalisées que vous souhaitez identifier. Ces données doivent contenir les noms et les étiquettes d'entités personnalisées que vous souhaitez utiliser pour entraîner le modèle.
Ancrage de sortie D : permet de générer de nouvelles colonnes de données qui affichent des informations sur les entités de vos données.
Ancrage de sortie M : permet de générer l'objet modèle en aval pour une utilisation avec de nouvelles données. L'objet modèle est compatible avec l' outil Prédire .
Configuration d'un modèle par défaut
Configuration de l'outil
Faites glisser l'outil sur le canevas.
Connectez l'ancrage d'entrée D aux données de texte avec les entités que vous souhaitez identifier.
Sélectionnez la Langue des données de texte.
Sélectionnez la Colonne avec texte .
Exécutez le workflow.
Liste des entités en anglais par défaut
PERSON : personnes fictives et non fictives.
NORP : nationalité, religion ou groupe politique.
FAC : installations telles que les bâtiments, les aéroports, les autoroutes et les ponts.
ORG : organisations telles que les entreprises, les agences et les institutions.
GPE : entités géographiques telles que les pays, les villes et les États.
LOC : sites non-GPE tels que les chaînes de montagnes, les plans d'eau et les continents.
PRODUCT : produits tels que les véhicules et les aliments. Ne prend pas les services en compte.
EVENT : événements tels que les ouragans nommés, les guerres et les événements sportifs.
WORK_OF_ART : œuvres d'art telles que livres, chansons et films.
LAW : documents nommés appliqués en tant que lois.
LANGUAGE : langues nommées.
DATE : entité de date.
TIME : entité de temps, inférieure à un jour.
PERCENT : pourcentage, dont « % » et le mot « pourcentage ».
MONEY : valeur monétaire, comprend l'unité.
QUANTITY : mesures telles que la hauteur, le poids et la distance.
ORDINAL : entités ordinales telles que premier, deuxième et troisième.
CARDINAL : chiffres qui ne tombent pas sous une autre catégorie numérique.
Vous trouverez les listes d'entités par défaut pour les autres langues dans la documentation de spaCy.
Configuration d'un modèle personnalisé
Si vous souhaitez utiliser vos propres entités personnalisées pour entraîner le modèle, sélectionnez Entraîner avec de nouvelles entités . Votre contenu source doit contenir au moins 20 instances de chaque entité personnalisée. Connectez vos entités personnalisées à l'ancrage d'entrée E .
Format de liste d'entités personnalisées
Vous pouvez utiliser l'outil Saisie de texte pour transmettre vos propres entités personnalisées à l'ancrage d'entrée E . L'outil utilise votre liste d'entités pour former un nouveau modèle. Le format de la liste d'entités est le suivant, avec quelques exemples :
Entité | Étiquette |
---|---|
Riesling | RAISINS |
Sauvignon blanc | RAISINS |
Pinot noir | RAISINS |
Syrah | RAISINS |
Cabernet sauvignon | RAISINS |
Configuration de l'outil
Faites glisser l'outil sur le canevas.
Connectez l'ancrage d'entrée D aux données de texte avec les entités que vous souhaitez identifier.
Connectez l'ancrage d'entrée E à votre liste d'entités personnalisées.
Sélectionnez la Langue des données de texte connectées à l'ancrage d'entrée D .
Sélectionnez la Colonne avec du texte dans les données de texte connectées à l'ancrage d'entrée D .
Sélectionnez Entraîner avec de nouvelles entités .
Sélectionnez la Colonne avec des entités dans la liste d'entités personnalisées connectées à l'ancrage d'entrée E .
Sélectionnez la Colonne avec des étiquettes dans la liste d'entités personnalisées connectées à l'ancrage d'entrée E .
Sélectionnez la case si vous souhaitez que votre modèle soit Sensible à la casse .
(Facultatif) Configurez la section Entraîner le modèle . Pour plus de détails, reportez-vous à la section suivante.
Exécutez le workflow.
Entraîner le modèle
Une époque est un passage unique (avant et arrière) de l'intégralité des données d'un jeu d'entraînement via un réseau neuronal. Les époques sont différentes des itérations, même si elles y sont liées. Une itération est un passage unique de l'intégralité des données dans un lot d'un jeu d'entraînement.
L'augmentation du nombre d'époques permet au modèle d'apprendre plus longtemps auprès du jeu d'entraînement. Toutefois, cela augmente également la consommation de calculs.
Vous pouvez augmenter le nombre d'époques pour réduire le nombre d'erreurs dans le modèle. Toutefois, à un moment donné, la réduction du nombre d'erreurs ne compense plus l'augmentation de la consommation de calculs. Par ailleurs, une augmentation trop importante du nombre d'époques peut entraîner des problèmes de surajustement, tandis qu'une utilisation insuffisante des époques peut entraîner des problèmes de sous-ajustement.
Par défaut, l'outil utilise 10 époques.
L'arrêt anticipé indique à une méthode itérative de machine learning, comme le réseau neuronal convolutif utilisé dans l'outil Reconnaissance d'entité nommée, quand arrêter l'apprentissage. L'outil Reconnaissance d'entité nommée utilise F1 comme métrique pour l'arrêt anticipé.
L'arrêt anticipé est utile lorsque votre modèle rencontre des problèmes de surajustement. Un ajustement excessif se produit lorsque votre modèle apprend en mémorisant les réponses, plutôt que d'identifier les motifs sous-jacents dans vos données. Vous pouvez également utiliser l'arrêt anticipé pour empêcher l'algorithme de s'exécuter pendant des époques inutiles.
Utilisez l'arrêt anticipé si vous craignez que votre modèle puisse surajuster vos données ou que des époques supplémentaires n'améliorent pas votre modèle.
Par défaut, l'outil utilise l'arrêt anticipé.
Un lot est un sous-ensemble du jeu de données d'entraînement.
La diminution de la taille du lot vous permet d'échelonner la quantité de données qui passe par un réseau neuronal à tout moment. Cela vous permet d'entraîner les modèles en utilisant moins de mémoire que vous ne le feriez si vous transfériez l'intégralité des données en une seule fois via un réseau neuronal. Le regroupement par lot peut parfois accélérer l'entraînement. Toutefois, le fait de diviser vos données en lots peut également augmenter le nombre d'erreurs dans le modèle.
Séparez vos données en lots lorsque votre machine ne peut pas traiter l'intégralité des données en une seule fois, ou si vous souhaitez réduire le temps d'entraînement.
Par défaut, l'outil utilise une taille de lot de 32.
Sortie
L'ancrage de sortie D ajoute deux colonnes à la sortie :
entities : cette colonne contient une sortie JSON avec une liste d'étiquettes d'entités et de descriptions.
entity : l'entité trouvée par le modèle.
label : l'étiquette de l'entité.
character_index : l'index du premier caractère du mot dans le corps de texte. L'index commence à 0.
word_index : l'index du mot dans le corps de texte. L'index commence à 0.
entity_length : la longueur de caractère de l'entité.
entity_diagram : cette colonne contient votre texte avec des entités étiquetées et elle est visible avec l'outil Parcourir .
L'ancrage de sortie M contient un objet modèle. Vous pouvez enregistrer l'objet modèle et l'utiliser sur de nouvelles données à l'aide de l'outil Prédire.
Comment interpréter la sortie JSON
Pour transformer la sortie JSON en données tabulaires, utilisez une combinaison des outils Interpréter JSON , Texte en colonnes et Tableau croisé dynamique dans cet exemple de flux :
Passez la sortie de l'outil Reconnaissance d'entités nommées à l'entrée de l'outil Interpréter JSON.
Sélectionnez la colonne d'entités sous Champ JSON .
Sélectionnez Sortie des valeurs dans un seul champ de type Chaîne .
Passez la sortie de l'outil Interpréter JSON à l'entrée de Texte en colonnes.
Sélectionnez la colonne Nom JSON sous Colonne à fractionner et définissez les Délimiteurs sur un point ( . ).
Sélectionnez Fractionner en colonnes et définissez le Nombre de colonnes sur 3 .
Passez la sortie de l'outil Texte en colonnes à l'entrée de l'outil Tableau croisé dynamique.
Configuration de l'outil Tableau croisé dynamique :
Grouper les données en fonction de ces valeurs : sélectionnez le nom de colonne contenant vos données de texte d'origine et la deuxième colonne de nom JSON fractionnée (par défaut, JSON_Name2 ).
Modifier les en-têtes de colonne : sélectionnez la troisième colonne de nom JSON fractionnée (par défaut, JSON_Name3 ).
Valeurs des nouvelles colonnes : sélectionnez la JSON_ValueString .
Méthode d'agrégation des valeurs : sélectionnez Concaténer .
Exécutez votre workflow. La sortie de l'outil Tableau croisé dynamique contient désormais la forme tabulaire de la sortie de l'outil Reconnaissance d'entités nommées.
FAQ
L'algorithme donne la priorité à votre liste personnalisée.
Par défaut, non, l'outil Reconnaissance d'entités nommées ne peut pas reconnaître Michael Jordan et Air Jordan comme étant une seule et même personne. Toutefois, vous pouvez entraîner un nouveau modèle à le faire en transmettant une entité personnalisée et une liste d'étiquettes. Remarque : l'outil Reconnaissance d'entités nommées ne remplace pas la fonction Rechercher et remplacer. L'algorithme peut récupérer d'autres surnoms pour Michael Jordan en fonction des associations dans les données source.
Non, l'outil Reconnaissance d'entités nommées ne prend en charge que la langue spécifiée. Par exemple, si vous spécifiez l'anglais, l'outil Reconnaissance d'entités nommées recherche uniquement le texte anglais dans les données source. Si vos données source contiennent du texte dans d'autres langues prises en charge par l'outil Reconnaissance d'entités nommées (par exemple, du texte en français), vous pouvez créer un autre processus de reconnaissance d'entités nommées sur votre canevas pour le texte en français et joindre les résultats à la fin.