Rotular seus dados

Concluído

Rotular ou marcar seus dados corretamente é uma parte importante do processo para criar um modelo de extração de entidade personalizada. Os rótulos identificam exemplos de entidades específicas no texto usado para treinar o modelo. Três coisas em que se concentrar são:

  • Consistência – rotule seus dados da mesma maneira em todos os arquivos para treinamento. A consistência permite que seu modelo aprenda sem entradas conflitantes.
  • Precisão – rotule suas entidades de forma consistente, sem palavras extras desnecessárias. A precisão garante que apenas os dados corretos sejam incluídos na entidade extraída.
  • Integridade – rotule seus dados completamente e não perca nenhuma entidade. A integridade ajuda seu modelo a sempre reconhecer as entidades presentes.

Captura de tela da rotulagem de uma entidade no Language Studio.

Como rotular seus dados

Language Studio é a forma mais simples para rotular seus dados. O Language Studio permite que você veja o arquivo, selecione o início e o fim da entidade e especifique qual entidade ela é.

Cada rótulo que você identificar é salvo em um arquivo que reside em sua conta de armazenamento com seu conjunto de dados, em um arquivo JSON gerado automaticamente. Esse arquivo é usado pelo modelo para aprender a extrair entidades personalizadas. É possível fornecer esse arquivo ao criar seu projeto (se você estiver importando os mesmos rótulos de um projeto diferente, por exemplo), no entanto, ele deve estar nos formatos de dados NER personalizados aceitos. Por exemplo:


{
  "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 Descrição
documents Matriz de documentos rotulados
location Caminho para o arquivo dentro do contêiner conectado ao projeto
language Idioma do arquivo
entities Matriz de entidades presentes no documento atual
regionOffset Posição de caractere inclusivo para o início do texto
regionLength Comprimento em caracteres dos dados usados no treinamento
category Nome da entidade a ser extraída
labels Matriz de entidades rotuladas nos arquivos
offset Posição de caractere inclusivo para o início da entidade
length Comprimento em caracteres da entidade
dataset A qual conjunto de dados o arquivo é atribuído