📚 Introduction à la Classification avec Scikit-learn
Apprenez à catégoriser vos données à l’aide d’algorithmes supervisés comme la régression logistique, SVM ou encore les forêts aléatoires.
🔍 Qu'est-ce que l'apprentissage supervisé ?
L'apprentissage supervisé consiste à prédire une sortie (appelée label) à partir d’entrées (appelées features). On l’utilise pour :
- 📈 Des tâches de régression (prédire une valeur continue comme un prix ou une note)
- 📂 Des tâches de classification (prédire une catégorie, comme "spam" ou "non spam")
📊 Types de classification
Il existe plusieurs types de labels en classification :
- 🧭 Ordinale : les classes ont un ordre logique (ex : "faible", "moyen", "élevé")
- 🎨 Nominale : les classes n’ont pas d’ordre (ex : couleurs, genres, pays)
Les problèmes peuvent être :
- 🟢 Binaires : deux classes (ex : admis ou non)
- 🌈 Multi-classes : plus de deux classes (ex : A, B, C...)
🧠 Les algorithmes de classification courants
- Logistic Regression (régression logistique)
- SVM (Support Vector Machines)
- KNN (K plus proches voisins)
- Arbres de décision
- Random Forest
- Boosting (XGBoost, AdaBoost, etc.)
- Stacking & Voting Classifiers
⚙️ Structure d'un pipeline supervisé
Un problème de classification est généralement structuré comme suit :
- Création de la feature matrix (X) et du label vector (y)
- Division du dataset en train/test
- Entraînement du modèle sur les données d’apprentissage
- Évaluation avec prédictions sur le jeu de test
- Analyse via matrice de confusion & métriques
🧪 Multi-classes vs Binaire
Deux stratégies sont utilisées pour résoudre les problèmes à plus de 2 classes :
- One-vs-All (OvA) : chaque classe est opposée aux autres
- One-vs-One (OvO) : chaque paire de classes a son propre modèle
Le schéma OvO nécessite \( \frac{K(K-1)}{2} \) modèles pour K classes, souvent combinés avec un vote majoritaire.
✅ En résumé
- Classification = prédiction de labels catégoriels
- Utilisation de jeux de données séparés pour entraînement/test
- Matrice de confusion pour visualiser les performances
- Algorithmes populaires : Logistic Regression, SVM, Random Forest, etc.
- Cas multi-classes gérés avec OvA ou OvO