Chapitre 4 — Algorithmes de classification
- Décrire le fonctionnement de la régression logistique, du KNN, du SVM, des arbres de décision et des forêts aléatoires.
- Appliquer les formules de la sigmoïde, des distances euclidienne et de Manhattan, du vote majoritaire.
- Connaître les hyperparamètres clés (k, q, marge).
- Comparer les avantages et limites de chaque algorithme.
4.1 — Vue d'ensemble
- Régression logistique (RL) : calcule un score pondéré puis le compresse en probabilité.
- k-Plus Proches Voisins (KNN) : dis-moi qui sont tes k voisins les plus proches, et je te dirai qui tu es (vote de majorité).
- SVM : trace une « autoroute » la plus large possible (marge maximale) entre deux clans.
- Arbre de décision (DT) : joue au jeu du portrait chinois (« Est-il fumeur ? Si oui, a-t-il plus de 50 ans ? »).
- Forêts aléatoires (RF) : fait voter une foule d'arbres décisionnels indépendants pour éviter les erreurs individuelles.
4.2 — Régression logistique
La régression logistique est un algorithme d'apprentissage supervisé utilisé pour prédire la probabilité d'une variable cible catégorielle. Elle est principalement utilisée pour la classification binaire. main_3.pdf, p. 14
Algorithme
Soit E = {(xi, yi)i=1,…,n} un jeu de données avec xi ∈ ℝp et yi ∈ {0, 1}.
Étape 1 — Combinaison linéaire : l'algorithme calcule une somme pondérée des caractéristiques :
où w1, …, wp sont les poids et b le biais.
Étape 2 — Fonction sigmoïde : pour convertir le score continu z en probabilité, on le passe dans la fonction sigmoïde :
Étape 3 — Seuillage : pour obtenir une classification finale, on applique un seuil (généralement 0,5) :
Un médecin évalue le risque cardiaque à l'aide de deux variables : x1 = âge (50 ans), x2 = cholestérol (2,5 g/L). Poids appris : w1 = 0,08, w2 = 1,2, b = −6,0.
-
Combinaison linéaire :
z = (0,08 × 50) + (1,2 × 2,5) − 6,0 = 4,0 + 3,0 − 6,0 = +1,0 -
Exponentielle :
e−z = e−1,0 ≈ 0,36788 -
Sigmoïde :
σ(1,0) = 1 / (1 + 0,36788) ≈ 0,73105 (soit 73,11 %) - Décision : puisque σ(z) ≈ 0,7311 > 0,5, le modèle prédit la classe positive f(x⃗) = 1 (patient à risque).
Interprétation : le patient a 73,11 % de chances d'être à risque. Le score z = +1,0 > 0 le place du côté positif de la frontière de décision linéaire.
- Erreur de signe : ne pas oublier le signe moins dans l'exponentielle. La formule est bien 1 / (1 + e−z).
- Valeur en z = 0 : σ(0) = 1 / (1 + 1) = 0,5, ce qui correspond à l'incertitude maximale.
4.3 — k-Plus Proches Voisins (KNN)
Étant donné un ensemble d'apprentissage E = {(Xi, yi)i=1,…,n}, une distance d sur 𝒳 et un hyperparamètre k ∈ ℕ*, l'algorithme des k plus proches voisins consiste à étiqueter une nouvelle observation X en fonction des étiquettes des k points de l'ensemble d'apprentissage dont elle est la plus proche.
main_3.pdf, p. 17Règle de décision
En notant Nk(X) l'ensemble des k plus proches voisins de X dans E :
-
Classification — vote de majorité :
-
Régression — moyenne :
Distances
L'ingrédient essentiel de l'algorithme est la distance permettant de déterminer quelles sont les observations les plus proches du point à étiqueter. Soient deux points u⃗ et v⃗ de coordonnées respectives (u1, …, up) et (v1, …, vp) dans ℝp.
-
Distance euclidienne :
-
Distance de Manhattan :
Soit deux points u⃗ = (1, 2) et v⃗ = (4, 6).
- Δ1 = |4 − 1| = 3, Δ2 = |6 − 2| = 4
- Euclidienne : d = √(3² + 4²) = √(9 + 16) = √25 = 5
- Manhattan : d = 3 + 4 = 7
Choix de k : dilemme biais-variance
| Valeur de k | Effet sur la frontière | Risque |
|---|---|---|
| k = 1 | Frontière très découpée, épouse chaque point | Sur-apprentissage |
| k intermédiaire | Frontière lissée, structure locale préservée | Bon compromis |
| k très grand | Frontière excessivement lissée | Sous-apprentissage |
Si deux classes ou plus sont aussi fréquentes dans le k-voisinage, on peut :
- Augmenter k de 1.
- Tirer une classe au hasard parmi les plus fréquentes.
- Attribuer la classe majoritaire dans les données.
- Pondérer les exemples par leur distance à la donnée à classer.
Avantages et limites
| Avantages | Limites |
|---|---|
|
|
4.4 — Machines à Vecteurs Supports (SVM)
Les SVM sont des algorithmes basés sur un algorithme linéaire (Vapnik et Lerner, 1963) permettant d'apprendre bien plus que des modèles linéaires grâce à l'astuce du noyau. Ce sont des approches discriminatives qui construisent des surfaces de séparation optimales en maximisant la marge. main_3.pdf, p. 23
Séparabilité linéaire
Soit E = {(xi, yi)i=1,…,n} avec xi ∈ ℝp et yi ∈ {−1, +1}. On dit que E est linéairement séparable s'il existe au moins un hyperplan dans ℝp tel que tous les points positifs (étiquetés +1) soient d'un côté et tous les points négatifs (étiquetés −1) de l'autre.
Marge et vecteurs de support
- Marge γ : distance de l'hyperplan séparateur à l'observation du jeu d'entraînement la plus proche.
- Hyperplans H+ et H− : hyperplans parallèles au séparateur, situés à une distance γ de part et d'autre.
- Vecteurs de support : observations situées à une distance exactement égale à γ de l'hyperplan séparateur. Ce sont elles qui « soutiennent » H+ et H−.
- Zone d'indécision : zone située entre H+ et H− ; elle ne contient aucune observation.
Pour l'hyperplan séparateur H : w⃗Tx⃗ + b = 0, la marge vaut γ = 1 / ‖w⃗‖ dans la formulation canonique. L'objectif de la SVM est de maximiser cette marge, ce qui équivaut à minimiser ‖w⃗‖² sous contraintes yi(w⃗Txi + b) ≥ 1.
Note : la formulation duale et l'astuce du noyau ne sont pas détaillées mathématiquement dans les diapositives du cours.
Deux cas de SVM
| Type | Conditions |
|---|---|
| SVM à marge rigide | Données linéairement séparables |
| SVM à marge souple | Données linéairement non séparables |
Si l'on déplace légèrement une observation qui est vecteur de support, la zone d'indécision et l'hyperplan séparateur changent. À l'inverse, si l'on déplace légèrement une observation qui n'est pas vecteur de support, H n'est pas affecté.
4.5 — Arbres de décision
Un arbre de décision est un modèle de prédiction représenté sous la forme d'un arbre, dont :
- Les nœuds internes sont étiquetés par un test (fonction de décision) applicable à tout individu, généralement sur un attribut de description.
- Les arcs (ou enfants) contiennent les résultats du test, chaque arc correspondant à une réponse possible.
- Les feuilles sont étiquetées par une classe.
Pour prédire l'étiquette d'une observation, on « suit » les réponses aux tests depuis la racine de l'arbre, et on retourne l'étiquette de la feuille à laquelle on arrive. Ce classifieur a une traduction immédiate en règles de décision mutuellement exclusives et ordonnées (si… alors… sinon…).
main_3.pdf, p. 27Deux types d'arbres
- Arbres de classification : la prédiction est une étiquette de classe.
- Arbres de régression : la prédiction est une valeur numérique réelle.
Construction : structure générique de l'algorithme
- Initialiser l'arbre courant à vide ; racine = nœud courant.
-
Répéter :
- Décider si le nœud courant est terminal.
- Si terminal, lui affecter une classe (classe majoritaire du nœud).
- Sinon, sélectionner un test et créer autant de nouveaux nœuds qu'il y a de réponses possibles.
- Passer au nœud suivant non exploré.
- Arrêt : plus de nœud sans classe.
Critères d'arrêt (nœud terminal)
- (Presque) tous les exemples correspondant à ce nœud sont de la même classe.
- Il n'y a plus d'attribut non utilisé dans la branche.
- On a atteint la profondeur maximale autorisée.
Algorithmes célèbres
- CART (Classification and Regression Tree) — Breiman, 1984.
- C4.5 — Quinlan, 1994.
Les formules mathématiques d'impureté (indice de Gini pour CART, gain d'information pour C4.5) ne sont pas explicitées dans les diapositives du cours. Le critère reste qualitatif : « le pivot qui disperse le mieux les classes ».
Attributs : âge (discrétisé en jeune < 20, actif 21–50, senior > 50), sexe, fumeur, corpulence (faible, moyenne, forte). Une partie de la base est étiquetée par un cardiologue en « à risque » (O) ou « non à risque » (N).
L'arbre choisit d'abord le pivot qui disperse le mieux les classes (ici Âge), puis continue récursivement sur chaque fils (Sexe, Corpulence, Fumeur) jusqu'à obtenir des feuilles pures.
main_3.pdf, p. 31–384.6 — Forêts aléatoires
Motivation : instabilité des arbres
C'est le principal inconvénient des arbres de décision : choisir un attribut plutôt qu'un autre se joue à peu de chose, et le choix d'un attribut-test près de la racine influence grandement le reste de la construction. Ces algorithmes ont donc une variance importante. L'idée des forêts aléatoires est d'apprendre plusieurs arbres et de faire voter l'ensemble. main_3.pdf, p. 42
Soit E un ensemble d'apprentissage de n observations étiquetées et p attributs, et K le nombre d'échantillons :
- Tirer aléatoirement et avec remise (bootstrap) K échantillons Dj de taille n.
- Entraîner un arbre de décision sur chaque Dj en respectant la règle suivante : à chaque sélection d'un attribut de split, le choisir dans un sous-ensemble de q attributs tiré aléatoirement.
- Exécuter les K arbres sur les nouvelles données.
- Agréger le résultat : par vote majoritaire (classification) ou moyenne (régression).
Choix de q
| Tâche | Valeur par défaut de q |
|---|---|
| Classification | q = √p |
| Régression | q = p/3 |
Ce qui permet aussi de réduire considérablement les temps de calcul puisqu'on ne considère que peu de variables à chaque nœud.
4.7 — Comparaison des algorithmes
| Algorithme | Idée clé | Hyperparamètres | Forces | Faiblesses |
|---|---|---|---|---|
| Régression logistique | Score linéaire → probabilité par sigmoïde | Seuil (0,5 par défaut) | Interprétable, probabilités calibrées | Frontière linéaire uniquement |
| KNN | Vote des k voisins les plus proches | k, distance | Simple, non paramétrique | Coûteux, malédiction de la dimensionnalité |
| SVM | Marge maximale | Noyau, paramètre de régularisation | Robuste, efficace en grande dimension | Peu interprétable, sensible aux hyperparamètres |
| Arbre de décision | Partitionnement récursif | Profondeur, critère de split | Interprétable, gère données hétérogènes | Instable (variance élevée) |
| Forêts aléatoires | Bagging + sous-espace d'attributs | K, q | Réduit la variance, robuste | Moins interprétable, plus coûteux |
- RL : z = w⃗Tx⃗ + b, σ(z) = 1/(1+e−z), seuil 0,5.
- KNN : distances euclidienne / Manhattan, vote majoritaire ou moyenne, k à choisir.
- SVM : marge maximale, vecteurs de support, hyperplans H+ et H−.
- Arbre : partitionnement récursif par le pivot qui disperse le mieux les classes.
- Forêt : K échantillons bootstrap, q = √p ou p/3, vote/moyenne.
- Écrivez la fonction sigmoïde et donnez la valeur de σ(0).
- Calculez les distances euclidienne et Manhattan entre u⃗ = (1, 2) et v⃗ = (4, 6).
- Expliquez le rôle des vecteurs de support dans une SVM.
- Pour une base avec p = 100 caractéristiques, combien de variables sont sélectionnées à chaque nœud dans une forêt aléatoire pour la classification ?
- Quels sont les inconvénients majeurs de KNN en termes de mémoire et de temps de calcul ?