Etiquetado de los datos

Completado

Etiquetar o marcar tus datos correctamente es una parte importante del proceso para crear un modelo de extracción de entidades personalizado. Las etiquetas identifican ejemplos de entidades específicas en el texto usado para entrenar el modelo. Tres cosas en las que centrarse son:

  • Coherencia : etiquete los datos de la misma manera en todos los archivos para el entrenamiento. La coherencia permite que el modelo aprenda sin entradas en conflicto.
  • Precisión : etiquete las entidades de forma coherente, sin palabras adicionales innecesarias. La precisión garantiza que solo se incluyan los datos correctos en la entidad extraída.
  • Integridad : etiquete los datos por completo y no pierda ninguna entidad. La completitud ayuda a su modelo a siempre reconocer las entidades presentes.

Captura de pantalla del etiquetado de una entidad en Language Studio.

Cómo etiquetar los datos

Language Studio es el método más sencillo para etiquetar los datos. Language Studio permite ver el archivo, seleccionar el principio y el final de su entidad y especificar qué entidad es.

Cada etiqueta que identifique se guarda en un archivo que reside en la cuenta de almacenamiento con el conjunto de datos, en un archivo JSON generado automáticamente. A continuación, el modelo usa este archivo para aprender a extraer entidades personalizadas. Es posible proporcionar este archivo al crear el proyecto (si va a importar las mismas etiquetas de un proyecto diferente, por ejemplo), pero debe estar en los formatos de datos NER personalizados aceptados. Por ejemplo:


{
  "projectFileVersion": "{DATE}",
  "stringIndexType": "Utf16CodeUnit",
  "metadata": {
    "projectKind": "CustomEntityRecognition",
    "storageInputContainerName": "{CONTAINER-NAME}",
    "projectName": "{PROJECT-NAME}",
    "multilingual": false,
    "description": "Project-description",
    "language": "en-us",
    "settings": {}
  },
  "assets": {
    "projectKind": "CustomEntityRecognition",
    "entities": [
      {
        "category": "Entity1"
      },
      {
        "category": "Entity2"
      }
    ],
    "documents": [
      {
        "location": "{DOCUMENT-NAME}",
        "language": "{LANGUAGE-CODE}",
        "dataset": "{DATASET}",
        "entities": [
          {
            "regionOffset": 0,
            "regionLength": 500,
            "labels": [
              {
                "category": "Entity1",
                "offset": 25,
                "length": 10
              },
              {
                "category": "Entity2",
                "offset": 120,
                "length": 8
              }
            ]
          }
        ]
      },
      {
        "location": "{DOCUMENT-NAME}",
        "language": "{LANGUAGE-CODE}",
        "dataset": "{DATASET}",
        "entities": [
          {
            "regionOffset": 0,
            "regionLength": 100,
            "labels": [
              {
                "category": "Entity2",
                "offset": 20,
                "length": 5
              }
            ]
          }
        ]
      }
    ]
  }
}

Campo Descripción
documents Matriz de documentos etiquetados
location Ruta de acceso al archivo dentro del contenedor conectado al proyecto
language Idioma del archivo
entities Matriz de entidades presentes en el documento actual
regionOffset Posición de carácter inclusivo para el inicio del texto
regionLength Longitud en caracteres de los datos usados en el entrenamiento
category Nombre de la entidad a extraer
labels Matriz de entidades etiquetadas en los archivos
offset Posición de carácter inclusivo para el inicio de la entidad
length Longitud en caracteres de la entidad
dataset Conjunto de datos al que se asigna el archivo