Skip to content

Control de Calidad

Verificaciones de atención, estándares de oro y métricas de acuerdo entre anotadores.

Potato proporciona funciones integrales de control de calidad para garantizar anotaciones de alta calidad. Esto incluye verificaciones de atención, estándares de oro, soporte de pre-anotación y métricas de acuerdo en tiempo real.

Descripción General

El control de calidad en Potato consta de cuatro características principales:

  1. Verificaciones de Atención - Verifican el compromiso del anotador con elementos de respuesta conocida
  2. Estándares de Oro - Rastrean la precisión contra elementos etiquetados por expertos
  3. Soporte de Pre-anotación - Pre-llenan formularios con predicciones de modelos
  4. Métricas de Acuerdo - Calculan el acuerdo entre anotadores en tiempo real

Verificaciones de Atención

Las verificaciones de atención son elementos con respuestas correctas conocidas que verifican que los anotadores están prestando atención y no haciendo clic aleatoriamente.

Configuración

yaml
attention_checks:
  enabled: true
  items_file: "attention_checks.json"
 
  # How often to inject attention checks
  frequency: 10              # Insert one every 10 items
  # OR
  probability: 0.1           # 10% chance per item
 
  # Optional: flag suspiciously fast responses
  min_response_time: 3.0     # Flag if answered in < 3 seconds
 
  # Failure handling
  failure_handling:
    warn_threshold: 2        # Show warning after 2 failures
    warn_message: "Please read items carefully before answering."
    block_threshold: 5       # Block user after 5 failures
    block_message: "You have been blocked due to too many incorrect responses."

Archivo de Elementos de Verificación de Atención

json
[
  {
    "id": "attn_001",
    "text": "Please select 'Positive' for this item to verify you are reading carefully.",
    "expected_answer": {
      "sentiment": "positive"
    }
  }
]

Estándares de Oro

Los estándares de oro son elementos etiquetados por expertos que se utilizan para medir la precisión del anotador. Por defecto, los estándares de oro son silenciosos - los resultados se registran para revisión del administrador, pero los anotadores no reciben retroalimentación.

Configuración

yaml
gold_standards:
  enabled: true
  items_file: "gold_standards.json"
 
  # How to use gold standards
  mode: "mixed"              # Options: training, mixed, separate
  frequency: 20              # Insert one every 20 items
 
  # Accuracy requirements
  accuracy:
    min_threshold: 0.7       # Minimum required accuracy (70%)
    evaluation_count: 10     # Evaluate after this many gold items
 
  # Feedback settings (disabled by default)
  feedback:
    show_correct_answer: false
    show_explanation: false
 
  # Auto-promotion from high-agreement items
  auto_promote:
    enabled: true
    min_annotators: 3
    agreement_threshold: 1.0   # 1.0 = unanimous

Archivo de Elementos de Estándares de Oro

json
[
  {
    "id": "gold_001",
    "text": "The service was absolutely terrible and I will never return.",
    "gold_label": {
      "sentiment": "negative"
    },
    "explanation": "Strong negative language clearly indicates negative sentiment.",
    "difficulty": "easy"
  }
]

Auto-Promoción

Los elementos pueden convertirse automáticamente en estándares de oro cuando múltiples anotadores están de acuerdo:

yaml
gold_standards:
  auto_promote:
    enabled: true
    min_annotators: 3          # Wait for at least 3 annotators
    agreement_threshold: 1.0   # 100% must agree (unanimous)

Soporte de Pre-anotación

La pre-anotación permite pre-llenar formularios de anotación con predicciones de modelos, útil para flujos de trabajo de aprendizaje activo y corrección.

Configuración

yaml
pre_annotation:
  enabled: true
  field: "predictions"        # Field in data containing predictions
  allow_modification: true    # Can annotators change pre-filled values?
  show_confidence: true
  highlight_low_confidence: 0.7

Formato de Datos

Incluye predicciones en tus elementos de datos:

json
{
  "id": "item_001",
  "text": "I love this product!",
  "predictions": {
    "sentiment": "positive",
    "confidence": 0.92
  }
}

Métricas de Acuerdo

Las métricas de acuerdo entre anotadores en tiempo real usando el alfa de Krippendorff están disponibles en el panel de administración.

Configuración

yaml
agreement_metrics:
  enabled: true
  min_overlap: 2             # Minimum annotators per item
  auto_refresh: true
  refresh_interval: 60       # Seconds between updates

Interpretación del Alfa de Krippendorff

Valor AlfaInterpretación
α >= 0.8Buen acuerdo - confiable para la mayoría de propósitos
0.67 <= α <= 0.8Acuerdo tentativo - se pueden extraer conclusiones tentativas
0.33 <= α <= 0.67Acuerdo bajo - revisar las directrices
α <= 0.33Acuerdo deficiente - problemas significativos

Integración con el Panel de Administración

Visualiza las métricas de control de calidad en el panel de administración en /admin:

  • Verificaciones de Atención: Tasas generales de aprobación/rechazo, estadísticas por anotador
  • Estándares de Oro: Precisión por anotador, análisis de dificultad por elemento
  • Acuerdo: Alfa de Krippendorff por esquema con interpretación
  • Elementos Auto-Promovidos: Lista de elementos promovidos por alto acuerdo

Endpoints de la API

Métricas de Control de Calidad

http
GET /admin/api/quality_control

Devuelve estadísticas de verificaciones de atención y estándares de oro.

Métricas de Acuerdo

http
GET /admin/api/agreement

Devuelve el alfa de Krippendorff por esquema con interpretación.

Ejemplo Completo

yaml
annotation_task_name: "Sentiment Analysis with Quality Control"
 
annotation_schemes:
  - name: sentiment
    annotation_type: radio
    labels: [positive, negative, neutral]
    description: "Select the sentiment of the text"
 
attention_checks:
  enabled: true
  items_file: "data/attention_checks.json"
  frequency: 15
  failure_handling:
    warn_threshold: 2
    block_threshold: 5
 
gold_standards:
  enabled: true
  items_file: "data/gold_standards.json"
  mode: mixed
  frequency: 25
  accuracy:
    min_threshold: 0.7
    evaluation_count: 5
 
agreement_metrics:
  enabled: true
  min_overlap: 2
  refresh_interval: 60

Solución de Problemas

Las verificaciones de atención no aparecen

  1. Verifica que la ruta de items_file sea correcta (relativa al directorio de la tarea)
  2. Comprueba que los elementos tengan los campos requeridos (id, expected_answer)
  3. Asegúrate de que frequency o probability estén configurados

Las métricas de acuerdo muestran "No items with N+ annotators"

  1. Asegúrate de que los elementos hayan sido anotados por múltiples usuarios
  2. Reduce min_overlap si es necesario
  3. Verifica que las anotaciones se estén guardando correctamente

Lectura Adicional

Para detalles de implementación, consulta la documentación fuente.