Metriche per la valutazione degli algoritmi di classificazione


15

Sono interessato a esaminare diverse metriche per gli algoritmi di classificazione: ce ne sono alcuni elencati nella pagina di Wikipedia per imparare a classificare, tra cui:

• Precisione media media (MAP);

• DCG e NDCG;

• Precisione @ n, NDCG @ n, dove "@n" indica che le metriche vengono valutate solo sui primi n documenti;

• rango reciproco medio;

• Tau di Kendall

• Spearman's Rho

• Rango reciproco previsto

• La scoperta di Yandex

ma non mi è chiaro quali sono i vantaggi / gli svantaggi di ciascuno o quando è possibile sceglierne uno rispetto all'altro (o cosa significherebbe se un algoritmo superasse un altro su NDGC ma fosse peggio se valutato con MAP).

C'è un posto dove posso andare per saperne di più su queste domande?

Risposte:


29

In realtà sto cercando la stessa risposta, tuttavia dovrei essere in grado di rispondere almeno parzialmente alla tua domanda.

Tutte le metriche che hai citato hanno tratti diversi e, sfortunatamente, quello che dovresti scegliere dipende da cosa vorresti effettivamente misurare. Ecco alcune cose che varrebbe la pena tenere a mente:

  • Spearman's rho metrica penalizza gli errori in cima all'elenco con lo stesso peso delle discrepanze in basso, quindi nella maggior parte dei casi questa non è la metrica da utilizzare per valutare le classifiche
  • DCG e NDCG sono una delle poche metriche che tengono conto della funzione di utilità non binaria, quindi puoi descrivere quanto sia utile un record e non se sia utile.
  • DCG e NDCG hanno pesate fisse per le posizioni, quindi un documento in una determinata posizione ha sempre lo stesso guadagno e lo stesso sconto indipendentemente dai documenti mostrati sopra
  • Di solito preferiresti NDCG rispetto a DCG , perché normalizza il valore in base al numero di documenti pertinenti
  • CARTA GEOGRAFICA dovrebbe essere un classico e una metrica "go-to" per questo problema e sembra essere uno standard nel campo.
  • (N) DCG dovrebbe essere sempre calcolato per un numero fisso di record (@k), perché ha una coda lunga (molti record irrilevanti alla fine della classifica influenzano fortemente la metrica). Questo non si applica a MAP .
  • Rango reciproco medio segna solo la posizione del primo documento pertinente, quindi se ti interessa il maggior numero possibile di documenti pertinenti per essere in cima all'elenco, questa non dovrebbe essere la tua scelta
  • La tau di Kendall gestisce solo la funzione di utilità binaria, inoltre dovrebbe essere calcolata @k (simile a NDCG )

Risorse preziose:

Non riesco a pubblicare più link, a causa del nuovo account :) Se qualcuno ha qualche commento o idea in più, sarei felice di ascoltarli!


Penso che ora hai abbastanza punti per aggiornare questa risposta se hai più link.
Yash Kumar Atri,

5

In molti casi in cui applichi algoritmi di classificazione (ad es. Ricerca di Google, consigli sui prodotti Amazon) hai centinaia e migliaia di risultati. L'utente vuole solo guardare in alto ~ 20 o giù di lì. Quindi il resto è completamente irrilevante.

K

Se questo è vero per la tua applicazione, ciò ha implicazioni dirette sulla metrica:

  1. KK
  2. 2K

KK .

Precisione di classificazione top-k per la classifica

Per la verità di base, potrebbe essere difficile definire un ordine. E se si distingue solo rilevante / non rilevante, allora si è effettivamente in un caso di classificazione!

La precisione top-n è una metrica per la classificazione. Vedi Qual è la definizione di precisione Top-n? .

precisione top-k=con quale frequenza c'era almeno un elemento rilevante nella top-k di una query di classificazione?classifiche

K elementi e vedi se contiene almeno un elemento rilevante.

KK[5,20]

K

Precisione @ k

Precisione @ k=numero di elementi pertinenti nella top-kK[0,1], Più alto è meglio

Cosa ti dice:

  • se è elevato -> Molto di ciò che mostri all'utente è rilevante per loro
  • se è basso -> Perderai tempo dai tuoi utenti. Gran parte di ciò che mostri loro, non è rilevante per loro

Richiamo @ k

Richiamo @ k=numero di elementi pertinenti nella top-knumero totale di articoli pertinenti[0,1], Più alto è meglio

Cosa significa:

  • Se è alto: mostri quello che hai! Dai loro tutti gli articoli pertinenti.
  • Se è basso: rispetto alla quantità totale di articoli rilevanti, k è piccolo / gli articoli rilevanti nella parte superiore k sono piccoli. Per questo motivo, il solo richiamo di @ k potrebbe non essere così significativo. Se combinato con un'alta precisione @ k, l'aumento di k potrebbe avere senso.

3

Di recente ho dovuto scegliere una metrica per valutare gli algoritmi di classificazione multilabel e sono arrivato a questo argomento, il che è stato davvero utile. Ecco alcune aggiunte alla risposta di stpk, che sono state utili per fare una scelta.

  • MAP può essere adattato ai problemi multilabel, al costo di un'approssimazione
  • MAP non deve essere calcolato in k ma la versione multilabel potrebbe non essere adattata quando la classe negativa è preponderante
  • MAP e (N) DCG possono entrambi essere riscritti come media ponderata dei valori di pertinenza classificati

Dettagli

Concentriamoci sulla precisione media (AP) poiché la precisione media media (MAP) è solo una media di AP su diverse query. AP è correttamente definito sui dati binari come l'area sotto la curva di richiamo di precisione, che può essere riscritta come media delle precisioni su ciascun elemento positivo. (vedi l'articolo di Wikipedia su MAP ) Una possibile approssimazione è di definirlo come la media delle precisioni per ciascunoarticolo. Purtroppo, perdiamo la bella proprietà che gli esempi negativi classificati alla fine dell'elenco non hanno alcun impatto sul valore di AP. (Ciò è particolarmente triste quando si tratta di valutare un motore di ricerca, con esempi molto più negativi di esempi positivi. Una possibile soluzione alternativa è sottocampionare gli esempi negativi, a costo di altri aspetti negativi, ad esempio le query con elementi più positivi diventeranno uguali difficile alle domande con pochi esempi positivi.)

D'altra parte, questa approssimazione ha la proprietà piacevole che si generalizza bene al caso multilabel. In effetti, nel caso binario, la precisione nella posizione k può anche essere interpretata come la rilevanza media prima della posizione k, dove la rilevanza di un esempio positivo è 1 e la rilevanza di un esempio negativo è 0. Questa definizione si estende in modo abbastanza naturale a il caso in cui esistono più di due diversi livelli di pertinenza. In questo caso, AP può anche essere definito come la media delle rilevanze per ciascuna posizione.

Questa espressione è quella scelta dal relatore del video citato da stpk nella loro risposta. Mostra in questo video che l'AP può essere riscritto come media ponderata delle pertinenze, del peso del fileK-th elemento nella classifica essere

wKUNP=1Klog(KK)

dove Kè il numero di elementi da classificare. Ora abbiamo questa espressione, possiamo paragonarla al DCG. In effetti, DCG è anche una media ponderata delle pertinenze classificate, i pesi essendo:

wKDCsol=1log(K+1)

Da queste due espressioni, possiamo dedurre che - AP pesa i documenti da 1 a 0. - DCG pesa i documenti indipendentemente dal numero totale di documenti.

In entrambi i casi, se esistono esempi molto più irrilevanti di esempi pertinenti, il peso totale del positivo può essere trascurabile. Per AP, una soluzione alternativa consiste nel sottocampionare i campioni negativi, ma non sono sicuro di come scegliere la proporzione del sottocampionamento, nonché se renderlo dipendente dalla query o dal numero di documenti positivi. Per DCG, possiamo tagliarlo a k, ma sorgono le stesse domande.

Sarei felice di saperne di più, se qualcuno qui ha lavorato sull'argomento.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.