Préparer des données textuelles d'entraînement pour l'extraction d'entités

Cette page explique comment préparer des données textuelles à utiliser dans un ensemble de données Vertex AI pour entraîner un modèle d'extraction d'entités.

Les données d'entraînement pour l'extraction d'entités se composent de documents annotés avec les étiquettes qui identifient les types d'entités que votre modèle doit identifier. Par exemple, vous pouvez créer un modèle d'extraction d'entités visant à identifier la terminologie spécialisée dans les documents juridiques ou les brevets. Les annotations spécifient les emplacements des entités que vous étiquetez et les étiquettes elles-mêmes.

Si vous annotez des documents structurés ou semi-structurés dans un ensemble de données utilisé pour entraîner des modèles AutoML, comme par exemple des factures ou des contrats, Vertex AI peut considérer la position d'une annotation comme un facteur contribuant à la validité de l'étiquette. Par exemple, un contrat immobilier comporte à la fois une date d'acceptation et une date de clôture. Vertex AI peut apprendre à distinguer les entités en fonction de la position spatiale de l'annotation.

Exigences en matière de données

  • Vous devez fournir au minimum 50 ou au maximum 100 000 documents d'entraînement.
  • Vous devez fournir au minimum 1 ou au maximum 100 étiquettes uniques pour annoter les entités que vous souhaitez extraire.
  • Vous pouvez utiliser une étiquette pour annoter entre 1 et 10 mots.
  • Les noms des étiquettes peuvent comporter entre 2 et 30 caractères.
  • Vous pouvez inclure des annotations directement dans vos fichiers JSON Lines ou les ajouter ultérieurement à l'aide de Google Cloud Console après l'importation des documents.
  • Vous pouvez intégrer directement les documents ou faire référence à des fichiers TXT situés dans des buckets Cloud Storage.

Bonnes pratiques pour les données textuelles utilisées afin d'entraîner des modèles AutoML

Les recommandations suivantes s'appliquent aux ensembles de données utilisés pour entraîner les modèles AutoML.

  • Utilisez chaque étiquette au moins 200 fois dans votre ensemble de données d'entraînement.
  • Annotez chaque occurrence des entités que le modèle doit identifier.

Fichiers d'entrée

Les types de fichiers d'entrée pour l'extraction d'entités doivent être au format JSON Lines. Le format, les noms de champ et les types de valeurs des fichiers JSON Lines sont déterminés par un fichier de schéma qui est un fichier YAML publiquement accessible.

Vous pouvez télécharger le fichier de schéma pour l'extraction d'entités à l'emplacement Cloud Storage suivant :
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_extraction_io_format_1.0.0.yaml.

L'exemple suivant montre comment utiliser le schéma pour créer votre propre fichier JSON Lines. L'exemple inclut des sauts de ligne pour des raisons de lisibilité. Dans vos fichiers JSON, n'incluez des sauts de ligne qu'après chaque document. Le champ facultatif dataItemResourceLabels peut par exemple spécifier ml_use.

{
    "textSegmentAnnotations": [
      {
        "startOffset":number,
        "endOffset":number,
        "displayName": "label"
      },
      ...
    ],
    "textContent": "inline_text",
    "dataItemResourceLabels": {
      "aiplatform.googleapis.com/ml_use": "training|test|validation"
    }
}
{
    "textSegmentAnnotations": [
      {
        "startOffset":number,
        "endOffset":number,
        "displayName": "label"
      },
      ...
    ],
    "textGcsUri": "gcs_uri_to_file",
    "dataItemResourceLabels": {
      "aiplatform.googleapis.com/ml_use": "training|test|validation"
    }
}

Vous pouvez également annoter des documents à l'aide de Google Cloud Console. Créez un fichier JSON Lines ne contenant que du contenu (sans le champ textSegmentAnnotations). Les documents sont importés dans Vertex AI sans aucune annotation.