Qual è il modo corretto per testare il significato dei risultati della classificazione


21

Esistono molte situazioni in cui è possibile addestrare diversi classificatori o utilizzare diversi metodi di estrazione delle funzionalità. In letteratura gli autori spesso danno l'errore di classificazione medio su una serie di divisioni casuali dei dati (cioè dopo una convalida incrociata doppiamente annidata) e talvolta danno anche varianze sull'errore rispetto alle divisioni. Tuttavia, questo da solo non è sufficiente per dire che un classificatore è significativamente migliore di un altro. Ho visto molti approcci diversi a questo - usando test Chi-quadrato, t-test, ANOVA con test post-hoc ecc.

Quale metodo dovrebbe essere usato per determinare la significatività statistica? Alla base di questa domanda è: quali ipotesi dovremmo fare sulla distribuzione dei punteggi di classificazione?


2
Potresti pubblicare documenti di esempio con: "Ho visto molti approcci diversi a questo - usando test Chi-quadrato, t-test, ANOVA con test post-hoc ecc."? Sono davvero interessato a questo.
jb.

Risposte:


9

Oltre all'eccellente risposta di @ jb., Vorrei aggiungere che è possibile utilizzare il test di McNemar sullo stesso set di test per determinare se un classificatore è significativamente migliore dell'altro. Questo funzionerà solo per problemi di classificazione (ciò che l'opera originale di McNemar definisce un "tratto dicotomico"), il che significa che i classificatori lo ottengono giusto o sbagliato, senza spazio nel mezzo.


Che dire nello scenario in cui il classificatore può passare? Come dice, non lo sa. Puoi ancora usare il test di McNemar allora?
S0rin,

5

Poiché la distribuzione degli errori di classificazione è una distribuzione binaria (o c'è una classificazione errata o non ce n'è nessuna) --- Direi che l'uso del Chi-quadrato non è sensato.

Anche il confronto delle efficienze dei classificatori che funzionano sugli stessi set di dati è sensato --- "Nessun teorema del pranzo libero" afferma che tutti i modelli hanno la stessa efficienza media su tutti i set di dati, quindi quale modello apparirà migliore dipenderà solo da quali set di dati erano scelto di addestrarli http://en.wikipedia.org/wiki/No_free_lunch_in_search_and_optimization .

Se si sta confrontando l'efficienza dei modelli A e B rispetto al set di dati D, penso che l'efficienza media + media sia sufficiente per fare una scelta.

Inoltre, se uno ha molti modelli che hanno un'efficienza accettabile (e sono linearmente indipendenti l'uno dall'altro), preferirei costruire un modello d'insieme piuttosto che scegliere il miglior modello.


Ma per un singolo classificatore si ottiene una serie di punteggi (ad esempio MSE oltre 100 divisioni), che potrebbe essere nell'intervallo [0,1] per esempio. Penso che sarebbe troppo costoso prendere i risultati di ogni singola corsa e analizzarli.
TCD

Sì. Ma in questo caso media + stddev è sufficiente per testare se uno è significativamente migliore dell'altro, proprio come con qualsiasi altra misurazione.
jb.

2
Non sono così sicuro. Mean & stddev presuppone la gaussianità per iniziare, e in secondo luogo questo non tiene conto di quanti confronti sono stati fatti (ad esempio potrebbe essere necessaria la correzione di Bonferroni )
tdc

1
È lo stesso nella teoria di base della misurazione. Supponiamo di avere un micrometro e vogliamo verificare se due aste hanno lo stesso diametro, prendiamo 100 misurazioni di entrambe le barre e controlliamo se media + stddev si sovrappongono. In entrambi i casi (misura della verga e metrica del modello) assumiamo semplicemente la distribuzione gaussiana dei risultati, l'unico argomento sensato è il teorema del limite centrale .
jb.

3

Raccomando l'articolo di Tom Dietterich intitolato "Test statistici approssimativi per il confronto di algoritmi di apprendimento della classificazione controllata". Ecco il profilo del documento su CiteSeer: http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.37.3325 . Dall'abstract: "Questo documento esamina cinque test statistici approssimativi per determinare se un algoritmo di apprendimento ha prestazioni migliori rispetto a un altro su un determinato compito di apprendimento. Questi test vengono confrontati sperimentalmente per determinare la loro probabilità di rilevare erroneamente una differenza quando non esiste alcuna differenza (errore di tipo I ) ... Il test di McNemar ha mostrato un errore di tipo I basso ... "


2

IMHO non dovrebbe esserci alcuna differenza tra la distribuzione dei punteggi e la distribuzione di qualsiasi altro tipo di dati. quindi in pratica tutto ciò che devi controllare è se i tuoi dati sono distribuiti normalmente o meno qui . Inoltre, ci sono grandi libri che trattano a fondo di questa domanda, vedi qui (cioè in breve: tutti testano se il risultato di due classificatori è significativamente diverso .. e se lo fanno, possono essere combinati in un modello unico - insieme)


Penso che molto probabilmente non saranno distribuiti normalmente. Nel solito caso i punteggi saranno positivi e inclinati verso un'estremità dell'intervallo (1 o 0 a seconda se si sta utilizzando precisione o errore come misura).
TCD

@tdc: in questo caso la distribuzione della funzione (numero di classificazioni errate) -> (numero di modelli con questo numero di classificazioni errate) sarebbe spesso una dissipazione del poisson simile a IMHO.
jb.

@Dov: testare quale modello è significativamente migliore (questa è la domanda OP) e verificare se sono diversi è una cosa abbastanza diversa.
jb.

@jb. Grazie. ma ho detto significativamente diverso non meglio ...
Dov

@Dov il tuo primo link è interrotto - non posso dire dove dovrebbe puntare.
Tamzin Blake,

2

Non esiste un singolo test appropriato per tutte le situazioni; Posso consigliare il libro "Evaluating Learning Algorithms" di Nathalie Japkowicz e Mohak Shah, Cambridge University Press, 2011. Il fatto che un libro di quasi 400 pagine possa essere scritto su questo argomento suggerisce che non è un problema semplice. Ho scoperto spesso che non esiste un test che soddisfi davvero le esigenze del mio studio, quindi è importante avere una buona conoscenza dei vantaggi e degli svantaggi di qualunque metodo venga infine utilizzato.

Un problema comune è che per set di dati di grandi dimensioni si può ottenere una differenza statisticamente significativa con una dimensione dell'effetto che non ha alcun significato pratico.

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.