mozzicone Cos'è una matrice di confusione? - Unite.AI
Seguici sui social
Corso di perfezionamento sull'intelligenza artificiale:

AI 101

Cos'è una matrice di confusione?

mm
aggiornato on

Uno degli strumenti analitici più potenti nel campo dell'apprendimento automatico e della scienza dei dati la matrice di confusione. La matrice di confusione è in grado di fornire ai ricercatori informazioni dettagliate su come si è comportato un classificatore di apprendimento automatico rispetto alle classi target nel set di dati. Una matrice di confusione mostrerà gli esempi visualizzati che sono stati correttamente classificati rispetto ad esempi classificati erroneamente. Diamo uno sguardo più approfondito a come è strutturata una matrice di confusione e come può essere interpretata.

Cos'è una matrice di confusione?

Iniziamo dando una semplice definizione di matrice di confusione. Una matrice di confusione è uno strumento di analisi predittiva. Nello specifico, si tratta di una tabella che visualizza e confronta i valori effettivi con i valori previsti del modello. Nel contesto dell'apprendimento automatico, una matrice di confusione viene utilizzata come metrica per analizzare le prestazioni di un classificatore di apprendimento automatico su un set di dati. Una matrice di confusione genera una visualizzazione di metriche come precisione, accuratezza, specificità e richiamo.

Il motivo per cui la matrice di confusione è particolarmente utile è che, a differenza di altri tipi di metriche di classificazione come l'accuratezza semplice, la matrice di confusione genera un quadro più completo delle prestazioni di un modello. Solo l'utilizzo di una metrica come l'accuratezza può portare a una situazione in cui il modello identifica in modo errato e completo una classe, ma passa inosservato perché in media le prestazioni sono buone. Nel frattempo, la matrice di confusione fornisce un confronto di valori diversi come falsi negativi, veri negativi, falsi positivi e veri positivi.

Definiamo le diverse metriche rappresentate da una matrice di confusione.

Richiamo in una matrice di confusione

Recall è il numero di esempi veramente positivi diviso per il numero di esempi falsi negativi e per il totale degli esempi positivi. In altre parole, il ricordo è rappresentativo della proporzione di veri esempi positivi che un modello di apprendimento automatico ha classificato. Il richiamo è dato dalla percentuale di esempi positivi che il modello è stato in grado di classificare rispetto a tutti gli esempi positivi contenuti nel set di dati. Questo valore può anche essere indicato come "tasso di successo" e un valore correlato è "sensibilità”, che descrive la probabilità di richiamo o il tasso di autentiche previsioni positive.

Precisione in una matrice di confusione

Come il richiamo, la precisione è un valore che tiene traccia delle prestazioni di un modello in termini di classificazione positiva degli esempi. A differenza del richiamo, tuttavia, la precisione riguarda quanti degli esempi che il modello ha etichettato come positivi sono stati veramente positivi. Per calcolarlo, il numero di esempi veri positivi viene diviso per il numero di esempi falsi positivi più i veri positivi.

Per fare la distinzione tra richiamo e precisione più chiara, la precisione mira a calcolare la percentuale di tutti gli esempi etichettati come positivi che erano veramente positivi, mentre il richiamo tiene traccia della percentuale di tutti gli esempi veri positivi che il modello è stato in grado di riconoscere.

Specificità in una matrice di confusione

Mentre richiamo e precisione sono valori che tengono traccia degli esempi positivi e del tasso di veri positivi, specificità quantifica il tasso di veri negativi o il numero di esempi che il modello ha definito come negativi che erano veramente negativi. Questo viene calcolato prendendo il numero di esempi classificati come negativi e dividendoli per il numero di esempi falsi positivi combinati con i veri esempi negativi.

Dare un senso alla matrice di confusione

Foto: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0

Esempio di una matrice di confusione

Dopo aver definito termini necessari come precisione, richiamo, sensibilità e specificità, possiamo esaminare come questi diversi valori sono rappresentati all'interno di una matrice di confusione. Nei casi di classificazione viene generata una matrice di confusione, applicabile quando sono presenti due o più classi. La matrice di confusione generata può essere alta e larga quanto necessario, contenere qualsiasi numero desiderato di classi, ma per semplicità, esamineremo una matrice di confusione 2 x 2 per un'attività di classificazione binaria.

Ad esempio, supponiamo che venga utilizzato un classificatore per determinare se un paziente ha o meno una malattia. Le caratteristiche verranno inserite nel classificatore e il classificatore restituirà una delle due diverse classificazioni: o il paziente non ha la malattia o ce l'ha.

Iniziamo con il lato sinistro della matrice. Il lato sinistro della matrice di confusione rappresenta le previsioni che il classificatore ha fatto per le singole classi. Un'attività di classificazione binaria avrà due righe qui. Per quanto riguarda la parte superiore della matrice, tiene traccia dei veri valori, le effettive etichette di classe, delle istanze di dati.

L'interpretazione di una matrice di confusione può essere eseguita esaminando dove si intersecano le righe e le colonne. Confronta le previsioni del modello con le vere etichette del modello. In questo caso, i valori True Positives, il numero di previsioni positive corrette, si trovano nell'angolo in alto a sinistra. I falsi positivi si trovano nell'angolo in alto a destra, dove gli esempi sono effettivamente negativi ma il classificatore li ha contrassegnati come positivi.

L'angolo in basso a sinistra della griglia mostra le istanze che il classificatore ha contrassegnato come negative ma che erano effettivamente positive. Infine, l'angolo in basso a destra della matrice di confusione è dove si trovano i valori True Negative, o dove si trovano gli esempi genuinamente falsi.

Quando il set di dati contiene più di due classi, la matrice cresce di quel numero di classi. Ad esempio, se ci sono tre classi, la matrice sarà una matrice 3 x 3. Indipendentemente dalle dimensioni della matrice di confusione, il metodo per interpretarle è esattamente lo stesso. Il lato sinistro contiene i valori previsti e le etichette di classe effettive corrono nella parte superiore. Le istanze che il classificatore ha previsto correttamente corrono in diagonale dall'angolo in alto a sinistra all'angolo in basso a destra. Osservando la matrice è possibile distinguere le quattro metriche predittive discusse sopra.

Ad esempio, puoi calcolare il richiamo prendendo i veri positivi e i falsi negativi, sommandoli e dividendoli per il numero di veri esempi positivi. Nel frattempo, la precisione può essere calcolata combinando i falsi positivi con i veri positivi, quindi dividendo il valore per il numero totale di veri positivi.

Sebbene si possa dedicare del tempo a calcolare manualmente metriche come precisione, richiamo e specificità, queste metriche sono così comunemente utilizzate che la maggior parte delle librerie di machine learning dispone di metodi per visualizzarle. Ad esempio, Scikit-learn per Python ha una funzione che genera una matrice di confusione.

Blogger e programmatore con specialità in machine Learning ed Deep Learning temi. Daniel spera di aiutare gli altri a usare il potere dell'intelligenza artificiale per il bene sociale.