작업 배정
Potato가 주석 항목을 주석자에게 어떻게 분배하는지 제어합니다. 반복 라운드 연구를 위한 맞춤형 Batch 전략을 포함한 모든 배정 전략과, Prolific 또는 QC로 차단된 작업자가 방치한 배정을 회수하는 방법을 다룹니다.
작업 배정은 각 주석자가 어떤 항목을 보는지, 몇 개를 완료하는지, 각 항목이 몇 건의 주석을 받는지, 그리고 항목이 나타나는 순서를 제어합니다. 이 페이지에서는 Potato의 배정 전략, 반복 라운드 연구 설계를 위한 맞춤형 Batch 전략, 그리고 크라우드 작업자가 방치한 배정을 회수하는 방법을 다룹니다.
배정 전략
assignment_strategy를 다음 중 하나로 설정합니다.
| 전략 | 동작 |
|---|---|
random | 항목을 무작위로 배정합니다(기본값). |
fixed_order | 항목을 데이터셋 순서대로 배정합니다. |
least_annotated | 지금까지 주석 수가 가장 적은 항목을 우선합니다. |
max_diversity | 기존 주석 간 의견 불일치가 가장 큰 항목을 우선합니다. |
diversity_clustering | 항목을 임베딩하고 클러스터링한 뒤, 클러스터 전반에 걸쳐 라운드 로빈 방식으로 제공합니다. |
batch | 배정을 명시적인 주석자/항목 코호트로 제한합니다(아래 참조). |
priority | 우선순위가 가장 높은 항목을 먼저 제공합니다. 분류 대기열을 참조하세요. |
active_learning | 모델을 사용하여 불확실한 항목을 우선합니다. |
assignment_strategy: random
max_annotations_per_user: 10 # -1 for unlimited
max_annotations_per_item: 3 # -1 for unlimited맞춤형 Batch 배정
batch 전략은 미리 정의된 항목 배치를 특정 주석자에게 배정합니다. 이는 반복 라운드 연구 설계를 위해 만들어졌으며, 1차 라운드 배치를 본 동일한 주석자가 그에 대응하는 2차 라운드 배치를 받아야 하는 경우에 사용합니다.
assignment_strategy: batch
num_annotators_per_item: 4
batch_assignment:
groups:
- name: round1_batch_a
annotators: ["u1", "u2", "u3", "u4"]
instances: ["r2_item_001", "r2_item_002"]긴 배치의 경우, 인스턴스 목록을 별도의 데이터 파일(json, jsonl, csv, tsv 또는 parquet)로 옮깁니다. ID는 item_properties.id_key로 읽습니다.
batch_assignment:
groups:
- name: round1_batch_a
annotators: ["u1", "u2", "u3", "u4"]
instances_file: batches/round1_batch_a.csv항목에서 허용된 주석자를 직접 지정할 수도 있는데, 이는 2차 라운드 데이터가 1차 라운드 주석에서 생성될 때 유용합니다.
assignment_strategy: batch
batch_assignment:
annotator_key: round1_annotators구성된 코호트 밖에 있는 사용자는 이 전략에서 어떤 항목도 받지 않습니다.
방치된 배정 회수
크라우드소싱 배치에서는 작업자가 배정받은 항목을 받은 뒤 반환하거나 시간이 초과되거나 품질 검사에 실패할 수 있습니다. instance_reclaim을 활성화하면 Potato는 배정되었지만 주석이 달리지 않은 항목을 풀로 되돌려 다시 배정할 수 있도록 합니다.
instance_reclaim:
enabled: true
timeout_hours: 24
preserve_completed_annotations: true회수는 다음 경우에 자동으로 실행됩니다. 배정이 실행될 때 오래된 배정에 대해, 제출 상태가 RETURNED, TIMED-OUT 또는 REJECTED가 되는 Prolific 작업자에 대해, 그리고 주의 검사 실패로 차단된 사용자(이들은 주석이 달리지 않은 항목을 즉시 해제합니다)에 대해 실행됩니다.
회수된 작업자의 완료된 주석을 보존할지 여부를 사유별로 결정할 수 있습니다. 이를 통해 시간이 초과된 Prolific 작업자의 부분 작업은 신뢰하면서, 품질 관리로 차단된 작업자의 모든 것은 폐기할 수 있습니다.
instance_reclaim:
enabled: true
timeout_hours: 24
preserve_completed_annotations: true # default for reasons not overridden below
prolific:
status_policies:
TIMED-OUT:
preserve_completed_annotations: true
RETURNED:
preserve_completed_annotations: true
REJECTED:
preserve_completed_annotations: false
quality_control:
preserve_completed_annotations: falsepreserve_completed_annotations가 false이면 Potato는 해당 사용자가 배정받은 항목에 대한 주석을 지우고, 그 주석자 기여 기록을 제거하며, 항목을 풀로 되돌립니다. 차단을 유발한 실패한 주의 검사 응답은 결코 보존되지 않습니다.
관련 항목
- 이질적 커버리지 — 항목별 주석자 상한 및 중복 샘플링
- 크라우드소싱 — MTurk 및 Prolific 연동
- 신호 기반 분류 대기열 —
priority전략
구현 세부 사항은 소스 문서를 참조하세요.