IBM Cloud Docs
Définir des entités personnalisées

Définir des entités personnalisées

Apprenez à Discovery sur les termes qui sont importants pour votre entreprise en créant un extracteur d'entité.

Un extracteur d'entité est un modèle d'apprentissage automatique qui reconnaît et balise les termes que vous indiquez comme étant importants pour votre besoin métier ou votre cas d'utilisation. Lorsque vous créez un extracteur d'entité, vous décidez du contenu et de la portée des informations à rechercher et à extraire. Votre extracteur peut extraire l'un des éléments suivants:

  • Termes qui représentent des objets, tels que des noms de légumes provenant de recettes de cuisine ou la marque et le modèle de voitures provenant de rapports d'accident
  • Attributs des objets, tels que la couleur et la quantité
  • Phrases courtes, telles que 107 deaths in France, revenue of $343M

Un type d'entité est un type d'objet. Pour créer un extracteur d'entité, vous devez définir un ensemble de types d'entité qui vous intéressent. Vous pouvez ensuite annoter une collection de vos propres documents en recherchant des termes ou des phrases qui représentent le type d'informations que vous souhaitez extraire et en les étiquetant comme exemples d'entité.

Après avoir défini des types d'entité et des exemples d'entité de libellé, vous pouvez générer un modèle d'apprentissage automatique. Le modèle apprend les informations qui vous intéressent en fonction de la façon dont les termes ou les phrases que vous étiquetez comme exemples sont référencés dans des phrases. Le modèle apprend à partir du contexte et de la langue avec lesquels les exemples d'entité sont référencés dans les données d'apprentissage.

Une fois que le modèle d'apprentissage automatique a été suffisamment bien entraîné pour reconnaître vos types d'entité, vous pouvez publier le modèle en tant qu'enrichissement et l'appliquer à de nouveaux documents. L'enrichissement d'extracteur d'entité personnalisé reconnaît et balise les nouvelles mentions des mêmes termes et des termes similaires que les occurrences des types d'entité qui vous intéressent.

Pour plus d'informations sur l'utilisation de l'extracteur d'entité pour ajouter la personnalisation de domaine à vos applications d'intelligence artificielle, voir l'article de blogue Entity Extractor Feature dans Watson Discovery v2.

Discovery comporte également un enrichissement Entities intégré qui peut être appliqué directement à votre collection. Il ne nécessite aucune formation pour reconnaître les noms propres communément connus. Pour plus d'informations sur l'enrichissement Watson NLP Entities, voir Entities.

Vous avez déjà généré un système de types d'entité dans Knowledge Studio? Vous pouvez utiliser le corpus associé à votre modèle d'apprentissage automatique comme point de départ pour les données de formation de l'extracteur d'entité. Pour plus d'informations, voir Importation d'un corpus.

Pour plus d'informations sur les langues avec lesquelles l'extracteur d'entité peut être utilisé, voir Support de langue.

Vidéo de présentation de l'extracteur d'entité

Cette vidéo explique comment définir des types d'entité personnalisés, puis comment les utiliser pour extraire des termes intéressants de vos données.

Pour lire une retranscription de la vidéo, regardez la vidéo sur YouTube.com, cliquez sur l'icône More actions, puis sélectionnez Open transcript.

Exemple

Si vous êtes familiarisé avec l'enrichissement Entities intégré, vous savez que l'enrichissement peut reconnaître des termes qui correspondent à des catégories généralisées, telles que Person et Location. Avec l'extracteur d'entité, vous contrôlez ce qui constitue des termes ou des phrases significatifs.

L'image suivante montre les termes qu'un enrichissement qui reconnaît les mentions de type d'entité family members peut extraire du texte. L'exemple illustre la façon dont les mentions de membres de famille et les autres mentions d'entité (qui sont reconnues par l'enrichissement Entities intégré) peuvent être prédites.

Montre un extrait d'Orgueil et Préjugés avec des mentions de membres de la famille (fille, sœurs, mère) et des mentions d'entités (M. Bennett, M. Bingley, Netherfield, Longbourn).
Labeled entity examples

Cet extrait provient du chapitre 3 de Orgueil et Préjugés de Jane Austen.

Avant de commencer

Recherchez ou créez une collection avec des documents qui contiennent divers exemples des types d'entité que Discovery doit connaître. Pour enseigner à l'extracteur, vous devez étiqueter des exemples de types d'entité. Vous ne pouvez étiqueter des exemples que si votre collection contient des exemples valides. Essayez de trouver des documents dont les termes sont nombreux et variés et qui fonctionnent comme des exemples de chaque type d'entité que vous souhaitez définir.

Ajout d'un extracteur d'entité

Pour ajouter un extracteur d'entités, procédez comme suit :

  1. Ouvrez le projet dans lequel vous souhaitez créer l'extracteur d'entités.

    Le projet doit comporter au moins une collection avec des documents représentatifs de vos données de domaine.

  2. Dans le panneau Improvement tools de la page Improve and customize, développez Teach domain concepts, puis cliquez sur Extract entities.

  3. Cliquez sur Nouveau.

    Si vous souhaitez créer un extracteur d'entité basé sur le système de types d'entité à partir d'un corpus IBM Watson® Knowledge Studio, cliquez sur la flèche, puis choisissez Importer un corpus Knowledge Studio. Pour les étapes suivantes, voir Importation d'un corpus Knowledge Studio.

  4. Ajoutez un nom d'extracteur et éventuellement une description.

    Ce nom est utilisé comme nom de modèle et comme nom de l'enrichissement créé lorsque vous publiez le modèle. Le nom s'affiche en tant que nom d'enrichissement dans la page Enrichissements où vous et les autres utilisateurs pouvez l'appliquer aux collections. Il s'affiche également en tant que nom de modèle dans la représentation JSON des documents dans lesquels des entités personnalisées sont trouvées. Le nom est stocké avec la casse et l'espacement que vous spécifiez.

  5. Choisissez une collection avec des documents représentatifs de vos données de domaine.

  6. Choisissez les champs du document à afficher dans la vue de document où vous allez étiqueter les documents de la collection.

    • Titre du document s'affiche dans l'en-tête de page en tant que nom de document. Choisissez une zone comportant une valeur unique par document, telle que le nom de fichier, qui est stocké dans la zone extracted_metadata.filename.
    • Corps du document est l'endroit où vous étiquetez les exemples d'entité. Choisissez une zone qui contient la majeure partie du contenu du document, telle que la zone text.

    Montre que PP3.docx est le titre du document et que le panneau de texte principal affiche la zone de corps.
    Label documents page

  7. Cliquez sur Créer.

Un document de la collection que vous avez sélectionnée s'affiche dans la vue Documents de libellé. Vous allez étiqueter les occurrences des types d'entité que la reconnaissance doit reconnaître à partir de ce document et d'autres documents de la collection.

Si aucun texte n'est affiché dans le corps de la page, commencez par créer un nouvel extracteur d'entité. Cette fois, lorsque vous sélectionnez une valeur pour la zone Corps du document, veillez à choisir une zone dans vos documents traités qui contient du texte.

Définition des types d'entité

Définissez les types d'entité en procédant comme suit:

  1. Cliquez sur Ajouter un type d'entité.

  2. Ajoutez le nom du type d'entité et une description facultative.

    Utilisez une convention de dénomination qui fonctionne pour vos données. L'enrichissement Entities intégré utilise des majuscules initiales et aucun espace, par exemple EmailAddress. Pour distinguer vos entités des entités qui sont extraites par d'autres enrichissements, vous pouvez utiliser une convention différente.

  3. Facultatif: Choisissez la couleur à utiliser pour la mise en évidence du texte dans le document que vous souhaitez étiqueter comme exemple de ce type d'entité.

    Vous pouvez cliquer sur une couleur dans la palette Couleur du libellé, puis sur l'icône Renouveler la couleur pour passer d'une couleur à l'autre. Pour utiliser une couleur personnalisée, indiquez son code de couleur hexadécimal (#fff0f7).

  4. Cliquez sur Créer.

  5. Répétez ce processus pour ajouter tous les types d'entité que l'extracteur doit reconnaître.

    Si vous n'êtes pas sûr des éléments à ajouter pour les types d'entité, il peut être utile de consulter d'abord les documents de la collection. En examinant le contenu, vous pouvez vous faire une idée des termes qui ont une signification significative et rechercher des moyens logiques de les regrouper.

Etiqueter les termes significatifs

Dans la vue Libeller les documents, recherchez les termes de signification dans les documents de votre collection et étiquetez-les pour indiquer leurs types d'entité.

Avant de commencer à étiqueter des documents, déterminez si vous souhaitez conserver l'étiquetage en bloc activé. La fonction d'étiquetage en vrac est un excellent moyen d'accélérer le processus d'étiquetage de vos documents. Lorsque cette option est activée, chaque terme que vous étiquetez est libellé automatiquement partout où il apparaît dans le document. Sinon, vous devez étiqueter chaque occurrence du terme un par un.

Si vous décidez de ne pas utiliser d'exemples de libellé en bloc, définissez le commutateur Bulk label entity examples sur Off. Pour plus d'informations, voir Exemples de libellé en bloc.

Conseils relatifs à l'étiquetage

Passez en revue les conseils suivants avant de commencer:

  • La collection de documents que vous étiquetez doit contenir un ensemble de documents représentatif. Les documents doivent contenir des exemples nombreux et variés des types d'entité que l'extracteur d'entité doit reconnaître. Si la collection que vous avez sélectionnée lorsque vous avez commencé à créer l'extracteur d'entité ne répond pas aux exigences, arrêtez-la maintenant et redémarrez-le avec une autre collection de documents.
  • Définissez des types d'entité clairement distincts les uns des autres.
  • Viser à étiqueter au moins 40 exemples de chaque type d'entité.
  • Etiquetez tous les exemples valides d'un type d'entité. Ne sautez aucune occurrence. Pour accélérer le processus, utilisez la fonction d'étiquette en vrac.

Exemples d'entité de libellé

Etiquetez les termes du document qui représentent des exemples des types d'entité que vous avez définis. Lorsque vous avez terminé avec un document, faites passer le statut du document de En cours à Terminé, puis passez au document suivant.

Pour étiqueter des exemples d'entité, procédez comme suit:

  1. Consultez le texte du document. Recherchez des exemples d'entité à étiqueter.

    Le tableau suivant en présente quelques exemples.

    Types d'entité et exemples
    Type d'entité Exemples d'étiquetage dans le document
    couleur blanc, vert, violet
    voiture cabriolet, SUV, berline
    AUTO_MODEL Explorateur, Civic, Sorrente
    fabrication_automatique Ford, Honda, Kia
    vêtements chemise, chemisier, skort
    instruments obligations, actions, ETFs, investisseurs

    Si un type d'entité que vous souhaitez identifier n'est pas encore créé, ajoutez-le. Dans le panneau Types d'entité, cliquez sur Créer. Pour plus d'informations sur l'ajout de types d'entité, voir Définition de types d'entité.

  2. Cliquez d'abord sur le type d'entité dans le panneau Types d'entité.

  3. Dans le corps du document, sélectionnez le mot ou la phrase qui représente l'exemple d'entité.

    Le terme est sélectionné et un libellé de couleur est appliqué au terme. Les deux premiers caractères du nom de type d'entité sont affichés en exposant en majuscules dans la limite du libellé. L'ID à 2 caractères et la couleur du libellé vous aident à associer l'exemple au type d'entité qu'il représente.

    Montre qu'un libellé est appliqué au mot femme dans une phrase.
    A label is applied to an entity example

    L'exemple de texte est également ajouté au panneau Types d'entité. Si vous cliquez sur le chevron pour afficher les détails, vous pouvez voir que l'exemple est répertorié. L'exemple de texte est enregistré en minuscules, quelle que soit la casse utilisée dans le texte d'origine.

  4. Si l'étiquetage en bloc est activé, une notification s'affiche pour indiquer le nombre d'occurrences du terme qui ont été trouvées et étiquetées dans le document en cours.

  5. Si vous souhaitez étiqueter les occurrences du terme dans tous les documents de la collection, cliquez sur Appliquer à tous les documents.

    Lorsque vous activez cette option, les occurrences du terme sont libellées dans tous les documents de la collection, y compris les documents que vous avez déjà révisés et marqués comme étant terminés.

    Vous êtes invité à confirmer l'action car elle ne peut pas être annulée. Si vous ne souhaitez pas avoir à confirmer l'action chaque fois que vous choisissez d'appliquer un étiquetage en bloc à tous les documents, sélectionnez Ne plus demander de confirmation. Cliquez sur Exécuter.

    Affiche la boîte de dialogue de confirmation de l'étiquetage en bloc.
    Bulk labeling configuration confirmation

    Pour plus d'informations, voir Exemples de libellé en bloc.

  6. Faites défiler le document pour étiqueter chaque exemple valide de chaque type d'entité que votre extracteur doit reconnaître.

    Vous pouvez rechercher des termes que vous souhaitez étiqueter comme exemples d'entité. Pour plus d'informations, voir Recherche d'exemples à l'aide de mots clés.

    Le modèle d'apprentissage automatique apprend autant des termes que vous ne libellez pas que les termes que vous libellez.

    Si vous manquez l'étiquetage d'un exemple valide, le modèle apprend que lorsque le terme est utilisé dans ce contexte, il ne s'agit pas d'une mention valide du type d'entité. Dans certains cas, une omission est appropriée. Par exemple, certains termes ont des significations différentes dans des contextes différents. Vous ne voulez pas étiqueter le terme lorsqu'il est utilisé dans le mauvais contexte. Cependant, si le terme est utilisé dans le bon contexte et que vous ne l'étiquetez pas, vous apprenez au modèle à l'ignorer. Vous diminuez l'efficacité du modèle lorsque vos données d'apprentissage sont incohérentes.

    Une fois que vous avez étiqueté de nombreux exemples, des suggestions d'exemple d'entité sont affichées. Vous pouvez accepter ou rejeter des exemples de suggestions d'entité.

    Affiche l'invite qui s'affiche pour vous demander si vous souhaitez accepter une suggestion.
    Decide whether to accept a suggestion

    L'acceptation d'exemples de suggestions est une autre façon d'accélérer le processus d'étiquetage. Pour plus d'informations, voir Suggestions d'exemple d'entité. Après avoir accepté une suggestion, vous pouvez étiqueter le terme en bloc.

  7. Si vous faites une erreur et que vous étiquetez le mauvais mot ou qu'un mot a été étiqueté de manière incorrecte par le processus d'étiquetage en bloc, vous pouvez supprimer le libellé.

    Survolez le mot libellé jusqu'à ce que l'option Supprimer cet exemple s'affiche, puis cliquez dessus. Vous pouvez choisir de supprimer uniquement cette mention ou toutes les mentions du document. Faites un choix, puis cliquez sur Supprimer.

  8. Après avoir étiqueté tous les exemples d'entité dans le document en cours, remplacez le statut du document En cours par Terminé.

    Un autre document de la collection s'affiche.

  9. Etiquetez des exemples de vos types d'entité dans chaque document de la collection.

    A tout moment au cours du processus d'étiquetage, vous pouvez cliquer sur Sauvegarder l'extracteur d'entité pour sauvegarder votre travail.

  10. Si vous ne disposez pas de suffisamment d'exemples dans l'ensemble de documents en cours, vous pouvez ajouter d'autres documents.

    Dans le panneau Liste de documents, cliquez sur Ajouter des documents. L'option est disponible uniquement lorsque d'autres documents sont disponibles dans la collection. Vous pouvez ajouter jusqu'à 20 documents. Si l'étiquetage en bloc de tous les documents est activé, les libellés sont appliqués automatiquement aux documents nouvellement ajoutés.

  11. Après avoir étiqueté les exemples dans autant de documents que vous le souhaitez dans la collection, cliquez sur Sauvegarder l'extracteur d'entité, puis ouvrez la page Entraîner l'extracteur.

Etiquetage d'exemples en bloc

Pour la plupart des exemples d'entité, l'activation de la fonction de libellé en bloc est utile. Vous pouvez l'ignorer si un terme a plusieurs significations dans des contextes différents. Dans ce cas, évaluez chaque occurrence individuellement. N'oubliez pas que si vous activez la fonction de libellé en bloc, vous pouvez vérifier l'exactitude des libellés qui ont été ajoutés automatiquement et apporter des corrections lorsque cela est nécessaire lorsque vous passez en revue le document.

Une fois que vous avez activé la fonction de libellé en bloc, une notification s'affiche pour indiquer combien d'occurrences d'un exemple d'entité ont été trouvées dans le document en cours. A partir de la page en cours, l'outil d'affectation de libellés ne peut pas accéder à d'autres documents pour indiquer combien d'occurrences existent dans d'autres documents de la collection. Toutefois, le nombre de mentions est affiché dans le panneau Types d'entité. Lorsque vous ouvrez d'autres documents pour la première fois, vous pouvez vérifier le nombre de mentions pour voir combien de mentions ont été étiquetées automatiquement.

La fonction de libellé en vrac a-t-elle manqué une occurrence?

Les occurrences du terme ne sont pas étiquetées si elles apparaissent dans la même expression que celle dans laquelle le terme est déjà étiqueté. Par exemple, la première occurrence du terme husband n'est pas libellée lorsque la fonction de libellé en bloc est activée pour la deuxième occurrence du terme dans la phrase suivante.

S'affiche lorsqu'une occurrence qui se chevauche ne se voit pas attribuer de libellé par la fonction de libellé en bloc.
Treatment of overlapping labels

Suggestions d'exemple d'entité

Une fois que vous avez étiqueté suffisamment d'exemples, des exemples de type d'entité suggérés sont affichés. Le système apprend à partir des types d'exemples que vous étiquetez et applique ce qu'il apprend pour identifier de nouveaux exemples potentiels. Par exemple, après avoir étiqueté red, orange, yellow, green et blue comme exemples de type d'entité color, le panneau Exemples de suggestions peut afficher indigo et violet comme exemples suggérés pour vous permettre d'étiqueter. Les suggestions ne sont pas affichées tant que vous n'avez pas étiqueté de nombreux exemples d'un type d'entité.

L'exemple suivant montre des suggestions qui sont faites pour les mentions de membres de la famille.

Affiche des suggestions pour les entités de membre de famille.
Entity example suggestions

Vous pouvez remarquer qu'un terme que vous avez choisi d'étiqueter en bloc n'est pas étiqueté, mais qu'il s'affiche à la place en tant que suggestion. Un terme est ignoré dans les situations suivantes:

  • Le terme peut apparaître dans différentes phrases nominales dans différentes sections du document. Par exemple, le terme father peut apparaître dans les phrases nominales the kindest *father* et to her *father*. Lorsqu'un mot est inclus dans une phrase du nom avec des adjectifs, la signification peut changer. Par conséquent, ces termes sont parfois suggérés plutôt que libellés automatiquement.
  • Un mot peut être un exemple valide seul et dans le cadre d'une mention à plusieurs mots. Par exemple, une mention de IBM peut faire référence à la société International Business Machines, Corp. ou peut être utilisée dans le cadre d'un nom de produit, tel que IBM Cloud Pak for Data. Toutefois, un mot ou une phrase ne peut faire partie que d'un seul exemple. Les exemples de libellés ne peuvent pas se chevaucher. Par conséquent, vous devez choisir l'exemple de suggestion le plus précis. Dans cet exemple, où le terme IBM est utilisé comme partie d'un nom de produit, il est plus exact d'étiqueter la phrase complète comme un exemple du type d'entité Product.
  • Le service peut reconnaître qu'un terme est un exemple possible de plusieurs types d'entité. Par exemple, le mot top peut signifier le meilleur ou chemise.

Pour examiner une suggestion plus en détail, cliquez dessus pour voir le mot en contexte dans le document. L'affichage du terme en contexte vous aide à déterminer si l'occurrence est un exemple d'entité valide que vous pouvez étiqueter.

Exportation de données libellées pour un extracteur d'entité

Vous pouvez exporter les données libellées d'un extracteur d'entité à partir de Discovery. Vous pouvez utiliser les données libellées exportées pour l'entraînement ou la génération de modèles de langage de grande taille (LLMs) sur un service tel que Watson Studio et Natural Language Processing (NLP).

Pour exporter les données étiquetées, procédez comme suit :

  1. Dans le panneau Improvement tools de la page Improve and customize, développez Teach domain concepts, puis cliquez sur Extract entities.

  2. Pour l'extracteur d'entité à partir duquel vous souhaitez exporter des données libellées, cliquez sur l'icône Actions, puis sélectionnez Télécharger les données libellées.

    Un fichier compressé est téléchargé avec des données libellées. Le fichier compressé contient les fichiers JSON suivants.

    • labeled_data.json: inclut le texte et les libellés. Le format de données est basé sur le format de données d'entrée pour l'extraction d'entité dans Watson Natural Language Processing. Pour plus d'informations, voir Format des données d'entrée.
    • metadata.json: inclut des métadonnées pour l'espace de travail et des données libellées.

Importation d'un corpus Knowledge Studio

Pour les déploiements installés, la fonction d'importation a été ajoutée avec l'édition 4.6.2.

Vous pouvez importer un corpus de documents annotés dans IBM Watson® Knowledge Studio à utiliser comme données d'apprentissage pour un extracteur d'entité dans Discovery.

Les types d'entité définis dans Knowledge Studio sont affichés en tant que nouveaux types d'entité dans Discovery. Vous pouvez continuer à annoter les documents importés lorsque vous personnalisez le modèle d'extracteur d'entité.

Les sous-types d'entité et les relations du modèle d'apprentissage automatique Knowledge Studio ne sont pas représentés, de même que les dictionnaires personnalisés associés au modèle.

Avant de pouvoir importer un corpus, vous devez exporter le jeu de documents depuis Knowledge Studio en tant que fichier .zip. Suivez les étapes appropriées pour l'exportation en fonction de votre type de déploiement Knowledge Studio:

Bien que vous deviez télécharger à la fois le jeu de documents et le système de types pour inclure des annotations dans des documents que vous téléchargez dans un autre espace de travail Knowledge Studio, il n'en va pas de même dans ce cas d'utilisation. Vous importez uniquement le jeu de documents dans Discovery. Toutes les annotations dans les documents sont recréées dans Discovery. Le système de types Knowledge Studio n'est pas nécessaire.

Pour importer un corpus Knowledge Studio, procédez comme suit:

  1. Ouvrez le projet dans lequel vous souhaitez importer le corpus.

  2. Dans le panneau Improvement tools de la page Improve and customize, développez Teach domain concepts, puis cliquez sur Extract entities.

  3. Cliquez sur la flèche associée au bouton Nouveau. puis cliquez sur Importer un corpus Knowledge Studio.

  4. Ajoutez un nom d'extracteur et éventuellement une description.

    Ce nom est utilisé comme nom de modèle et comme nom de l'enrichissement créé lorsque vous publiez le modèle. Le nom s'affiche en tant que nom d'enrichissement dans la page Enrichissements où vous et les autres utilisateurs pouvez l'appliquer aux collections. Il s'affiche également en tant que nom de modèle dans la représentation JSON des documents dans lesquels des entités personnalisées sont trouvées. Le nom est stocké avec la casse et l'espacement que vous spécifiez.

  5. Cliquez sur Télécharger, puis recherchez et sélectionnez le fichier .zip que vous avez exporté depuis Knowledge Studio. Cliquez sur Créer.

    Les documents annotés que vous téléchargez sont stockés avec l'espace de travail de l'extracteur d'entité et non en tant que nouvelle collection dans le projet. Vous pouvez continuer à annoter les documents.

Accordez à Discovery du temps pour importer et traiter le corpus du modèle d'apprentissage automatique. Une fois l'extracteur d'entité créé, il est ouvert sur la page Documents de libellé.

Formation de l'extracteur

Après avoir étiqueté les documents, examinez les données d'entraînement qui seront utilisées pour entraîner le modèle d'extracteur d'entité.

Pour former l'extracteur, procédez comme suit :

  1. Décidez si vous souhaitez appliquer une option avancée. La plupart des modèles ne nécessitent pas de modifications de ces options.

    Les personnalisations suivantes sont disponibles à partir de la page Vérifier et terminer:

    • Inclure les documents qui n'ont pas été révisés par une personne dans l'ensemble de formation.

      En règle générale, seuls les documents qu'une personne a étiquetés, révisés et explicitement marqués comme complets peuvent être des candidats à l'inclusion dans l'ensemble de formation. Toutefois, si vous souhaitez autoriser les documents qui n'ont pas été marqués comme étant terminés à être inclus dans l'ensemble d'entraînement, vous pouvez le faire.

    • Modifiez le rapport des documents inclus dans les jeux de documents qui comprennent vos données d'apprentissage.

      Les documents de votre collection sont répartis de manière aléatoire dans les ensembles suivants:

      • Ensemble d'entraînement: documents que vous étiquetez et qui sont utilisés pour entraîner le modèle d'apprentissage automatique de l'extracteur d'entité. L'objectif de l'ensemble d'entraînement est d'enseigner au modèle d'apprentissage automatique les libellés corrects.
      • Ensemble de tests: documents utilisés pour tester le modèle entraîné. Après avoir exécuté un test, vous pouvez examiner les résultats, analyser de près les zones où le modèle a eu un problème et trouver des moyens d'améliorer les performances du modèle.
      • Ensemble aveugle: Documents qui sont mis de côté et utilisés pour tester le modèle périodiquement après plusieurs itérations de test et d'amélioration. Les documents de l'ensemble aveugle sont intentionnellement enronnés. Lorsque vous testez le modèle avec des documents de l'ensemble de tests et que vous analysez les résultats, vous vous familiarisez avec les documents de test sous-jacents. Comme les documents de test sont utilisés de manière itérative pour améliorer le modèle, ils peuvent commencer à influencer indirectement l'entraînement du modèle. C'est pourquoi l'ensemble des documents non divulgués est si important. L'ensemble aveugle vous permet de générer périodiquement une évaluation non biaisée du modèle.

      Le fractionnement par défaut applique un rapport (70%-23%-7%) qui est couramment utilisé pour l'apprentissage automatique.

  2. Cliquez sur Extracteur d'entraînement.

Lorsque vous entraînez l'extracteur, Discovery utilise des documents de l'ensemble d'entraînement pour générer un modèle d'apprentissage automatique. Une fois le modèle généré, il exécute automatiquement un test sur les documents de l'ensemble de tests. Les résultats du test s'affichent pour que vous puissiez les consulter.

Identification et résolution des problèmes liés à la formation

Découvrez les messages d'erreur possibles et comment les traiter.

Les données d'apprentissage sont trop volumineuses

Vos données d'entraînement contiennent un document texte volumineux ou de nombreux types d'entité et ressources nécessaires pour traiter les données sont supérieurs aux ressources disponibles pour votre instance de service. Cette erreur peut se produire même lorsque votre espace de travail ne dépasse pas les limites d'extracteur d'entité documentées. Pour résoudre le problème, vous pouvez essayer l'une des approches suivantes :

  • Supprimez un ou plusieurs types d'entité pour réduire la taille de vos données d'entraînement.
  • Supprimez les documents très volumineux des données d'entraînement. Par exemple, si l'un des documents libellés est très volumineux, remplacez son statut Terminé par En cours pour l'omettre des données d'apprentissage.
  • Réduisez le nombre de documents inclus dans l'ensemble d'apprentissage. Le rapport de division par défaut (70 %-23 %-7%) pour les données d'entraînement utilise 70% des documents de l'ensemble d'entraînement. Vous pouvez modifier le pourcentage de documents utilisés dans l'ensemble d'apprentissage en indiquant un nombre inférieur. Par exemple, vous pouvez remplacer le rapport de division par 60 %-33 %-7%.
  • IBM Cloud Pak for Data augmentez la capacité de votre instance de service déployée en augmentant la taille des pods de service IBM Software Hub Augmentez la capacité de votre instance de service déployée en augmentant la taille des modules de service.

Evaluation de l'extracteur

Pour passer en revue les métriques de l'exécution en test du modèle d'extracteur d'entité que vous avez créé, cliquez sur l'onglet Extracteur d'évaluation.

Le tableau suivant décrit les paramètres d'évaluation disponibles.

Détails des métriques
Métrique Descriptif
Matrice de confusion Table fournissant une décomposition numérique détaillée des jeux de documents annotés. Utilisez-le pour comparer les mentions de type d'entité étiquetées par le modèle d'apprentissage automatique aux mentions de type d'entité étiquetées dans les données d'apprentissage.
Score F1 Mesure si l'équilibre optimal entre la précision et le rappel est atteint. Le score F1 peut être interprété comme une moyenne pondérée des valeurs de précision et de rappel. Un score F1 atteint sa meilleure valeur à 1 et sa pire valeur à 0. Les scores globaux sont inférieurs si le modèle ne dispose pas de suffisamment de données d'apprentissage pour en tirer des enseignements.
Précision Mesure le nombre total de mentions extraites classées comme type d'entité correct. Un faux positif se produit lorsqu'une entité ne doit pas être extraite, mais qu'elle a été extraite (Prévu = Positif, Réel = Négatif). Les faux positifs signifient généralement une faible précision.
Rappel Mesure la fréquence à laquelle les mentions de type d'entité qui doivent être extraites sont extraites. Un faux négatif se produit lorsqu'un type d'entité doit être extrait, mais qu'il n'a pas été extrait (Prévu = Négatif, Réel = Positif). Les faux négatifs signifient généralement un faible rappel.
  1. Passez en revue les métriques fournies sur l'exécution du test du modèle d'extracteur pour déterminer si un entraînement supplémentaire est nécessaire.

  2. Explorez les résultats de test plus en détail en cliquant sur Vérifier les résultats de l'entraînement dans l'ensemble de tests.

    Les documents de l'ensemble de tests sont affichés avec les libellés prévus affichés dans un panneau et les données de référence affichées dans l'autre panneau.

    • Les libellés prédits sont les exemples que l'extracteur d'entité a identifiés et libellés en tant que types d'entité.
    • Les données de référence incluent des exemples dans lesquels une personne a été étiquetée ou qui a été étiquetée et révisée en bloc par une personne. Les libellés dans les données de référence sont considérés comme les libellés corrects.

    Les performances du modèle sont évaluées en fonction du degré de concordance entre les libellés prédits et les données de référence.

Amélioration de l'extracteur

Le tableau suivant présente les correctifs suggérés pour les problèmes courants.

Actions d'amélioration
Problème Action pour résoudre le problème
Faibles scores globaux Il se peut que vous n'ayez pas assez de documents avec des exemples libellés dans votre ensemble d'apprentissage. Libellez d'autres exemples dans d'autres documents.
Faible rappel Etiquetez d'autres documents avec de nouveaux exemples des types d'entité que l'extracteur a manqués.
Faible précision Recherchez les types d'entité qui sont souvent confondus. Recherchez et étiquetez d'autres exemples de chaque type d'entité pour aider l'extracteur d'entité à faire la distinction entre les types d'entité.

Ajout de documents aux données d'entraînement

Pour ajouter d'autres documents, procédez comme suit :

  1. Ouvrez l'onglet Documents de libellé.

  2. Dans le panneau Liste de documents, sélectionnez Ajouter des documents.

    Ce bouton est désactivé si aucun autre document n'est disponible pour être ajouté à l'extracteur d'entité à partir de la collection en cours. Pour ajouter d'autres documents à la collection, accédez à la page Activité de la collection, puis cliquez sur la vignette Télécharger les données pour rechercher et ajouter d'autres fichiers.

Vous ne pouvez pas choisir les documents de la collection à afficher dans la Liste de documents à des fins d'étiquetage. S'il existe des types de documents spécifiques que vous souhaitez étiqueter, envisagez d'ajouter des documents représentatifs à une collection que vous pouvez utiliser pour créer l'extracteur d'entité.

Le nombre de documents pouvant être inclus dans les données d'apprentissage est limité. Si vos données d'apprentissage incluent des documents avec une combinaison de sections libellées et d'autres qui ne le sont pas, le système peut échantillonner des exemples de phrases non libellées. Le sous-échantillonnage permet d'équilibrer le nombre d'exemples positifs et négatifs utilisés pour l'apprentissage. L'équilibrage des exemples dans l'ensemble d'entraînement améliore les performances de l'entraînement.

Publication de l'extracteur d'entité en tant qu'enrichissement

Lorsque vous pensez que l'extracteur d'entité est prêt, publiez-le. Comment savoir quand il est prêt? Si le score ne change pas après plusieurs exécutions de test dans lesquelles vous apportez des améliorations, le modèle est prêt. Vous pouvez revenir pour mettre à jour et entraîner à nouveau le modèle après l'avoir publié.

  1. Dans la page Evaluer l'extracteur, cliquez sur Publier l'extracteur.
  2. Cliquez sur Appliquer aux données.
  3. Choisissez une collection, puis sélectionnez la zone de document dans laquelle vous souhaitez que l'enrichissement de l'extracteur d'entité soit appliqué.
  4. Cliquez sur Appliquer.

Exportation de l'extracteur d'entité

Pour les déploiements installés, la fonction d'exportation a été ajoutée avec l'édition 4.6.2.

Un modèle d'extracteur d'entité que vous créez et déployez dans un projet est disponible en tant qu'enrichissement qui peut être appliqué à une collection à partir de n'importe quel projet dans la même instance de service.

Si vous souhaitez utiliser le modèle d'extracteur d'entité dans un projet à partir d'une autre instance de service, vous pouvez exporter l'extracteur d'entité. Pour l'utiliser ailleurs, suivez les étapes de création d'un modèle d'apprentissage automatique à partir de Utilisation de modèles d'apprentissage automatique importés pour rechercher des termes personnalisés. Vous ne pouvez pas continuer à éditer un extracteur d'entité que vous importez dans un autre projet.

L'extracteur d'entité que vous souhaitez exporter doit être entièrement entraîné.

Pour exporter un extracteur d'entité, procédez comme suit :

  1. Ouvrez le projet avec l'extracteur d'entité que vous souhaitez exporter.

  2. Dans le panneau Improvement tools de la page Improve and customize, développez Teach domain concepts, puis cliquez sur Extract entities.

  3. Dans la liste Exacteurs d'entité, recherchez l'extracteur d'entité que vous souhaitez exporter.

  4. Cliquez sur l'icône Actions de votre extracteur, puis choisissez Télécharger le modèle pour sauvegarder le modèle sur votre système.

    L'option Télécharger le modèle n'est pas disponible à moins que le modèle ne soit entraîné.

Le modèle d'extracteur d'entité est sauvegardé en tant que fichier .ent. Vous pouvez l'importer dans un projet dans une autre instance de service en tant que modèle d'apprentissage automatique, puis l'appliquer à vos collections. Pour plus d'informations sur l'importation du modèle, voir Utilisation de modèles ML importés pour trouver des termes personnalisés.

Application d'un enrichissement d'extracteur d'entité

Lorsque vous publiez l'extracteur, vous spécifiez la zone dans laquelle vous souhaitez que l'extracteur soit appliqué. Si vous décidez d'appliquer l'enrichissement à des zones différentes ou à d'autres zones ultérieurement, vous pouvez suivre ces étapes pour le faire.

  1. Dans le panneau de navigation, cliquez sur Manage collections.
  2. Cliquez pour ouvrir la collection dans laquelle vous souhaitez appliquer l'enrichissement.
  3. Cliquez sur Enrichments.
  4. Recherchez le nom de l'extracteur d'entité dans la liste, puis choisissez une zone à laquelle appliquer l'enrichissement.
  5. Cliquez sur Apply changes and reprocess.

Pour plus d'informations sur le retrait d'un enrichissement d'extracteur d'entité d'une collection, voir Gestion des enrichissements.

Sortie de l'extracteur d'entité

Lorsque l'enrichissement reconnaît l'une de vos entités personnalisées dans un document, une entrée est ajoutée à la section enriched_text.entities de la représentation JSON du document. La section contient les occurrences des entités qui sont reconnues par votre modèle personnalisé, ainsi que les entités qui sont reconnues par l'enrichissement Entities intégré. L'enrichissement intégré utilise le service Watson NLP pour identifier les entités qui font partie de ce qu'il appelle le système de types Natural Language Understanding. Pour plus d'informations sur l'enrichissement Entities intégré, voir Entities.

La sortie JSON suivante est générée par un modèle personnalisé nommé littérature qui reconnaît les mentions de membres de la famille.

Affiche la sortie JSON d'un document avec une mention d'entité personnalisée.
JSON representation of a custom entity mention

Surveillance des performances dans le temps

Vous pouvez réentraîner votre modèle d'extracteur d'entité à tout moment. Chaque fois que vous entraînez le modèle, passez en revue les scores des attributs de performance pour déterminer si vos modifications les plus récentes augmentent ou diminuent les scores du modèle.

  1. Pour comparer une exécution de test à une autre, cliquez sur Afficher l'historique des scores.

    La vue d'historique affiche les 5 dernières exécutions d'entraînement.

    Pour conserver les informations de score pour plus que les 5 dernières exécutions d'entraînement, vous pouvez exporter les indicateurs au format CSV et suivre les scores dans une application distincte. Cliquez sur l'icône de représentation tabulaire Icône de représentation tabulaire, puis sur Télécharger au format CSV.

Si une exécution d'entraînement ultérieure aboutit à des scores inférieurs, ne publiez pas cette version du modèle.

Suppression d'un extracteur d'entité

Vous pouvez supprimer un extracteur d'entité s'il n'est pas en cours d'utilisation, ce qui signifie que l'enrichissement publié à partir de l'extracteur d'entité n'est pas appliqué à une collection.

Vous pouvez supprimer un extracteur d'entité si vous avez atteint la limite du nombre maximal d'extracteurs autorisés pour votre plan, par exemple.

N'oubliez pas que les limites sont définies par instance de service et non par projet. Si vous ne pouvez pas créer de nouveaux extracteurs d'entité mais que vous ne disposez pas du nombre maximal d'extracteurs dans le projet en cours, vérifiez les autres projets dans la même instance de service. Il se peut que des extracteurs d'entité qui ne sont pas utilisés dans d'autres projets puissent être supprimés.

  1. Supprimez l'enrichissement d'extracteur d'entité qui a été publié à partir de l'extracteur d'entité que vous souhaitez supprimer des collections dans lesquelles il est utilisé.

    Pour plus d'informations, voir Suppression d'enrichissements.

  2. Dans le panneau Improvement tools de la page Improve and customize, développez Teach domain concepts, puis cliquez sur Extract entities.

  3. Recherchez l'extracteur d'entité à supprimer, cliquez sur l'icône Actions, puis sélectionnez Supprimer.

Limites de l'extracteur d'entité

Le nombre d'extracteurs d'entité que vous pouvez créer par instance de service dépend de votre type de plan Discovery.

Limites du plan d'extracteur d'entité
Planifier Extracteurs d'entité par instance de service[1] Nombre maximal de types d'entité par extracteur Nombre maximal de documents dans les données d'apprentissage
Cloud Pak for Data Illimité 18 1 000
Premium 10 18 1 000
Entreprise 10 18 1 000
Plus (y compris la version d'essai) 3 12 200

  1. Ce nombre reflète le nombre d'enrichissements d'extracteur d'entité publiés pour l'instance de service (y compris à partir de modèles d'extracteur d'entité importés), qu'ils soient appliqués à une collection ou non. ↩︎