Rotular seus dados.

Concluído

Rotular ou marcar seus dados corretamente é uma parte importante do processo de criação de um modelo de extração de entidade personalizadas. Os rótulos identificam exemplos de entidades específicas no texto usadas para treinar o modelo. É preciso ter atenção a três fatores:

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

Screenshot of labeling an entity in Language Studio.

Como rotular seus dados

O Language Studio é o método mais direto para rotular seus dados. O Estúdio de Linguagem permite que você veja o arquivo, selecione o início e o fim da sua entidade e especifique qual entidade ela é.

Cada rótulo que você identifica é salvo em um arquivo JSON gerado automaticamente que reside em sua conta de armazenamento com seu conjunto de dados. 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), entretanto, 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 Linguagem 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