L'accordo tra annotatori spiegato
Guida pratica all'accordo tra annotatori: percentuale di accordo, kappa di Cohen e di Fleiss, alpha di Krippendorff, quando usare ciascuno e come Potato li riporta.
L'accordo tra annotatori (IAA) misura quanto spesso annotatori indipendenti assegnano la stessa etichetta. È la prova standard che un task di annotazione è ben definito e che le etichette prodotte sono affidabili. Un accordo basso di solito significa che le linee guida non sono chiare, non che gli annotatori siano stati sbrigativi.
L'argomento generale è l'affidabilità tra valutatori. Potato calcola l'accordo in tempo reale nella dashboard di amministrazione, vedi Controllo qualità.
Perché la percentuale di accordo grezza non basta
La misura più semplice è la percentuale di accordo: la frazione di elementi che gli annotatori hanno etichettato in modo identico. Il problema è che una parte dell'accordo capita per caso. Se due annotatori scelgono entrambi «positivo» nel 90% dei casi, concorderanno quasi sempre anche etichettando a caso. Le misure corrette per il caso risolvono questo problema.
Un coefficiente corretto per il caso ha questa forma:
P_observed − P_expected
κ = ─────────────────────────
1 − P_expected
dove P_observed è l'accordo effettivo e P_expected è l'accordo atteso per caso. Un valore di 1 indica accordo perfetto, 0 indica il livello del caso.
Le tre che userai davvero
- Kappa di Cohen: due annotatori, etichette categoriali. La scelta classica per una coppia.
- Kappa di Fleiss: più di due annotatori, etichette categoriali, quando elementi diversi possono essere giudicati da valutatori diversi.
- Alpha di Krippendorff: l'opzione più generale. Funziona con qualsiasi numero di annotatori, gestisce i dati mancanti e supporta dati nominali, ordinali, a intervalli e di rapporto. È quella che Potato riporta di default.
Usa il kappa per semplici coppie con etichette categoriali; passa all'alpha di Krippendorff quando hai molti annotatori, una sovrapposizione incompleta o etichette ordinate o continue, dove sbagliare di uno dovrebbe pesare meno che sbagliare di quattro.
Interpretare il numero
Non esiste una soglia universale, ma per alpha e kappa si usa spesso questa indicazione di massima:
- ≥ 0.80: abbastanza alto da farci affidamento.
- 0.67–0.80: utilizzabile per conclusioni provvisorie, ma vale la pena esaminare i disaccordi.
- < 0.67: rivedi le linee guida prima di fidarti delle etichette.
Prendili come spunti per indagare, non come esami da superare. Guarda sempre quali elementi e quali etichette generano il disaccordo.
Misurarlo in Potato
Fai lavorare gli annotatori in sovrapposizione su un sottoinsieme condiviso, poi attiva il calcolo dell'accordo:
agreement_metrics:
enabled: true
# Krippendorff's alpha is reported in the admin dashboard.Per i task a span e quelli strutturati, misura l'accordo al livello che ti interessa davvero (match esatto degli span o sovrapposizione), perché le metriche a livello di documento nascondono i disaccordi sui confini.
Quando l'accordo è basso
- Leggi gli elementi su cui c'è disaccordo: è ambigua la linea guida o è l'elemento a essere davvero difficile?
- Rendi le definizioni più stringenti e aggiungi i casi difficili come esempi. Vedi Scrivere le linee guida di annotazione.
- Rifai il pilota. Se su task genuinamente soggettivi l'accordo resta basso, valuta di registrare il disaccordo stesso invece di forzare una risposta unica.