Les compromis en classification
- Leçon 16
- 45 min
- Module 6 : Les statistiques au service des décisions sur les modèles
Leçon 16 sur 18 · Mathématiques et statistiques essentielles pour l'IALes compromis en classification
1. Nombres, notation et résumés de données
2. Vecteurs et matrices
3. Probabilités et raisonnement conditionnel
4. Comment les modèles apprennent
5. Échantillonnage et preuves statistiques
6. Les statistiques au service des décisions sur les modèles
Ce que vous saurez faire
Évaluez un modèle qui signale les billets urgents en comptant ses quatre types de résultats. Ainsi, un seul nombre, comme l’exactitude, ne peut pas cacher les billets urgents qu’il manque.
Carnet JupyterFacultatif : vérifier les nombres dans un carnet
Le carnet (notebook) Jupyter est facultatif : vous pouvez suivre cette leçon avec une calculatrice. Il contient les scores des 1 000 billets de test de l’outil d’exploration de cette page. Comptez les résultats de la matrice de confusion à n’importe quel seuil. Refaites l’exemple détaillé et les tâches en Python, avec des vérifications. Le carnet utilise seulement la bibliothèque standard de Python. Il ne nécessite donc aucune installation.
Le carnet est en anglais. Colab et Kaggle ouvrent votre propre copie. Il faut un compte Google ou Kaggle gratuit. Vous êtes bloqué ? Consultez le carnet de solution.
Avant de commencerCe qu’il faut savoir et avoir sous la main
Ce que vous devez savoir
- Lire un nombre comme une proportion dans un groupe (« 3 sur 4, c’est 75 % »). Voir La probabilité conditionnelle : la probabilité au sein d’un groupe.
- Comprendre comment un problème rare peut faire paraître une alerte meilleure qu’elle ne l’est. Voir La probabilité conditionnelle : pourquoi « 90 % d’exactitude » induit en erreur. Cette leçon applique la même idée à l’exactitude.
- Savoir qu’une proportion calculée sur peu de données de test est incertaine. Voir Estimer l’incertitude : exemple détaillé 2.
Ce que vous devez préparer (le carnet ne nécessite rien de tout cela)
- Une calculatrice. Celle d’un téléphone suffit.
- Votre fichier
c03-notes.md. Vous l’avez créé dans l’encadré « Avant de commencer » de Lire les mathématiques. Ajoutez un titre :## Statistics for model decisions(les statistiques au service des décisions sur les modèles). Si vous ne trouvez pas le fichier, créez un fichier vide portant ce nom. Cette leçon n’utilise pas vos réponses précédentes.
Le carnet a été testé dans Jupyter avec Python 3.14.6 (bibliothèque standard seulement).
Retour chez Larkfield
Section intitulée « Retour chez Larkfield »Larkfield est une boutique en ligne fictive de produits pour la maison et le jardin. Environ 1 200 messages de clients arrivent chaque semaine sous forme de billets de soutien. Certains billets sont urgents : un client a été facturé deux fois, ou une livraison de médicaments pour un animal est perdue. Grace, la responsable du soutien, veut qu’un agent expérimenté voie ces billets en premier.
Tomás, l’ingénieur en IA, a entraîné un modèle pour cela. Pour chaque nouveau billet, le modèle donne un score de 0 à 1. Un score élevé signifie « ce billet semble urgent ». Dans ce module, vous décidez comment Larkfield transforme ce score en action, et ce que cette action coûte.
Où vous rencontrez cela en IA
Section intitulée « Où vous rencontrez cela en IA »Plusieurs systèmes d’IA donnent un score. Une personne ou un programme agit quand ce score est assez élevé :
- Un filtre antipourriel déplace un courriel vers le dossier des pourriels. Parfois, une vraie facture y aboutit. Parfois, un pourriel reste dans la boîte de réception.
- Une alerte de fraude bancaire bloque un paiement par carte. Un blocage injustifié irrite le client. Une fraude manquée coûte de l’argent.
- Un modèle de dépistage dans un hôpital signale les images médicales qu’un médecin doit vérifier en premier. Une image manquée peut retarder le traitement.
- Une file de modération de contenu envoie des publications à des réviseurs humains. Trop de signalements surchargent les réviseurs.
Chaque système fait deux types d’erreurs, dont les coûts diffèrent. Pour les voir, vous comptez.
Du score au signalement
Section intitulée « Du score au signalement »Un score n’est pas une décision. Larkfield choisit un seuil. Si le score atteint ou dépasse le seuil, le billet est signalé et un agent expérimenté l’examine. Si le score est plus bas, le billet va dans la file normale.
Voici dix billets avec leurs scores et leur état réel. Grace a vérifié chaque billet manuellement. La colonne « Vraiment urgent? » donne donc la bonne réponse. Le seuil est de 0,50.
| Billet | Score | Signalé à 0,50? | Vraiment urgent? | Résultat |
|---|---|---|---|---|
| T-5001 | 0,91 | oui | oui | détecté |
| T-5002 | 0,74 | oui | non | fausse alerte |
| T-5003 | 0,66 | oui | oui | détecté |
| T-5004 | 0,58 | oui | non | fausse alerte |
| T-5005 | 0,52 | oui | oui | détecté |
| T-5006 | 0,45 | non | oui | manqué |
| T-5007 | 0,33 | non | non | laissé dans la file normale à raison |
| T-5008 | 0,21 | non | non | laissé dans la file normale à raison |
| T-5009 | 0,12 | non | non | laissé dans la file normale à raison |
| T-5010 | 0,05 | non | non | laissé dans la file normale à raison |
Chaque billet appartient à l’un des quatre groupes. Comptez-les :
| Signalés | Non signalés | Total | |
|---|---|---|---|
| Vraiment urgents | 3 détectés | 1 manqué | 4 |
| Non urgents | 2 fausses alertes | 4 laissés dans la file normale à raison | 6 |
| Total | 5 | 5 | 10 |
Ce tableau de quatre nombres est une matrice de confusion. Il montre où le modèle a raison et où il confond une classe avec l’autre. Une classe est l’une des réponses possibles, ici « urgent » ou « non urgent ».
Trois questions auxquelles les nombres permettent de répondre
Section intitulée « Trois questions auxquelles les nombres permettent de répondre »Grace, Omar et Tomás posent chacun une question différente. Chaque réponse utilise une ligne ou une colonne différente du tableau.
- Grace : « Quand mon agent expérimenté ouvre un billet signalé, à quelle fréquence est-il vraiment urgent? » Regardez la colonne Signalés : 3 billets signalés sur 5 sont urgents. Cela donne 60 %.
- Omar : « Parmi tous les billets urgents, combien le modèle en détecte-t-il? » Regardez la ligne Vraiment urgents : 3 sur 4. Cela donne 75 %.
- Tomás : « Parmi les billets non urgents, combien le modèle en signale-t-il par erreur? » Regardez la ligne Non urgents : 2 sur 6. Cela donne environ 33 %.
Les trois questions ont des réponses différentes, car elles divisent par des totaux différents. Demandez toujours : « sur quel total? »
Maintenant, les noms
Section intitulée « Maintenant, les noms »Les professionnels utilisent des noms précis pour les quatre groupes et les trois proportions. Positif signifie « signalé comme urgent » et négatif signifie « non signalé ». Vrai signifie que la décision de signalement était correcte, et faux signifie qu’elle était incorrecte.
| Ce que vous avez compté | Nom | Abréviation |
|---|---|---|
| Urgent et signalé (détecté) | vrai positif | TP |
| Urgent et non signalé (manqué) | faux négatif | FN |
| Non urgent et signalé (fausse alerte) | faux positif | FP |
| Non urgent et non signalé | vrai négatif | TN |
- La précision répond à la question de Grace : la proportion des billets signalés qui sont vraiment urgents. C’est TP divisé par tous les billets signalés.
- Le rappel répond à la question d’Omar : la proportion des billets urgents qui sont signalés. C’est TP divisé par tous les billets urgents.
- Le taux de faux positifs répond à la question de Tomás : la proportion des billets non urgents qui sont signalés. C’est FP divisé par tous les billets non urgents.
Voici les formules, à lire de gauche à droite :
« La précision correspond aux vrais positifs divisés par tout ce qui a été signalé. Le rappel correspond aux vrais positifs divisés par tout ce qui est vraiment urgent. Le taux de faux positifs correspond aux fausses alertes divisées par tout ce qui n’est pas urgent. »
Vous n’avez pas besoin de mémoriser les formules. Si vous trouvez la bonne ligne ou colonne dans la matrice de confusion, vous pouvez toujours refaire les calculs.
Exemple détaillé : les 1 000 billets de test
Section intitulée « Exemple détaillé : les 1 000 billets de test »Dix billets ne suffisent pas pour évaluer un modèle. Priya, la scientifique des données, utilise des données de test comprenant 1 000 anciens billets jamais vus par le modèle pendant l’entraînement. L’équipe de Grace a étiqueté chacun manuellement : 80 sont urgents (8 %) et 920 ne sont pas urgents. Le modèle a attribué un score aux 1 000 billets. Priya compte les résultats au seuil de 0,50 :
| Signalés | Non signalés | Total | |
|---|---|---|---|
| Urgents | 65 (TP) | 15 (FN) | 80 |
| Non urgents | 47 (FP) | 873 (TN) | 920 |
| Total | 112 | 888 | 1 000 |
Avant de calculer quoi que ce soit, Priya vérifie les totaux : 65 + 15 = 80, 47 + 873 = 920, et 112 + 888 = 1 000. Un total incorrect indique une erreur de comptage quelque part.
| Mesure | Sur quel total? | Calcul | Résultat |
|---|---|---|---|
| Précision | les 112 billets signalés | 65 ÷ 112 | 58,0 % |
| Rappel | les 80 billets urgents | 65 ÷ 80 | 81,3 % |
| Taux de faux positifs | les 920 billets non urgents | 47 ÷ 920 | 5,1 % |
| Exactitude | les 1 000 billets | (65 + 873) ÷ 1 000 | 93,8 % |
L’exactitude est la proportion de tous les billets pour lesquels le modèle a raison. Elle correspond aux vrais positifs plus les vrais négatifs, divisés par le total.
Priya écrit une phrase simple pour chaque nombre, car Omar et Grace n’utilisent pas ces noms :
- « Sur 10 billets signalés, environ 6 sont vraiment urgents. » (précision)
- « Le modèle détecte environ 8 billets urgents sur 10, et en manque 15 sur les 80. » (rappel)
- « Environ 5 billets normaux sur 100 sont signalés par erreur. » (taux de faux positifs)
Pourquoi l’exactitude peut tromper avec une classe rare
Section intitulée « Pourquoi l’exactitude peut tromper avec une classe rare »Tomás lit le tableau et dit : « 93,8 % d’exactitude. C’est très bon. » Priya lui montre un deuxième « modèle » qui ne nécessite aucun entraînement : ne rien signaler.
- Il signale 0 billet, donc il manque les 80 billets urgents.
- Il a raison pour les 920 billets non urgents.
- Son exactitude est de 920 ÷ 1 000 = 92,0 %.
Un modèle qui ne fait rien d’utile atteint 92 % d’exactitude, parce que 92 % des billets ne sont pas urgents. Quand une classe est rare, l’exactitude mesure surtout la capacité du modèle à traiter la classe fréquente. La proportion de la classe rare dans les données est le taux de base, ici 8 %. Indiquez toujours le taux de base à côté de l’exactitude.
Priya essaie aussi un seuil plus strict, 0,70. L’exactitude monte à 94,2 %, car le modèle produit moins de fausses alertes. Mais il manque maintenant 53 des 80 billets urgents.
Description textuelle du graphique
Un graphique à colonnes avec trois colonnes sur un axe de 0 à 100 %. Ne rien signaler : 92,0 %. Seuil de 0,50 : 93,8 %. Seuil de 0,70 : 94,2 %. Les colonnes ont presque la même hauteur. La règle la plus stricte a l’exactitude la plus élevée.
Description textuelle du graphique
Un graphique à colonnes montrant le nombre de billets urgents que chaque règle manque, sur 80. Ne rien signaler en manque 80. Le seuil de 0,50 en manque 15. Le seuil de 0,70 en manque 53. La règle ayant la meilleure exactitude manque plus de trois fois autant de billets urgents que le seuil de 0,50.
Les deux graphiques montrent les trois mêmes règles. L’exactitude indique qu’elles sont presque équivalentes. Le nombre de billets urgents manqués indique qu’elles sont très différentes. Pour l’équipe de Grace, c’est le deuxième graphique qui compte.
Exploration : déplacer le seuil
Section intitulée « Exploration : déplacer le seuil »L’outil d’exploration montre les 1 000 billets de test. Le panneau du haut montre les scores des 920 billets non urgents. Celui du bas montre les scores des 80 billets urgents. Chaque panneau a sa propre échelle de comptage, car une classe est plus de 11 fois plus grande que l’autre. Les scores sont générés avec une graine aléatoire fixe. Vous voyez donc les mêmes billets à chaque visite.
Explorer
Un seuil, quatre nombres
Prédisez d’abord : Vous faites passer le seuil de 0,50 à 0,70. La précision augmente-t-elle ou diminue-t-elle? Et le rappel?
Les barres pleines sont signalées (score égal ou supérieur au seuil). Les barres pâles ne sont pas signalées. Vous pouvez aussi faire glisser la poignée ronde sur la ligne, ou la sélectionner et appuyer sur les flèches (Maj pour des pas de 0,10).
Au seuil 0,50, le modèle en signale 112 : 65 de la classe « urgent » et 47 fausses alertes. Il manque 15 des 80 billets de la classe « urgent ».
| Classe réelle | Signalés | Non signalés | Total |
|---|---|---|---|
| Urgent | 65vrai positif | 15faux négatif (manqué) | 80 |
| Non urgent | 47faux positif (fausse alerte) | 873vrai négatif | 920 |
| Total | 112 | 888 | 1 000 |
- Signalés
- 112
- sur 1 000 billets
- Précision
- 58,0 %
- 65 sur 112 signalés
- Rappel
- 81,3 %
- 65 sur 80
- Taux de faux positifs
- 5,1 %
- 47 sur 920
Description textuelle de l’explorateur
Le panneau du haut est un histogramme des scores des 920 billets non urgents. Leurs scores vont de près de 0 à environ 0,75. La plupart se situent entre 0,05 et 0,45, avec un sommet près de 0,25. Le panneau du bas est un histogramme des 80 billets urgents. Leurs scores vont d’environ 0,3 à 1. La plupart se situent entre 0,5 et 0,8, avec un sommet près de 0,57. Les deux distributions se chevauchent entre environ 0,35 et 0,65. Une ligne verticale marque le seuil. Les billets dont le score atteint ou dépasse ce seuil sont signalés.
Au seuil initial de 0,50, le modèle signale 112 billets : 65 urgents (vrais positifs) et 47 non urgents (faux positifs). Il manque 15 billets urgents (faux négatifs). Il laisse correctement 873 billets dans la file normale (vrais négatifs). La précision est de 58,0 %, le rappel de 81,3 % et le taux de faux positifs de 5,1 %.
À 0,30 : 79 vrais positifs, 1 faux négatif, 363 faux positifs, 557 vrais négatifs. Précision de 17,9 %, rappel de 98,8 %. À 0,70 : 27 vrais positifs, 53 faux négatifs, 5 faux positifs, 915 vrais négatifs. Précision de 84,4 %, rappel de 33,8 %. À 0,00, tous les billets sont signalés : le rappel est de 100 % et la précision de 8,0 %. À 1,00, aucun billet n’est signalé : le rappel est de 0 %. La précision n’est pas définie, car il n’y a aucun signalement à vérifier.
Quand vous augmentez le seuil, la ligne se déplace vers la droite. Moins de billets sont signalés. Il y a donc moins de fausses alertes, et la précision augmente. Mais davantage de billets urgents se trouvent à gauche de la ligne, donc le rappel diminue. Vous ne pouvez pas déplacer la ligne pour améliorer les deux. C’est le compromis. Seul un meilleur modèle, avec moins de chevauchement entre les deux panneaux, améliore les deux en même temps.
Exercice guidé : un seuil plus bas
Section intitulée « Exercice guidé : un seuil plus bas »Grace demande : « Et si on en signalait plus, avec un seuil de 0,30? » Utilisez les nombres ci-dessous. Vous pouvez aussi les vérifier dans l’outil d’exploration.
Au seuil de 0,30 : TP = 79, FN = 1, FP = 363, TN = 557.
- Dans
c03-notes.md, ajoutez un titre :### Threshold 0.30(seuil de 0,30). - Dessinez la matrice de confusion avec les quatre nombres et les totaux des lignes et des colonnes.
- Vérifiez les totaux. Les lignes doivent donner 80 et 920. Les quatre nombres doivent donner 1 000.
- Calculez la précision : TP sur tous les billets signalés.
- Calculez le rappel : TP sur tous les billets urgents.
- Calculez le taux de faux positifs : FP sur tous les billets non urgents.
- Calculez l’exactitude.
- Écrivez une phrase pour Grace : combien de billets signalés son agent expérimenté verra-t-il, et combien sont urgents?
Résultats attendus : 442 billets signalés; précision de 17,9 %; rappel de 98,8 %; taux de faux positifs de 39,5 %; exactitude de 63,6 %.
Afficher un exemple de réponse
| Signalés | Non signalés | Total | |
|---|---|---|---|
| Urgents | 79 | 1 | 80 |
| Non urgents | 363 | 557 | 920 |
| Total | 442 | 558 | 1 000 |
- Précision : 79 ÷ 442 = 0,179, donc 17,9 %.
- Rappel : 79 ÷ 80 = 0,988, donc 98,8 %.
- Taux de faux positifs : 363 ÷ 920 = 0,395, donc 39,5 %.
- Exactitude : (79 + 557) ÷ 1 000 = 0,636, donc 63,6 %.
Pour Grace : « À 0,30, le modèle signale 442 billets sur 1 000, et moins de 1 billet signalé sur 5 est urgent. Il manque seulement 1 des 80 billets urgents. »
L’exactitude est passée de 93,8 % à 63,6 %, mais le modèle ne manque maintenant presque rien. Est-ce mieux? Cela dépend du coût d’un examen et du coût d’un billet urgent manqué. C’est le sujet de la prochaine leçon.
Variation autonome : un seuil plus strict
Section intitulée « Variation autonome : un seuil plus strict »Tomás veut maintenant moins de signalements. Au seuil de 0,70, les nombres sont TP = 27, FN = 53, FP = 5, TN = 915.
Calculez la précision, le rappel, le taux de faux positifs et l’exactitude. Écrivez ensuite une phrase pour Omar qui n’utilise pas le mot « exactitude ».
Afficher un exemple de réponse
- Billets signalés : 27 + 5 = 32.
- Précision : 27 ÷ 32 = 84,4 %.
- Rappel : 27 ÷ 80 = 33,8 %.
- Taux de faux positifs : 5 ÷ 920 = 0,5 %.
- Exactitude : (27 + 915) ÷ 1 000 = 94,2 %.
Pour Omar : « À 0,70, presque tous les signalements sont justifiés (27 sur 32). Mais le modèle manque 53 des 80 billets urgents. C’est deux sur trois. »
Exécutez du Python dans votre navigateur
Facultatif : vérifier les quatre proportions
Cette étape est facultative. Elle vérifie l’exemple détaillé au seuil de 0,50. Remplacez les quatre nombres par ceux du seuil de 0,30 ou de 0,70, puis exécutez le code à nouveau. Au travail, des fonctions de scikit-learn comme confusion_matrix et precision_score comptent et divisent pour vous.
Tab ajoute quatre espaces. Appuyez sur Esc, puis sur Tab, pour quitter la zone. Ctrl+Enter exécute le code.
Erreur courante
L'exactitude sans tenir compte de l'équilibre des classes
Symptôme : un rapport annonce une « exactitude de 94 % », et l’équipe met le modèle en production. Après deux semaines, l’équipe de Grace trouve chaque jour des billets urgents dans la file normale. Les clients facturés deux fois attendent deux jours pour une réponse.
Cause : seulement 8 % des billets sont urgents. Un modèle qui ne signale jamais rien atteint déjà une exactitude de 92 %. Le rapport donnait un seul nombre, sans montrer le taux de base ni la matrice de confusion. Personne n’a donc vu que le modèle manquait 53 des 80 billets urgents.
Solution : présentez d’abord le taux de base (« 80 des 1 000 billets de test sont urgents »). Montrez ensuite la matrice de confusion, le rappel et la précision pour la classe rare. Comparez le modèle à la règle « ne rien signaler ». Le modèle doit faire nettement mieux que cette règle pour la classe qui compte. Sinon, il n’est pas prêt.
Vérifiez votre compréhension
Un modèle signale 50 billets. Parmi eux, 40 sont urgents. Les données de test contiennent 100 billets urgents. Quelles sont la précision et le rappel?
Afficher la réponse
La précision est de 40 sur les 50 signalements : 80 %. Le rappel est de 40 sur les 100 billets urgents : 40 %. Le modèle a généralement raison quand il signale un billet, mais il manque 60 des 100 billets urgents. Les deux nombres utilisent des totaux différents comme diviseurs : les signalements pour la précision, les billets urgents pour le rappel.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Vérifiez votre compréhension
Un collègue dit : « Notre nouveau modèle a une exactitude de 95 %, donc il est meilleur que l'ancienne règle. » Quels sont les deux nombres que vous demandez d'abord, et pourquoi?
Afficher la réponse
Demandez le taux de base (la fréquence de la classe importante) et le rappel pour cette classe. Vous pouvez aussi demander la matrice de confusion complète. Si seulement 5 % des cas sont positifs, une règle qui ne signale jamais rien atteint aussi 95 % d’exactitude. L’exactitude seule ne montre pas si le modèle détecte les cas rares.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Vérifiez votre compréhension
Prédisez : Tomás abaisse le seuil de 0,50 à 0,40. Que deviennent le nombre de faux négatifs, le nombre de faux positifs et la précision?
Afficher la réponse
Le modèle signale plus de billets. Les faux négatifs diminuent, car davantage de billets urgents dépassent maintenant le seuil (de 15 à 7). Les faux positifs augmentent, car davantage de billets normaux dépassent aussi le seuil (de 47 à 155). La précision passe de 58,0 % à 32,0 %, car les signalements supplémentaires sont surtout de fausses alertes. Vous pouvez le vérifier dans l’explorateur.
Votre réponse contient-elle les points principaux de la nôtre ?
Connectez-vous et inscrivez-vous au cours pour enregistrer vos réponses. Chaque vérification compte pour le certificat.
Récapitulatif
- Un seuil transforme un score en signalement. Chaque seuil donne quatre nombres : vrais positifs, faux négatifs, faux positifs et vrais négatifs. Ensemble, ils forment la matrice de confusion.
- La précision divise par le nombre de signalements. Le rappel divise par le nombre de billets réellement urgents. Le taux de faux positifs divise par le nombre de billets non urgents. Demandez toujours « sur quel total? ».
- Avec une classe rare, l’exactitude est trompeuse. Ne rien signaler donne une exactitude de 92 % sur les billets de Larkfield.
- Déplacer le seuil impose un compromis entre la précision et le rappel. Seul un meilleur modèle améliore les deux.
Ensuite, vous attribuez un coût à chaque erreur et trouvez le seuil qui coûte le moins à Larkfield.
Leçon suivante : Seuils et coûts