La classificazione assegna osservazioni a categorie. Per valutare un classificatore non basta l’accuratezza: servono metriche che distinguano i tipi di errore (falsi positivi e negativi), soprattutto con classi sbilanciate. Questa scheda allena la matrice di confusione e le metriche derivate, fondamento del machine learning statistico.
1. Regola di Bayes per la classificazione
Esercizio. Spiegare il criterio del classificatore di Bayes.
Il classificatore di Bayes assegna l’osservazione x alla classe con probabilità a posteriori massima:
\hat y=\arg\max_k P(C_k\mid x)\propto P(x\mid C_k)\,P(C_k).
Combina la verosimiglianza P(x\mid C_k) con la probabilità a priori della classe P(C_k). È il classificatore ottimo (minimo errore) quando le distribuzioni sono note; LDA e QDA ne sono casi con ipotesi gaussiane.
2. Matrice di confusione
Esercizio. Un classificatore binario produce: veri positivi TP=80, falsi positivi FP=20, falsi negativi FN=10, veri negativi TN=90. Costruire la matrice di confusione.
La matrice di confusione incrocia classe reale e predetta. La diagonale (TP, TN) sono le predizioni corrette; fuori diagonale gli errori, di due tipi diversi.
3. Accuratezza
Esercizio. Calcolare l’accuratezza del classificatore del punto 2.
L’accuratezza è la frazione di predizioni corrette:
\text{Accuratezza}=\dfrac{TP+TN}{TP+TN+FP+FN}=\dfrac{80+90}{200}=\dfrac{170}{200}=0{,}85.
L’85\% delle predizioni è corretto. Ma l’accuratezza inganna con classi sbilanciate: va affiancata da precisione e recall.
4. Precisione e recall
Esercizio. Calcolare precisione e recall del classificatore del punto 2.
Precisione (dei predetti positivi, quanti corretti):
P=\dfrac{TP}{TP+FP}=\dfrac{80}{80+20}=0{,}80.
Recall (dei reali positivi, quanti trovati):
R=\dfrac{TP}{TP+FN}=\dfrac{80}{80+10}=0{,}89.
Precisione e recall guardano errori diversi: la precisione penalizza i falsi positivi, il recall i falsi negativi. La scelta dipende dal costo relativo dei due errori.
5. F1-score
Esercizio. Calcolare l’F1-score (precisione 0{,}80, recall 0{,}89).
L’F1 è la media armonica di precisione e recall:
F_1=2\dfrac{P\cdot R}{P+R}=2\times\dfrac{0{,}80\times0{,}89}{0{,}80+0{,}89}=2\times\dfrac{0{,}712}{1{,}69}=0{,}843.
L’F1 bilancia i due indici in un solo numero; la media armonica penalizza gli squilibri (se uno dei due è basso, l’F1 crolla). Utile quando precisione e recall contano entrambi.
6. Problema delle classi sbilanciate
Esercizio. Un dataset ha il 95\% di classe negativa. Un classificatore che predice sempre “negativo” che accuratezza ha, ed è utile?
\text{Accuratezza}=\dfrac{TN}{\text{tot}}=0{,}95=95\%.
Accuratezza altissima, ma il classificatore è inutile: non rileva mai i positivi (recall =0). Con classi sbilanciate l’accuratezza è fuorviante: precisione, recall, F1 e curve ROC danno il quadro reale. È il motivo per cui non ci si affida mai alla sola accuratezza.
7. Specificità e false positive rate
Esercizio. Con TP=80, FP=20, FN=10, TN=90, calcolare specificità e false positive rate.
La specificità misura quanti negativi reali vengono riconosciuti correttamente:
Sostituendo:
Il false positive rate è:
Quindi:
Le due metriche sono complementari:
Interpretazione: il classificatore riconosce circa l’81{,}8\% dei negativi reali e sbaglia circa il 18{,}2\% dei negativi classificandoli come positivi.
8. Balanced accuracy
Esercizio. Calcolare la balanced accuracy del classificatore del punto 7.
La balanced accuracy è la media tra recall dei positivi e recall dei negativi:
La sensibilità coincide con il recall:
La specificità è:
Quindi:
Risultato:
È una metrica più robusta dell’accuratezza semplice quando le classi sono sbilanciate, perché pesa allo stesso modo la capacità di riconoscere positivi e negativi.
9. Effetto della soglia
Esercizio. Un modello restituisce probabilità di classe positiva. Per quattro osservazioni:
| Osservazione | Probabilità predetta | Classe reale |
|---|---|---|
| A | 0{,}90 | + |
| B | 0{,}70 | - |
| C | 0{,}40 | + |
| D | 0{,}20 | - |
Calcolare la matrice di confusione con soglia 0{,}5.
Con soglia 0{,}5, si predice positivo se:
Allora:
- A è predetto positivo ed è reale positivo: TP;
- B è predetto positivo ma è reale negativo: FP;
- C è predetto negativo ma è reale positivo: FN;
- D è predetto negativo ed è reale negativo: TN.
Quindi:
La precisione è:
Il recall è:
Se si abbassasse la soglia a 0{,}3, anche C diventerebbe positivo: aumenterebbe il recall, ma potrebbe aumentare il numero di falsi positivi in altri dataset. La soglia è quindi una decisione operativa, non solo statistica.
10. ROC: un punto della curva
Esercizio. Con la matrice TP=80, FP=20, FN=10, TN=90, individuare il punto ROC.
La curva ROC usa:
sull’asse verticale e:
sull’asse orizzontale.
Calcoliamo:
Il punto ROC corrispondente è:
Un buon classificatore sta verso l’angolo alto sinistro: alto TPR e basso FPR. Spostando la soglia si ottengono altri punti della curva.
11. Macro e micro media nel multi-classe
Esercizio. Due classi hanno F1-score:
Se le classi hanno rispettivamente 900 e 100 esempi, confrontare media macro e media pesata.
La media macro dà lo stesso peso alle classi:
La media pesata usa il supporto delle classi:
Quindi:
Interpretazione: la media pesata sembra molto buona perché la classe A domina il dataset. La macro media evidenzia invece che la classe B è classificata molto peggio. Nei problemi sbilanciati, riportare entrambe evita conclusioni fuorvianti.
12. Scelta della metrica in base al costo
Esercizio. In un sistema di allarme, un falso negativo costa 100 e un falso positivo costa 5. Un classificatore produce FN=4 e FP=30. Calcolare il costo totale degli errori.
Il costo totale è:
Sostituendo:
Risultato:
In questo scenario il falso negativo pesa molto più del falso positivo: è ragionevole scegliere una soglia che privilegi il recall, anche a costo di ridurre la precisione. Le metriche non sono neutrali: devono riflettere il costo operativo degli errori.
Errori comuni
- Affidarsi alla sola accuratezza. Con classi sbilanciate l’accuratezza è ingannevole: serve recall/precisione/F1.
- Confondere precisione e recall. Precisione = TP/(TP+FP) (dei predetti +); recall = TP/(TP+FN) (dei reali +).
- Usare la media aritmetica per F1. L’F1 è la media armonica: penalizza correttamente il caso in cui uno dei due indici è basso.
- Ignorare il costo degli errori. Falsi positivi e negativi hanno conseguenze diverse: la metrica va scelta in base al dominio.
- Non dichiarare la soglia. Una matrice di confusione dipende dalla soglia usata per trasformare probabilità in classi.
- Nascondere classi minoritarie nelle medie pesate. In multi-classe, macro e weighted average raccontano aspetti diversi.