Evaluation des models d'IA: precision, F1score, ROC
By Paul Claret
10 minutes read - 10/12/24
Une fois un modèle entraîné, une question cruciale se pose : Comment savoir s’il fonctionne bien ? L’évaluation des modèles est une étape essentielle en machine learning, car elle permet de mesurer la performance et la pertinence d’un modèle. Un bon modèle n’est pas seulement celui qui fonctionne sur vos données d’entraînement, mais surtout celui qui généralise bien sur de nouvelles données.
Dans cet article, on va explorer les concepts, métriques et méthodes les plus couramment utilisés pour évaluer la qualité d’un modèle.
Pourquoi évaluer un modèle ?
Lorsqu’on construit un modèle, son objectif principal est de faire des prédictions fiables sur des données qu’il n’a jamais vues. Cependant, un modèle peut :
- Sous-ajuster (underfitting) : Il est trop simple et ne capture pas correctement les relations dans les données.
- Sur-ajuster (overfitting) : Il est trop complexe et s’adapte parfaitement aux données d’entraînement, mais échoue sur de nouvelles données.
L’évaluation permet de trouver un équilibre et d’identifier le modèle le plus performant.
Les ensembles d’entraînement, de validation et de test
Pour bien évaluer un modèle, il est important de séparer les données en plusieurs ensembles :
- Ensemble d’entraînement : Utilisé pour entraîner le modèle.
- Ensemble de validation : Utilisé pour ajuster les hyperparamètres du modèle.
- Ensemble de test : Utilisé pour évaluer la performance finale du modèle sur des données totalement nouvelles.
Cela permet d’éviter que le modèle ne soit évalué sur les mêmes données qu’il a apprises, ce qui biaiserait les résultats.
Métriques pour les problèmes de régression
1. Erreur quadratique moyenne (MSE)
La MSE mesure la moyenne des carrés des erreurs (différence entre les valeurs prédites et réelles). \[ MSE = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 \] - \(y_i\) : Valeur réelle. - \(\hat{y}_i\) : Valeur prédite.
Une MSE faible indique que les prédictions sont proches des valeurs réelles.
2. Erreur absolue moyenne (MAE)
Contrairement à la MSE, la MAE mesure la moyenne des erreurs absolues, ce qui la rend moins sensible aux valeurs aberrantes. \[ MAE = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i| \] #### 3. Coefficient de détermination (R2R^2)
Le \(R^2\) indique quelle proportion de la variance des données est expliquée par le modèle. \[ R^2 = 1 - \frac{\sum (y_i - \hat{y}_i)^2}{\sum (y_i - \bar{y})^2} \] - Un \(R^2\) proche de 1 signifie que le modèle explique bien les données. - Un \(R^2\) proche de 0 signifie que le modèle est médiocre.
4. Pour plus de formules
Si vous souhaitez en apprendre plus sur ces fonctions, en découvrir de nouvelles et comprendre vraiment les interêts et applications profondes de ce sujet, j’ai écrit un article dessus: Les loss functions. Ce n’est pas essentiel que vous le lisiez, mais c’est quand même un très bon plus.
Métriques pour les problèmes de classification
1. Précision (Accuracy)
C’est le pourcentage de prédictions correctes parmi toutes les prédictions. \[ Accuracy= \frac{\text{Nombre de prédictions correctes}}{\text{Total des prédictions}} \] Bien que simple, la précision peut être trompeuse si les classes sont déséquilibrées.
2. Précision (Precision)
La précision indique la proportion de prédictions positives qui sont réellement correctes. \[ Precision = \frac{TP}{TP + FP} \] - \(TP\) : Vrais positifs (bien classés comme positifs). - \(FP\) : Faux positifs (classés comme positifs à tort).
3. Rappel (Recall)
Le rappel mesure la capacité du modèle à identifier les instances positives. \[ Recall = \frac{TP}{TP + FN} \] - \(FN\) : Faux négatifs (positifs classés comme négatifs).
4. F1-Score
Le F1-Score est une moyenne harmonique entre la précision et le rappel. Il est particulièrement utile quand les classes sont déséquilibrées. \[ F1 = 2 \cdot \frac{Precision \cdot Recall}{Precision + Recall} \]
5. Courbe ROC et AUC
- Courbe ROC : Montre le compromis entre le rappel et le taux de faux positifs (\(FPR\)) pour différents seuils.
- AUC : L’aire sous la courbe ROC. Une AUC proche de 1 indique un excellent modèle.
Méthodes d’évaluation
1. Validation croisée (Cross-validation)
La validation croisée consiste à diviser les données en plusieurs parties, ou folds. À chaque itération, un fold est utilisé comme ensemble de test, et les autres comme ensemble d’entraînement.
- La méthode la plus courante est la validation croisée k-fold.
2. Test sur un ensemble indépendant
Si vous avez suffisamment de données, vous pouvez réserver une partie pour un test final après la validation croisée.
3. Bootstrapping
Cette méthode consiste à générer plusieurs échantillons aléatoires avec remplacement à partir de l’ensemble de données d’origine, pour créer différents ensembles d’entraînement et de test.
Les pièges à éviter
- Évaluer sur les données d’entraînement : Cela donne une vision biaisée des performances.
- Données non représentatives : Si vos ensembles d’entraînement, de validation et de test ne reflètent pas le problème réel, le modèle risque de ne pas généraliser.
- Ignorer les classes déséquilibrées : Cela peut conduire à de mauvais choix de métriques.
Conclusion
L’évaluation des modèles est une étape cruciale pour garantir leur fiabilité et leur performance. Choisir les bonnes métriques et méthodes d’évaluation permet d’identifier les forces et faiblesses d’un modèle et d’éviter les pièges courants comme le sur-ajustement.
Dans le prochain article, nous explorerons en détail des concepts comme la courbe ROC, la précision, le rappel et le F1-Score, pour mieux comprendre comment interpréter les performances des modèles.
Vous voulez apprendre l'IA en autonomie ?
Si vous êtes nouveau sur mon site, je vous invite à aller voir ma page sur Roadmap IA qui regroupe tous mes articles dans l'ordre pour vous facilitez l'apprentissage.