Skip to content

Anotação de texto

Um guia completo de anotação de texto: classificação, marcação multirrótulo, pontuação e texto livre, e como montar cada tipo de tarefa de texto no Potato com configuração pronta para copiar.

Anotação de texto significa rotular linguagem escrita: separar documentos em categorias, marcar os tópicos de um artigo, pontuar um trecho pela qualidade ou escrever uma correção. É a tarefa de anotação mais comum em processamento de linguagem natural, e foi para ela que o Potato foi criado originalmente. Este guia cobre as tarefas de texto no nível do documento inteiro; para marcar regiões dentro do texto, veja Anotação de trechos.

As tarefas de texto em resumo

  • Classificação de documentos: um único rótulo para o texto inteiro (classificação de texto).
  • Marcação multirrótulo: vários rótulos de uma vez, como tópicos ou avisos de conteúdo.
  • Pontuação e avaliação: uma posição em uma escala, como qualidade ou intensidade de sentimento.
  • Texto livre: uma resposta escrita, uma paráfrase ou uma correção.

Classificação: um rótulo por documento

O carro-chefe da anotação de texto. Use radio quando as categorias são mutuamente exclusivas:

yaml
annotation_schemes:
  - annotation_type: radio
    name: sentiment
    description: "What is the overall sentiment of this review?"
    labels: [Positive, Negative, Neutral]
    sequential_key_binding: true

sequential_key_binding mapeia os rótulos para as teclas 1, 2, 3, para que os anotadores mantenham as mãos no teclado. Em um trabalho com milhares de itens isso representa um grande ganho de velocidade. Veja o design ao vivo de análise de sentimento para um exemplo funcionando.

Multirrótulo: várias etiquetas de uma vez

Quando mais de um rótulo pode se aplicar, use multiselect. Limite a quantidade de seleções para que ela corresponda às suas diretrizes:

yaml
annotation_schemes:
  - annotation_type: multiselect
    name: content_warnings
    description: "Select every content warning that applies."
    labels: [Violence, Profanity, Sexual content, Self-harm, None]
    min_selections: 1
    max_selections: 5

A moderação de conteúdo é uma tarefa de texto multirrótulo clássica; o design de detecção de toxicidade combina uma categoria com um trecho destacado.

Pontuar texto em uma escala

Para capturar o grau em vez da categoria, use uma escala Likert:

yaml
annotation_schemes:
  - annotation_type: likert
    name: helpfulness
    description: "How helpful is this answer?"
    size: 5
    min_label: "Not helpful"
    max_label: "Very helpful"

Veja Escalas de avaliação para os problemas do design de escalas, como o viés de aquiescência e quantos pontos usar.

Texto livre e correções

Às vezes o rótulo mais útil é uma frase que o anotador escreve: uma justificativa, uma reescrita ou uma transcrição. Combine-a com uma categoria e exiba-a só quando for pertinente:

yaml
annotation_schemes:
  - annotation_type: radio
    name: factuality
    description: "Is the claim supported by the source?"
    labels: [Supported, Contradicted, Not enough info]
  - annotation_type: text
    name: evidence
    description: "Quote the sentence that supports your choice."
    label_requirement:
      required: false

Como obter rótulos de texto consistentes

O texto é ambíguo, então a consistência vem do processo ao redor, não da interface:

  1. Escreva diretrizes precisas com uma opção de "não dá para saber".
  2. Faça com que vários anotadores se sobreponham nos mesmos itens.
  3. Acompanhe a concordância entre anotadores e arbitre as discordâncias.
  4. Acelere trabalhos grandes com pré-anotação por LLM e verifique as sugestões à mão.

Leituras adicionais