Évaluation : métriques, cross-validation, déséquilibre
L'accuracy ment dès que les classes sont déséquilibrées
Fraude : 0,5 % des transactions. Le modèle « toujours légitime » affiche 99,5 % d'accuracy et n'attrape aucune fraude. Toute évaluation sérieuse commence par la matrice de confusion :
prédit fraude prédit légitime
réelle fraude VP FN ← les fraudes ratées 💸
réelle légitime FP VN ← les clients bloqués à tort 😡
- Précision = VP / (VP + FP) : parmi mes alertes, combien de vraies ? (coût des faux positifs)
- Rappel = VP / (VP + FN) : parmi les fraudes réelles, combien j'attrape ? (coût des ratés)
- F1 : moyenne harmonique des deux — le compromis en un chiffre.
Le seuil de décision déplace le curseur : seuil bas → rappel ↑, précision ↓. La courbe precision-recall montre tous les compromis possibles ; l'AUC-ROC résume la capacité de tri du modèle indépendamment du seuil.
Cross-validation : évaluer sans gaspiller
Avec peu de données, un seul split est un coup de dés. La validation croisée k-fold découpe en k blocs, entraîne k fois (chaque bloc sert une fois de test) et moyenne : estimation robuste + écart-type. Cas particulier vital : données temporelles → TimeSeriesSplit (on entraîne sur le passé, on valide sur le futur — jamais l'inverse).
Régression : les métriques en unités métier
- MAE : erreur absolue moyenne — « je me trompe de 12 € en moyenne », lisible par le PO ;
- RMSE : pénalise davantage les grosses erreurs — à surveiller si les gros ratés coûtent cher ;
- R² : part de variance expliquée (1 = parfait, 0 = pas mieux que prédire la moyenne).
Fraude à 0,5 % : pourquoi l'accuracy est-elle inutilisable ?