Skip to content

Anotación de texto

Una guía completa de la anotación de texto: clasificación, etiquetado multietiqueta, puntuación y texto libre, y cómo construir cada tipo de tarea de texto en Potato con configuración lista para copiar.

La anotación de texto consiste en etiquetar lenguaje escrito: clasificar documentos en categorías, marcar los temas de un artículo, puntuar un pasaje por su calidad o escribir una corrección. Es la tarea de anotación más común en el procesamiento del lenguaje natural, y es para lo que Potato se creó en un principio. Esta guía cubre las tareas de texto a nivel de documento completo; para marcar regiones dentro del texto, consulta Anotación de tramos.

Las tareas de texto de un vistazo

  • Clasificación de documentos: una etiqueta para todo el texto (clasificación de texto).
  • Etiquetado multietiqueta: varias etiquetas a la vez, como temas o avisos de contenido.
  • Puntuación y valoración: una posición en una escala, como la calidad o la intensidad del sentimiento.
  • Texto libre: una respuesta escrita, una paráfrasis o una corrección.

Clasificación: una etiqueta por documento

El caballo de batalla de la anotación de texto. Usa radio cuando las categorías son mutuamente excluyentes:

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 asigna las etiquetas a las teclas 1, 2, 3, para que los anotadores mantengan las manos en el teclado. En un trabajo de miles de elementos esto supone una gran aceleración. Mira el diseño de análisis de sentimiento en vivo para ver un ejemplo funcionando.

Multietiqueta: varias etiquetas a la vez

Cuando puede aplicarse más de una etiqueta, usa multiselect. Limita el número de selecciones para que coincida con tus directrices:

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

La moderación de contenido es una tarea de texto multietiqueta clásica; el diseño de detección de toxicidad combina una categoría con un tramo resaltado.

Puntuar texto en una escala

Para captar el grado en lugar de la categoría, usa una escala de 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"

Consulta Escalas de valoración para conocer los problemas del diseño de escalas, como el sesgo de aquiescencia y cuántos puntos usar.

Texto libre y correcciones

A veces la etiqueta más útil es una frase que escribe el anotador: una justificación, una reescritura o una transcripción. Combínala con una categoría y muéstrala solo cuando sea 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

Cómo obtener etiquetas de texto consistentes

El texto es ambiguo, así que la consistencia proviene del proceso que lo rodea, no de la interfaz:

  1. Redacta directrices precisas con una opción de "no se puede saber".
  2. Haz que varios anotadores se solapen en los mismos elementos.
  3. Haz un seguimiento de la concordancia entre anotadores y arbitra los desacuerdos.
  4. Acelera los trabajos grandes con preanotación con LLM y verifica las sugerencias a mano.

Lecturas adicionales