TNI+VO · Exercice de Programmation

EP01_02 — 📊 Performance Prédictive — Métriques de ML en VC

1.17.2 EP01_02 📊 Performance Prédictive — Métriques de ML en VC

Dans cette activité, vous entrerez dans le monde de l’Apprentissage Automatique (Machine Learning). Votre objectif est d’évaluer la performance d’un classificateur binaire en calculant des métriques à partir d’une Matrice de Confusion.

1.17.2.1 🧠 Pourquoi la bonne métrique est-elle importante ?

Imaginez un détecteur de pièces de R$ 1,00. L’impact de l’erreur définit la métrique prioritaire :

Métrique Exemple Pratique Importance en TDI/VC
Exactitude Comptage de Grains Utile lorsque les classes sont équilibrées (ex : la moitié des grains défectueux, l’autre moitié sains).
Précision Sécurité/Biométrie Cruciale pour éviter les Faux Positifs (ex : ne pas permettre à un imposteur d’accéder à un système par erreur de reconnaissance).
Sensibilité Santé (Tumeurs) Cruciale pour éviter les Faux Négatifs (ex : ne pas laisser une tumeur passer inaperçue lors d’un examen radiologique).
Score F1 Billets de Banque Idéale pour un équilibre entre ne pas rejeter de vrais billets et ne pas accepter de faux billets.

1.17.2.2 📊 La Matrice de Confusion

Prédit Positif Prédit Négatif
Réel Positif VP (Vrai Positif) FN (Faux Négatif)
Réel Négatif FP (Faux Positif) VN (Vrai Négatif)

Tâche :

  1. Lisez 4 valeurs entières dans l’ordre : VP, FN, FP, VN.
  2. Calculez les métriques à l’aide des formules :

\[\text{Exactitude} = \frac{VP + VN}{VP + VN + FP + FN}\]

\[\text{Précision} = \frac{VP}{VP + FP}\]

\[\text{Sensibilité (Rappel)} = \frac{VP}{VP + FN}\]

\[\text{Score F1} = \frac{2 \times \text{Précision} \times \text{Sensibilité}}{\text{Précision} + \text{Sensibilité}}\]

  1. Affichez les résultats formatés avec deux décimales, un par ligne.

📌 Important :

  • Utilisez la division en virgule flottante pour éviter des résultats tronqués.
  • L’ordre de sortie doit être : Exactitude, Précision, Sensibilité et Score F1.
  • Consultez la simulation interactive de cet EP sur la Figure 1.12.

1.17.2.3 📌 Exemple d’Exécution

Entrée Sortie Observation
40 0.75 Exactitude
10 0.73 Précision
15 0.80 Sensibilité
35 0.76 Score F1

(Note : VP=40, FN=10, FP=15, VN=35. Nombre total de cas = 100)

🎮 Simulateur EP01_02 : Performance Prédictive — Métriques de ML Matrice de Confusion & Métriques

Sélectionnez un scénario prédéfini ou ajustez les curseurs pour observer l'impact en temps réel sur la matrice de confusion et les métriques d'évaluation.

ENTRÉES (PARAMÈTRES DE LA MATRICE)
40
10
15
35
MATRICE DE CONFUSION DISCRÈTE
Pred +
Pred −
Réel +
VP
40
FN
10
Réel −
FP
15
VN
35
MÉTRIQUES CALCULÉES EN TEMPS RÉEL
Exactitude (Accuracy) 0.75
(VP + VN) / Total
Précision 0.73
VP / (VP + FP)
Sensibilité (Rappel) 0.80
VP / (VP + FN)
Score F1 (Moyenne Harmonique) 0.76
2 · (P · R) / (P + R)
Total d'Échantillons : 100
Figure 1.12: Simulateur EP01_02 : Performance Prédictive — Métriques de ML
%%writefile EP01_02.cpp
// your solution
Overwriting EP01_02.cpp
TestSuite("EP01_02.cpp").run()
✔️ EP01_02.cases existe déjà dans casos/
📋 5 cas chargé(s) depuis casos/EP01_02.cases

🔍 Test de C++ : EP01_02.cpp
⚠️ EP01_02.cpp : fichier vide (moins de 3 lignes). Tests ignorés.