Metriche per classificazione
Per un problema di classificazione binaria possiamo definire:
- TP (true positive)
- TN (true negative)
- FP (false positive)
- FN (false negative)
Accuratezza
Misura la proporzione di esempi classificati correttamente:
accuracy = (TP + TN) / (TP + TN + FP + FN)
Precision
Indica quanti dei positivi predetti sono davvero positivi:
precision = TP / (TP + FP)
Recall
Indica quanti dei positivi reali sono stati intercettati:
recall = TP / (TP + FN)
F1-score
Media armonica tra precision e recall:
F1 = 2 * precision * recall / (precision + recall)
Metriche per regressione
Errore quadratico medio (MSE)
Data una serie di predizioni ŷi e valori reali yi, l'errore quadratico medio è:
MSE = (1 / n) * ∑ (y_i - ŷ_i)²
Root Mean Squared Error (RMSE)
È la radice quadrata del MSE:
RMSE = √MSE
Errore assoluto medio (MAE)
Qui si usano valori assoluti invece dei quadrati:
MAE = (1 / n) * ∑ |y_i - ŷ_i|
Come scegliere la metrica giusta
- Classi sbilanciate: accuracy può essere fuorviante, meglio precision/recall/F1.
- Regressione con outlier: MAE è più robusto del MSE.
- Business: scegliere la metrica allineata al costo degli errori.
In Python, librerie come scikit-learn forniscono implementazioni standard di queste metriche,
ma è utile comprenderne il significato matematico per interpretare correttamente i risultati.