Prepara datos de entrenamiento de texto para la extracción de entidades

En esta página, se describe cómo preparar datos de texto para usarlos en un conjunto de datos de Vertex AI a fin de entrenar un modelo de extracción de entidades.

Los datos de entrenamiento de extracción de entidades constan de documentos con anotaciones que identifican los tipos de entidades que quieres que tu modelo identifique. Por ejemplo, puedes crear un modelo de extracción de entidades para identificar terminología especializada en patentes o documentos legales. Las anotaciones especifican las ubicaciones de las entidades que etiquetas y las etiquetas mismas.

Si anotas documentos estructurados o semiestructurados para un conjunto de datos usado a fin de entrenar modelos de AutoML, como facturas o contratos, Vertex AI puede considerar la posición de una anotación en la página como un factor que contribuye a su etiqueta adecuada. Por ejemplo, un contrato de bienes raíces tiene una fecha de aceptación y una de cierre. Vertex AI puede aprender a distinguir entre las entidades según la posición espacial de la anotación.

Requisitos de los datos

  • Debes proporcionar entre 50 y 100,000 documentos de entrenamiento.
  • Debes proporcionar entre 1 y 100 etiquetas únicas para anotar las entidades que deseas extraer.
  • Puedes usar una etiqueta para anotar entre 1 y 10 palabras.
  • Los nombres de las etiquetas pueden tener entre 2 y 30 caracteres.
  • Puedes incluir anotaciones en tus archivos de líneas JSONL o agregarlas más adelante mediante la consola de Google Cloud después de subir documentos.
  • Puedes incluir documentos intercalados o hacer referencia a archivos TXT que están en buckets de Cloud Storage.

Prácticas recomendadas para los datos de texto que se usan a fin de entrenar los modelos de AutoML

Los siguientes requisitos se aplican a los conjuntos de datos que se usan para entrenar modelos de AutoML.

  • Usa cada etiqueta al menos 200 veces en tu conjunto de datos de entrenamiento.
  • Anota cada caso de entidades que quieres que tu modelo identifique.

Archivos de entrada

Los tipos de archivo de entrada para la extracción de entidades deben ser líneas JSON. El formato, los nombres de campos y los tipos de valores para los archivos de líneas JSONL se determinan mediante un archivo de esquema, que son archivos YAML de acceso público.

Puedes descargar el archivo de esquema para la extracción de entidades desde la siguiente ubicación de Cloud Storage:
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_extraction_io_format_1.0.0.yaml.

En el siguiente ejemplo, se muestra cómo puedes usar el esquema para crear tu propio archivo de líneas JSON. El ejemplo incluye saltos de línea para facilitar la lectura. En tus archivos JSON, incluye saltos de línea solo después de cada documento. El campo dataItemResourceLabels especifica, por ejemplo, ml_use, de manera opcional.

{
    "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"
    }
}

También puedes anotar documentos con la consola de Google Cloud. Crea un archivo de líneas JSONL solo con contenido (sin el campo textSegmentAnnotations); los documentos se suben a Vertex AI sin ninguna anotación