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.
Cuatro controles de calidad, un dataset fiable
Descripción General
El control de calidad en Potato consta de cuatro características principales:
- Verificaciones de Atención - Verifican el compromiso del anotador con elementos de respuesta conocida
- Estándares de Oro - Rastrean la precisión contra elementos etiquetados por expertos
- Soporte de Pre-anotación - Pre-llenan formularios con predicciones de modelos
- 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
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
[
{
"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
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 = unanimousArchivo de Elementos de Estándares de Oro
[
{
"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:
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
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.7Formato de Datos
Incluye predicciones en tus elementos de datos:
{
"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
agreement_metrics:
enabled: true
min_overlap: 2 # Minimum annotators per item
refresh_interval: 60 # Seconds between updatesInterpretación del Alfa de Krippendorff
| Valor Alfa | Interpretación |
|---|---|
| α >= 0.8 | Buen acuerdo - confiable para la mayoría de propósitos |
| 0.67 <= α <= 0.8 | Acuerdo tentativo - se pueden extraer conclusiones tentativas |
| 0.33 <= α <= 0.67 | Acuerdo bajo - revisar las directrices |
| α <= 0.33 | Acuerdo 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
GET /admin/api/quality_controlDevuelve estadísticas de verificaciones de atención y estándares de oro.
Métricas de Acuerdo
GET /admin/api/agreementDevuelve el alfa de Krippendorff por esquema con interpretación.
Ejemplo Completo
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:
gold_standards:
enabled: true
items_file: "data/gold_standards.json"
mode: mixed
frequency: 25
accuracy:
agreement_metrics:
enabled: true
min_overlap: 2
refresh_interval: 60Solución de Problemas
Las verificaciones de atención no aparecen
- Verifica que la ruta de
items_filesea correcta (relativa al directorio de la tarea) - Comprueba que los elementos tengan los campos requeridos (
id,expected_answer) - Asegúrate de que
frequencyoprobabilityestén configurados
Las métricas de acuerdo muestran "No items with N+ annotators"
- Asegúrate de que los elementos hayan sido anotados por múltiples usuarios
- Reduce
min_overlapsi es necesario - Verifica que las anotaciones se estén guardando correctamente
Preguntas frecuentes
Las preguntas siguientes tratan cómo montar un proceso de control de calidad y cómo los estándares de oro siguen la precisión del anotador a lo largo de una sesión.
¿Cómo se monta un proceso de control de calidad para la anotación?
Mezcla en la cola elementos con respuestas conocidas y mide el acuerdo en los elementos que comparten varios anotadores. En Potato, las verificaciones de atención señalan a los anotadores que no están leyendo, los estándares de oro miden la precisión de cada anotador frente a las etiquetas de expertos y las métricas de acuerdo muestran en qué preguntas discrepan los anotadores. Cada uno es un bloque propio en la configuración YAML de la tarea.
¿Cómo detectan los estándares de oro la deriva de los anotadores?
Los estándares de oro siguen apareciendo con una frecuencia fija, por ejemplo uno cada 20 elementos, así que la precisión frente a las etiquetas de expertos se mide durante todo el tiempo que trabaja un anotador y no una sola vez en el entrenamiento. Por defecto, Potato registra las respuestas en silencio y muestra a un anotador en el panel de administración cuando su precisión, sobre al menos evaluation_count estándares de oro, cae por debajo de accuracy.min_threshold. Esa precisión es acumulada sobre todas las respuestas del anotador a estándares de oro, así que un descenso al final de una sesión larga la mueve despacio. Los fallos en las verificaciones de atención se cuentan en lugar de promediarse, así que una racha repentina de fallos alcanza el umbral de advertencia sin importar cuántas verificaciones haya superado antes el anotador.
Lectura Adicional
- Fase de Entrenamiento - Cualificación del anotador
- Panel de Administración - Monitoreo de métricas
- Asignación de Tareas - Controlar la distribución de anotaciones
Para detalles de implementación, consulta la documentación fuente.