whatsapp
Adriano Gilardone
Adriano Gilardone
adriano gilardone Docente di Statistica Matematica Excel Spss sfruttare excel consulenze statistiche lezione videocorsi
blog

blog

Curva ROC: a cosa serve e come si interpreta

YouTube video
Postato il 22 Luglio 2024
Tag

La curva ROC (Receiver Operating Characteristic) è uno strumento statistico che valuta le prestazioni di un modello di classificazione

Se sei uno studente di statistica o analisi dei dati, probabilmente ti sei trovato di fronte alla curva ROC nei tuoi studi e ti sei chiesto come interpretarla correttamente. 

Se vuoi prepararti al meglio per superare il tuo esame di statistica, questa risorsa fa proprio per te.

Cosa è la curva ROC

La curva ROC è un grafico bidemensionale che mette in relazione la sensibilità (tasso di Veri Positivi) con la specificità (tasso di Veri Negativi) di un test, al variare di una valore soglia (cut-off). 

Sull'asse delle ascisse si rappresenta il valore di 1 - Specificità (tasso di Falsi Positivi), mentre sull'asse delle ordinate si rappresenta la Sensibilità (tasso di Veri Positivi). 

A proposito di sensibilità e specificità ne ho parlato in questo articolo.

Ogni punto sulla curva ROC corrisponde a una combinazione specifica di sensibilità e specificità per un particolare valore di soglia.

Questo strumento è particolarmente utile in contesti in cui è necessario distinguere tra due classi, come nel caso di diagnosi mediche (malato vs sano) o nelle decisioni di credito (affidabile vs non affidabile).

Significato e importanza della curva ROC

La curva ROC è importante perché offre una rappresentazione visiva delle performance di un modello di classificazione senza dipendere da un singolo valore soglia. 

Invece di focalizzarsi su una singola metrica di performance, come l'accuratezza, la curva ROC consente di valutare come le prestazioni del modello cambiano in base a diverse soglie di decisione. 

Questo è cruciale quando le conseguenze di falsi positivi e falsi negativi differiscono significativamente, come in applicazioni mediche o di sicurezza.

Componenti della curva ROC

Sensibilità (tasso di Veri Positivi) 

Misura la proporzione di veri positivi correttamente identificati dal modello. È calcolata come VP / (VP + FN), dove VP è il numero di veri positivi e FN è il numero di falsi negativi.

Sensibilità

Specificità (tasso di Veri Negativi)

Misura la proporzione di veri negativi correttamente identificati dal modello. È calcolata come VN / (VN + FP), dove VN è il numero di veri negativi e FP è il numero di falsi positivi.

specificità

1 - Specificità (tasso di Falsi Positivi)

Rappresenta la proporzione di falsi positivi rispetto al totale tra i falsi positivi e i veri negativi. È calcolata come 1 - Specificità.

1 - Specificità

Area sotto la curva (AUC)

Un singolo valore numerico che riassume le prestazioni complessive del modello. Un AUC pari a 1 indica un modello perfetto, mentre un AUC pari a 0.5 un pessimo modello. Vedrai più avanti uno schema per consultare i valori intermedi che sono poi quelli reali.

corso statistica

Come tracciare la curva ROC

Tabella di valori

Prima di tutto devi avere a disposizione una tabella come quella sotto che ti premetta di costruire la curva ROC e successivamente di interpretarla

Curva Roc

Nella prima colonna trovi un valore che potrebbe rappresentare qualsiasi variabile di interesse, di solito in ambito medico.

Non essendo un medico facciamo finta che sia un ipotetica sostanza all'interno del corpo umano che più aumenta e più causa una malattia, per cui la usiamo come predittore.

Se scegli il valore più alto 290 avrai una sensibilità (Veri Positivi) di 0,069 quindi molti pazienti a rischio malattia non verranno intercettati (bassa sensibilità = molti Falsi Negativi) mentre verranno identificati meglio i pazienti sani con una specificità di 0,998 (alta specificità = pochi Falsi Positivi).

Viceversa se scegli il valore più basso di 100 ti troverai nella situazione opposta con una sensibilità di 0,992 che ti farà rilevare bene i malati (alta sensibilità = pochi Falsi Negativi) e una specificità di 0,221 che ti farà rilevare male i sani (bassa specificità = molti Falsi Nositivi)

A questo punto avrai capito che la coperta è corta, o meglio nella realtà è difficile avere una situazione in cui sensibilità e specificità siano entrambi uguali a 1 e quindi perfetti.

E' qui che ti viene in aiuto la curva ROC

Grafico Curva ROC

Curva ROC

La curva ti dovrebbe aiutare a scegliere il punto migliore per il cut-off cioè quello che ottimizza la scelta tra una buona sensibilità e una buona specificità.

Per farlo devi prendere il punto sulla curva ROC che più si distanzia dalla bisettrice. In questo esempio il punto corrisponde alle coordinate (0,20 ; 0,65) quindi identificando una specificità dell'80% (ricordati che 0,20 è pari a 1 - Specificità e si trova sull'asse X) e una sensibilità del 65%.

Se a una prima vista non ti sembra evidente che quella sia la distanza maggiore ma potrebbe anche esserci un'altra, non ti preoccupare perchè neanche io avrei la certezza guardando solo il grafico.

Per trovare la distanza massima dovrai calcolare l'indice di Younden.

Indice di Youden

Il calcolo di questo indice è molto semplice e lo vedi presente nell'ultima colonna della tabella sopra. Devi fare la differenza tra i valori di sensibilità e quelli di 1 - Specificità. Il numero più elevato della colonna sarà quello del cut-off ottimo.

Da punto di visto grafico ha senso in quanto il punto di cut off ha un'altezza pari al valore di sensibilità (nell'esempio 0,65) e per arrivare alla bisettrice sai che il valore della Y sarà per forza uguale al valore della X e quindi quello di 1 - Specificità (nell'esempio 0,20).

corso statistica

Area sotto la curva (AUC)

Un'ultima cosa da tenere presente è l'area che trovi sotto la curva ROC, questa dà una misura di attendibilità del test. Più l'AUC si avvicina a 1 è più il test è attendibile.

Questa misura è utile anche quando si vogliono confrontare tra di loro due o più curve ROC. Il test con un valore AUC più alto dovrebbe essere il migliore, ma non è una regola sufficiente per determinare con certezza la curva ROC migliore.

AUC = 1

Indica un modello perfetto, che classifica correttamente tutte le osservazioni positive e negative.

0.7 ≤ AUC < 1

Indica un buon modello con capacità discriminante buona. Più vicino a 1, migliore è il modello.

0.5 < AUC < 0.7

Indica un modello con capacità discriminante moderata, meglio del caso ma con prestazioni migliorabili.

AUC = 0.5

Indica un modello senza capacità discriminante, equivalente a un'assegnazione casuale.

Curva ROC EXCEL

Non esiste un comando specifico ma bisogna costruire tabella e grafico come mostrato in precedenza

Curva ROC SPSS

Analizza >>> Curva ROC

Riassumendo

  • La curva ROC è uno strumento statistico che valuta le prestazioni di un modello di classificazione mettendo in relazione la sensibilità e la specificità.
  • Fornisce una rappresentazione visiva delle performance del modello su diverse soglie decisionali, utile in contesti come diagnosi mediche e decisioni di credi
  • Le sue componenti sono: sensibilità, specificità, 1 - specificità, area sotto la curva (AUC).
  • Un modello ideale ha una curva ROC che sale rapidamente verso l'alto fino al punto (0, 1) e poi si appiattisce orizzontalmente lungo l'asse Y, indicando sensibilità e specificità perfette.
  • Le curve ROC reali non sono perfette e presentano un'inclinazione verso la diagonale a seconda della qualità del modello e della distribuzione dei dati.

Iscriviti alla Newsletter

Se hai bisogno d’informazioni che non hai trovato nella sezione servizi o dei video corsi, scrivimi un messaggio o chiamami.
Domande, prezzi, richieste, delucidazioni...tutto quello che ti serve. Cercherò di risponderti entro le 24h.
Newsletter

Consenso al trattamento dei dati
Utilizzerò i tuoi dati (nome ed indirizzo mail) solo per inviarti gratuitamente via mail la newsletter mensile. Niente spam, niente scocciature, ti disiscrivi in un click quando vuoi.

arrow-up-circle
error: Content is protected !!
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram