Définition
Prédire un label catégoriel discret à partir d'un ensemble d'apprentissage annoté. Processus en 2 étapes : construction du modèle puis prédiction.
Classification vs Prédiction
Classification labels discrets/nominaux
Prédiction fonctions continues (régression)
Applications : crédit, médecin, détection fraude.
Supervisé vs Non-supervisé
Supervisé labels connus → classification
Non-supervisé labels inconnus → clustering
En classification, le test set est indépendant du training set.
Processus en 2 étapes
- Étape 1 — Construction : algorithme apprend sur training set → produit un modèle (règles, arbre, formule)
- Étape 2 — Utilisation : estimer accuracy sur test set, puis classifier les nouvelles données
Préparation des données
- Nettoyage : réduire le bruit, valeurs manquantes
- Sélection de features : supprimer attributs non pertinents
- Transformation : normalisation, discrétisation
Overfitting
Trop de branches/règles = le modèle mémorise le bruit → mauvaise généralisation. Solutions :
- Prépruning : arrêt précoce
- Postpruning : élagage après coup
Évaluation
- Accuracy = tuples corrects / total
- Sensibilité = vrais positifs / positifs réels
- Spécificité = vrais négatifs / négatifs réels
- Précision = vrais positifs / (VP + FP)
- Courbe ROC : TPR vs FPR, AUC idéale = 1.0
Validation croisée
- Holdout : 2/3 train, 1/3 test
- K-fold (k=10) : k partitions, chacune test à tour de rôle
- Leave-one-out : k = nb tuples
- Bootstrap : échantillonnage avec remise, ~63% dans training
Méthodes d'ensemble
- Bagging : vote majoritaire sur k modèles bootstrap
- Boosting / Adaboost : vote pondéré, tuples mal classés → poids augmenté
- Boosting > accuracy mais risque d'overfitting
Information Gain (ID3)
Gain(A) = Info(D) − InfoA(D)
Info(D) = −Σ pi log2(pi)
Sélectionner l'attribut avec le gain maximal. Biaisé vers attributs multi-valués → C4.5 corrige avec la Gain Ratio.
Gini Index (CART)
gini(D) = 1 − Σ pj²
Favorise partitions équilibrées et pures. Biaisé vers multi-valués, difficile avec nombreuses classes.
Naïve Bayes — clés
- P(Ci|X) ∝ P(X|Ci) · P(Ci)
- Indépendance conditionnelle des attributs
- Correction de Laplace si P = 0
- Utiliser log-somme pour éviter underflow
- Frontière de décision quadratique
SVM — clés
- Hyperplan séparateur à marge maximale
- Support vectors = tuples les plus proches
- Kernel trick → espace de dim. supérieure
- Soft margin → slack variables ξ, paramètre C
- Kernels : linéaire, polynomial, RBF, sigmoïde
Réseaux de neurones (BP)
- Input → hidden → output layers
- Poids ajustés pour minimiser MSE
- Long à entraîner, peu interprétable
- Haute tolérance au bruit
- Régression non-linéaire
| Algorithme | Principe | Points forts | Limites |
|---|---|---|---|
Arbre ID3/C4.5 Information Gain / Gain Ratio |
Diviser-pour-régner top-down. Sélection d'attributs par gain d'information. Pruning pour éviter overfitting. | Interprétable Rapide SQL compatible |
Corr. attributs difficiles Overfitting si pas pruning |
Naïve Bayes Probabiliste |
Maximise P(Ci|X) via théorème de Bayes. Suppose indépendance conditionnelle des attributs. | Très rapide Incrémental Frontière quadratique |
Indépendance rarement vraie Perte d'accuracy |
Bayesian Belief Net Graphe causal (DAG) |
Représente les dépendances entre variables. Table CPT par variable. Plus flexible que Naïve Bayes. | Modélise dépendances Distribution jointe |
Structure peut être inconnue Apprentissage complexe |
SVM Marge maximale |
Trouve l'hyperplan séparateur à marge maximale. Kernel trick pour données non-linéaires. Soft margin via slack variables. | Haute accuracy Gère hautes dimensions Convexe → solution unique |
Sensible au bruit Lent si gros dataset 2 classes par défaut |
Backpropagation Réseau de neurones |
Apprentissage par ajustement itératif des poids. Minimise MSE. Propagation forward puis erreur backward. | Tolère le bruit Patterns complexes Parallélisable |
Lent à entraîner Boîte noire Hyperparamètres empiriques |
Règles IF-THEN RIPPER, FOIL, CN2 |
Extraction séquentielle depuis training data. Coverage et accuracy par règle. Résolution de conflits si plusieurs règles. | Très interprétable Facile à valider |
Moins précis Fragile sur données complexes |