Bias-Variance Tradeoff
Le compromis biais-variance décompose l’erreur de prédiction attendue en biais, variance et bruit, et explique pourquoi les modèles trop simples comme les modèles trop complexes échouent.
Le compromis biais-variance décrit comment l’erreur attendue d’un modèle sur de nouvelles données se décompose en deux éléments qui évoluent en sens opposés selon la complexité du modèle. Le biais correspond à l’erreur due à des hypothèses trop simples pour saisir le véritable motif, ce qui entraîne le sous-apprentissage. La variance correspond à l’erreur causée par la sensibilité aux données d’entraînement particulières, ce qui entraîne le surapprentissage. Rendre un modèle plus flexible réduit généralement le biais et augmente la variance ; l’erreur totale minimale se situe donc à un niveau de complexité intermédiaire. Dans leur article de 1992, « Neural Networks and the Bias/Variance Dilemma », Stuart Geman, Elie Bienenstock et René Doursat ont introduit cette idée dans l’apprentissage automatique.
Décomposition de l’erreur#
Cette décomposition examine une même famille de modèles, entraînés de nombreuses fois, chaque fois sur un nouvel ensemble d’entraînement tiré de la même source. Pour l’erreur quadratique, l’erreur attendue en un point d’entrée se décompose exactement en trois termes. Le biais au carré est l’écart quadratique entre la prédiction moyenne sur tous ces ensembles d’entraînement et la vraie valeur ; une régression linéaire ajustée à une relation courbe conserve un biais élevé, quelle que soit la quantité de données qu’elle voit. La variance mesure la dispersion des prédictions autour de leur propre moyenne d’un ensemble d’entraînement à l’autre ; elle est élevée pour les arbres de décision profonds et les réseaux de neurones de grande taille sans régularisation. Le troisième terme, le bruit irréductible, correspond à l’aléa présent dans les étiquettes elles-mêmes, que nul modèle ne peut éliminer.
Répéter l’ajustement permet de mesurer directement les deux termes. Cet exemple NumPy ajuste des polynômes de degrés 1, 3 et 12 à 1 000 ensembles d’entraînement de 20 points bruités issus d’une onde sinusoïdale :
import numpy as np
rng = np.random.default_rng(0)
x = np.linspace(0, 1, 20) # 20 training inputs, evenly spaced
x_test = np.linspace(0, 1, 200)
true_curve = np.sin(2 * np.pi * x_test)
for degree in [1, 3, 12]:
# Fit the same polynomial degree to 1,000 training sets that differ only in their label noise
predictions = []
for _ in range(1000):
y = np.sin(2 * np.pi * x) + rng.normal(0, 0.3, x.size)
predictions.append(np.polyval(np.polyfit(x, y, degree), x_test))
predictions = np.array(predictions)
# Bias^2: squared gap between the average fit and the truth; variance: spread of fits around their average
bias_sq = np.mean((predictions.mean(axis=0) - true_curve) ** 2)
variance = np.mean(predictions.var(axis=0))
print(f"Degree {degree:2d}: bias^2 = {bias_sq:.3f}, variance = {variance:.3f}")Une droite a un biais au carré de 0.205 et une variance de seulement 0.008. Une fonction cubique épouse presque parfaitement la sinusoïde en moyenne, ramenant le biais au carré à 0.005 tandis que la variance double pour atteindre 0.016. Un polynôme de degré 12 n’a pas de biais mesurable, mais sa variance atteint 0.074, car il se déforme pour suivre le bruit de chaque échantillon. La fonction cubique présente l’erreur totale la plus faible, et chaque modèle subit aussi la variance irréductible du bruit, égale à 0.09.
Diagnostiquer le biais et la variance#
Les erreurs d’entraînement et de validation révèlent quel terme domine. Une erreur élevée pour les deux indique un biais. Une faible erreur d’entraînement, mais une erreur de validation bien supérieure, indique une variance. Les courbes d’apprentissage, qui représentent les deux erreurs en fonction de la quantité de données d’entraînement, distinguent les deux cas : l’écart d’un modèle à variance élevée se réduit à mesure que les données augmentent, tandis que les deux courbes d’un modèle à biais élevé se rejoignent tôt à une erreur élevée et y restent. Avec l’entraînement Ultralytics YOLO, l’argument fraction entraîne le modèle sur une partie du sous-ensemble d’entraînement, par exemple fraction=0.25 pour le premier quart des images, tandis que la validation utilise toujours l’ensemble complet du sous-ensemble de validation ; quelques entraînements YOLO26 sur des fractions croissantes permettent donc de tracer une courbe d’apprentissage pour un jeu de données personnalisé.
Maîtriser le compromis#
La variance diminue avec davantage de données, l’augmentation de données, la régularisation, comme la décroissance des poids et le dropout, l’arrêt anticipé et la moyenne de plusieurs modèles, comme le font le bagging et les forêts aléatoires. Le biais diminue avec un modèle plus grand, une ingénierie des caractéristiques plus riche, une régularisation plus faible, un entraînement plus long et le boosting, qui ajoute des modèles corrigeant les erreurs de l’ensemble jusque-là. L’optimisation des hyperparamètres et la validation croisée permettent de choisir le réglage où les deux termes s’équilibrent sur des données mises de côté.
La courbe classique en U de l’erreur de test en fonction de la complexité vaut pour une famille de modèles donnée, comme des polynômes de degré croissant. Les réseaux de neurones fortement surparamétrés peuvent la dépasser : l’erreur de test augmente à mesure que le modèle approche de la taille nécessaire pour ajuster parfaitement chaque point d’entraînement, puis diminue à nouveau lorsqu’il grandit davantage ; ce phénomène s’appelle la double descente. Le biais et la variance contribuent toujours ensemble à l’erreur, mais la variance n’augmente plus régulièrement avec le nombre de paramètres.
Biais statistique et autres formes de biais#
Dans ce compromis, le biais est une propriété de l’algorithme d’apprentissage appliqué à une tâche. Le biais en IA désigne le traitement systématiquement injuste de groupes de personnes, et le biais des jeux de données, des données d’entraînement qui représentent mal le contexte de déploiement, par exemple lorsque les images de circulation nocturne sont rares. Un modèle peut présenter un faible biais statistique tout en restant injuste, car il peut ajuster avec précision un jeu de données biaisé, biais compris.










