Asignación de Tareas
Controla cómo se distribuyen las instancias de anotación a los anotadores.
Asignación de Tareas
Potato proporciona estrategias flexibles de asignación de tareas para controlar cómo se distribuyen las instancias de anotación a los anotadores.
Descripción General
La asignación de tareas controla:
- Qué ítems ve cada anotador
- Cuántos ítems completa cada anotador
- Cuántas anotaciones recibe cada ítem
- El orden en que se presentan los ítems
Opciones Clave de Configuración
| Opción | Descripción | Predeterminado |
|---|---|---|
assignment_strategy | Estrategia para asignar ítems | random |
max_annotations_per_user | Máximo de ítems por anotador | ilimitado |
max_annotations_per_item | Anotaciones objetivo por ítem | 3 |
Estrategias de Asignación
Asignación Aleatoria
Asigna ítems aleatoriamente a los anotadores, asegurando una distribución imparcial.
assignment_strategy: random
max_annotations_per_item: 3Ideal para: Tareas generales de anotación donde el orden no importa.
Asignación en Orden Fijo
Asigna ítems en el orden en que aparecen en el conjunto de datos.
assignment_strategy: fixed_order
max_annotations_per_item: 2Ideal para: Tareas donde los anotadores deben ver los ítems en una secuencia específica.
Asignación por Menos Anotado
Prioriza ítems con menos anotaciones existentes, asegurando una distribución equitativa.
assignment_strategy: least_annotated
max_annotations_per_item: 5Ideal para: Asegurar que todos los ítems reciban cobertura adecuada antes de que cualquier ítem obtenga anotaciones excesivas.
Asignación por Máxima Diversidad
Prioriza ítems con mayor desacuerdo entre las anotaciones existentes.
assignment_strategy: max_diversity
max_annotations_per_item: 4Ideal para: Control de calidad y resolución de ítems ambiguos.
Asignación por Aprendizaje Activo
Usa aprendizaje automático para priorizar instancias inciertas.
assignment_strategy: active_learning
active_learning:
enabled: true
schema_names: ["sentiment"]
min_annotations_per_instance: 2
min_instances_for_training: 20
update_frequency: 10Consulta Active Learning para la configuración completa.
Configuración
Configuración Moderna (Recomendada)
# Strategy selection
assignment_strategy: random
# Limits
max_annotations_per_user: 10 # -1 for unlimited
max_annotations_per_item: 3 # -1 for unlimited
# Optional: nested configuration
assignment:
strategy: random
max_annotations_per_item: 3
random_seed: 1234Configuración Heredada
La configuración anterior automatic_assignment todavía es compatible:
automatic_assignment:
on: true
output_filename: task_assignment.json
sampling_strategy: random # 'random' or 'ordered'
labels_per_instance: 3 # Annotations per item
instance_per_annotator: 5 # Items per annotator
test_question_per_annotator: 0Preguntas de Prueba
Inserta preguntas de verificación de atención en la cola de anotación:
Definición de Preguntas de Prueba
Agrega _testing al ID de la instancia en tu archivo de datos:
text,id
"This is test question 1",0_testing
"Regular item",dkjfdO en JSON:
[
{"id": "0_testing", "text": "This is a test question"},
{"id": "regular_001", "text": "Normal annotation item"}
]Configuración
automatic_assignment:
on: true
test_question_per_annotator: 2 # Insert 2 test questions per annotatorEjemplos de Configuración
Asignación Aleatoria Básica
annotation_task_name: "Sentiment Analysis"
assignment_strategy: random
max_annotations_per_user: 20
max_annotations_per_item: 3Asignación Enfocada en Calidad
annotation_task_name: "Quality Annotation"
assignment_strategy: max_diversity
max_annotations_per_item: 5
max_annotations_per_user: 50Configuración de Crowdsourcing
annotation_task_name: "Crowdsourced Task"
assignment_strategy: random
max_annotations_per_user: 10
max_annotations_per_item: 3
# Crowdsourcing settings
hide_navbar: true
jumping_to_id_disabled: true
login:
type: url_direct
url_argument: workerIdConfiguración de Aprendizaje Activo
assignment_strategy: active_learning
active_learning:
enabled: true
schema_names: ["sentiment", "topic"]
min_annotations_per_instance: 2
min_instances_for_training: 20
update_frequency: 10
classifier_name: "sklearn.linear_model.LogisticRegression"
vectorizer_name: "sklearn.feature_extraction.text.TfidfVectorizer"Integración con el Panel de Administración
Monitorea y ajusta la configuración de asignación a través del Panel de Administración:
- Navega a
/admin - Ve a la pestaña Configuration
- Modifica:
- Max Annotations per User
- Max Annotations per Item
- Assignment Strategy
Los cambios surten efecto inmediatamente sin reiniciar el servidor.
Lectura Adicional
- Active Learning - Priorización de asignación basada en ML
- Quality Control - Verificaciones de atención y estándares de referencia
- Category Assignment - Enrutar ítems por experiencia del anotador
- Crowdsourcing Integration - Integración con MTurk y Prolific
Para detalles de implementación, consulta la documentación fuente.