Migliore risposta
Mi sono imbattuto in una serie di possibili applicazioni di Ranking SVM in letteratura:
* Regressione ordinale * Ottimizzazione AUC * Squilibrio di classe * Imparare a classificare i problemi
Inizialmente, sono stati proposti per la regressione ordinale; Lottimizzazione dellAUC è solo un caso speciale di questo (due classi). Lo squilibrio di classe è correlato allottimizzazione dellAUC, poiché lAUC è una metrica di prestazione ragionevole per i problemi con lo squilibrio di classe. Sono stati proposti anche SVM di ranking per problemi di Learning 2 Rank nel contesto del recupero delle informazioni. Non sono un buon adattamento IMHO perché mentre AUC può anche essere visto come una metrica di ranking, differisce dalle metriche di performance di ranking standard come NDCG e Mean Average Precision: queste ultime sono molto pesanti; cioè mettono molta enfasi sui primi esempi nella classifica (spesso gli esempi sotto il rango 10 e 20 non contano affatto) mentre AUC tratta tutte le posizioni nella classifica allo stesso modo.
Detto questo, io ” ho usato Ranking SVM per tutti i problemi di cui sopra e IMHO non sono mai stati dimostrati utilmente – ad es. nella mia esperienza, la ponderazione di esempio di solito funziona meglio per lo squilibrio di classe e per imparare a classificare la regressione semplice sui punteggi di pertinenza (+ un modello non lineare) offre prestazioni migliori sulla maggior parte dei benchmark L2R. La differenza nelle prestazioni AUC tra svm ordinario e ranking svm è trascurabile IMHO.
Lapplicazione più interessante di Ranking SVM che ho incontrato è stata di Thorsten Joachims e il suo gruppo in cui hanno utilizzato feedback impliciti dagli utenti di un motore di ricerca web (cioè lutente ha cliccato prima sulla posizione 2 e non 1) per generare “coppie di esempio” (doc\_2 – doc\_1) che vengono inserite nel Ranking SVM – i segnali di formazione di questo modulo funzionerebbero solo per approcci a coppie come Ranking SVM.
Risposta
Che cosa significa AUC e che cosè? :
Abbreviazioni
- AUC = Area Under the Curve.
- AUROC = Area sotto la curva delle caratteristiche operative del ricevitore .
AUC viene utilizzato la maggior parte delle volte per indicare AUROC, che è una cattiva pratica poiché, come ha sottolineato Marc Claesen, AUC è ambiguo (potrebbe essere qualsiasi curva) mentre AUROC non lo è.
Interpreti di AUROC
AUROC ha diverse interpretazioni equivalenti :
- Laspettativa che un positivo casuale disegnato in modo uniforme viene classificato prima di un negativo casuale disegnato in modo uniforme.
- La proporzione prevista di positivi classificati prima di un negativo casuale disegnato in modo uniforme.
- Il tasso di veri positivi attesi se la classifica è diviso appena prima di un negativo casuale disegnato in modo uniforme.
- La proporzione attesa di negativi classificati dopo un positivo casuale disegnato in modo uniforme.
- Il tasso di falsi positivi previsto se la classifica viene divisa subito dopo un tratto positivo casuale.
Calcolo dellAUROC
Supponiamo di avere un classificatore probabilistico e binario come la regressione logistica. Prima di presentare la curva ROC (= curva caratteristica operativa del ricevitore), è necessario comprendere il concetto di matrice di confusione . Quando facciamo una previsione binaria, possono essere 4 tipi di errore:
- Prevediamo 0 mentre dovremmo avere la classe in realtà 0: questo è chiamato True Negative , ovvero predichiamo correttamente che la classe è negativa (0). Ad esempio, un antivirus non ha rilevato un file innocuo come virus.
- Prevediamo che 0 mentre dovremmo avere la classe in realtà è 1: questo è chiamato Falso negativo , ovvero prevediamo erroneamente che la classe sia negativa (0). Ad esempio, un antivirus non è riuscito a rilevare un virus.
- Prevediamo che 1 mentre dovremmo avere la classe in realtà è 0: questo è chiamato Falso positivo , ovvero prevediamo erroneamente che la classe sia positiva (1). Ad esempio, un antivirus considerato un file innocuo è un virus.
- Prevediamo che 1 mentre dovremmo avere la classe è in realtà 1: questo è chiamato Vero positivo , ovvero prevediamo correttamente che la classe sia positiva (1). Ad esempio, un antivirus ha giustamente rilevato un virus.
Per ottenere la matrice di confusione, esaminiamo tutte le previsioni fatte dal modello e contiamo quante volte ciascuno di questi 4 tipi di errori si verificano:
In questo esempio di matrice di confusione, tra i 50 punti dati classificati, 45 sono classificati correttamente e i 5 sono classificati erroneamente.
Poiché per confrontare due modelli diversi è spesso più conveniente avere una singola metrica piuttosto che più di uno, calcoliamo due metriche dalla matrice di confusione, che in seguito combineremo in una:
- Tasso di veri positivi ( TPR ), noto anche come. sensibilità, tasso di successo e richiamo , definito come TPTP + FN. Intuitivamente questa metrica corrisponde alla proporzione di punti di dati positivi che sono correttamente considerati positivi, rispetto a tutti i punti di dati positivi. In altre parole, maggiore è il TPR, minore sarà il numero di punti dati positivi che mancheremo.
- Tasso di falsi positivi ( FPR ), alias. fall-out , che è definito come FPFP + TN. Intuitivamente questa metrica corrisponde alla proporzione di punti dati negativi che vengono erroneamente considerati positivi, rispetto a tutti i punti dati negativi. In altre parole, maggiore è lFPR, più punti dati negativi verranno erroneamente classificati.
Per combinare lFPR e il TPR in ununica metrica, calcoliamo prima le due metriche precedenti con molte metriche diverse soglia (ad esempio 0.00; 0.01,0.02,…, 1.00) per la regressione logistica, quindi tracciarli su un unico grafico, con i valori di FPR in ascissa e quelli di TPR in ordinata. La curva risultante è chiamata curva ROC e la metrica che consideriamo è lAUC di questa curva, che chiamiamo AUROC.
La figura seguente mostra graficamente lAUROC:
In questa figura, larea blu corrisponde allarea sotto la curva della caratteristica operativa del ricevitore (AUROC). La linea tratteggiata nella diagonale ci presenta la curva ROC di un predittore casuale: ha un AUROC di 0,5. Il predittore casuale è comunemente usato come linea di base per vedere se il modello è utile.
Se vuoi avere unesperienza di prima mano: