MACE Competence Estimation
MACE algorithm का उपयोग करके annotator competence और true labels का अनुमान लगाएँ।
MACE Competence Estimation
MACE (Multi-Annotator Competence Estimation) एक Variational Bayes EM algorithm है जो प्रत्येक item के लिए true labels और annotator competence scores दोनों का संयुक्त रूप से अनुमान लगाता है। यह प्रत्येक annotator को "knowing" (सही labels देता है) या "guessing" (random labels देता है) के रूप में model करता है, जो 0.0 और 1.0 के बीच एक competence score देता है।
MACE का उपयोग कब करें
MACE तब उपयोगी है जब आपके पास कई annotators एक ही items को label कर रहे हों और आप चाहते हों कि:
- यह पहचानें कि कौन से annotators सबसे विश्वसनीय हैं
- Annotator contributions को weight करके उच्च-गुणवत्ता वाले predicted labels उत्पन्न करें
- Automatically कम-गुणवत्ता वाले annotators (spammers) का पता लगाएँ
- Per-item label uncertainty (entropy) मापें
MACE categorical annotation types के साथ काम करता है: radio, likert, select, और multiselect। यह free-text, span, slider, या numeric annotations पर लागू नहीं होता।
यह कैसे काम करता है
- Data extraction: Potato सभी annotators में प्रत्येक schema के लिए सभी annotations एकत्र करता है, एक items-by-annotators matrix बनाता है
- EM algorithm: MACE Variational Bayes EM algorithm के कई random restarts चलाता है, सबसे अच्छे log-likelihood वाला solution रखता है
- Output: प्रत्येक schema के लिए, MACE predicted labels, label entropy (uncertainty), और per-annotator competence scores उत्पन्न करता है
- Triggering: MACE हर N नए annotations (configurable) के बाद स्वचालित रूप से चलता है, या admin API के माध्यम से manually trigger किया जा सकता है
कॉन्फ़िगरेशन
mace:
enabled: true
# Run MACE after every N new annotations
trigger_every_n: 10
# Minimum annotators per item before including in computation
min_annotations_per_item: 3
# Minimum eligible items before MACE will run
min_items: 5
# EM algorithm parameters
num_restarts: 10
num_iters: 50
alpha: 0.5 # Prior for annotator spamming (Beta distribution)
beta: 0.5 # Prior for guessing strategy (Dirichlet distribution)न्यूनतम कॉन्फ़िगरेशन
mace:
enabled: trueसभी defaults का उपयोग करता है: हर 10 annotations के बाद trigger होता है, प्रति item 3 annotators की आवश्यकता होती है, न्यूनतम 5 eligible items, 50 iterations के साथ 10 restarts।
कॉन्फ़िगरेशन Reference
| Option | Type | Default | विवरण |
|---|---|---|---|
enabled | boolean | false | MACE सक्षम करें |
trigger_every_n | integer | 10 | हर N नए annotations के बाद चलाएँ |
min_annotations_per_item | integer | 3 | प्रति item न्यूनतम annotators (>== 2 होना चाहिए) |
min_items | integer | 5 | चलने से पहले न्यूनतम eligible items |
num_restarts | integer | 10 | EM के लिए Random restarts |
num_iters | integer | 50 | प्रति restart EM iterations |
alpha | float | 0.5 | Annotator spamming के लिए Prior |
beta | float | 0.5 | Guessing strategy के लिए Prior |
Admin API Endpoints
सभी MACE endpoints के लिए X-API-Key header के माध्यम से admin authentication आवश्यक है।
Overview
curl http://localhost:8000/admin/api/mace/overview \
-H "X-API-Key: your-admin-key"Annotator competence scores और MACE status लौटाता है:
{
"enabled": true,
"has_results": true,
"schemas": ["sentiment"],
"annotator_competence": {
"user_1": {"average": 0.92, "per_schema": {"sentiment": 0.92}},
"user_2": {"average": 0.85, "per_schema": {"sentiment": 0.85}},
"user_3": {"average": 0.45, "per_schema": {"sentiment": 0.45}}
},
"total_annotations": 30,
"annotations_until_next_run": 0
}Predictions
curl "http://localhost:8000/admin/api/mace/predictions?schema=sentiment" \
-H "X-API-Key: your-admin-key"प्रत्येक item के लिए predicted labels और entropy लौटाता है।
Manual Trigger
curl -X POST http://localhost:8000/admin/api/mace/trigger \
-H "X-API-Key: your-admin-key"परिणामों की व्याख्या
Annotator Competence
- 0.9 - 1.0: अत्यधिक विश्वसनीय annotator
- 0.7 - 0.9: अच्छा annotator, कभी-कभी असहमति
- 0.5 - 0.7: मध्यम annotator, अतिरिक्त training से लाभ हो सकता है
- 0.5 से नीचे: संभावित spammer या भ्रमित annotator
Label Entropy
- 0.0 के निकट: Predicted label में उच्च confidence
- 0.5 से ऊपर: मध्यम अनिश्चितता, item वास्तव में ambiguous हो सकता है
- log(num_labels) के निकट: अधिकतम अनिश्चितता, कोई consensus नहीं
Adjudication एकीकरण
जब MACE और adjudication दोनों सक्षम हों, MACE predicted labels adjudication interface में एक अतिरिक्त signal के रूप में दिखाई देते हैं:
adjudication:
enabled: true
adjudicator_users: ["admin"]
min_annotations: 2
mace:
enabled: true
trigger_every_n: 10
min_annotations_per_item: 2सर्वोत्तम प्रथाएँ
- Defaults से शुरू करें - default configuration अधिकांश scenarios के लिए अच्छी तरह काम करता है
- Competence scores की निगरानी करें - समय के साथ annotator quality ट्रैक करने के लिए admin dashboard का उपयोग करें
- Training phases के साथ मिलाएँ - Annotators को qualify करने के लिए training का उपयोग करें, फिर ongoing quality की निगरानी के लिए MACE
- उचित thresholds निर्धारित करें - छोटे annotation projects के लिए
min_annotations_per_itemकम करें
आगे पढ़ें
- Quality Control - अन्य quality control mechanisms
- Admin Dashboard - Annotation प्रगति की निगरानी
- AI Support - AI-assisted annotation
कार्यान्वयन विवरण के लिए, source documentation देखें।