Bagging
Le Bagging, acronyme de Bootstrap AGGregatING, est une technique d’apprentissage d’ensemble (ensemble learning) en apprentissage automatique (machine learning) conçue pour améliorer la stabilité, la précision et la robustesse des modèles de prédiction. Elle consiste à créer de multiples versions d’un prédicteur en entraînant plusieurs modèles de base sur différents sous-ensembles de données d’entraînement générés par échantillonnage avec remise (bootstrap), puis à agréger leurs prédictions pour obtenir une prédiction finale unique et plus performante.
Les concepts fondamentaux et les principes essentiels du Bagging reposent sur deux idées principales : l’échantillonnage bootstrap et l’agrégation. L’échantillonnage bootstrap est un processus statistique qui consiste à générer de multiples ensembles de données d’entraînement, appelés échantillons bootstrap, à partir de l’ensemble de données d’entraînement original. Chaque échantillon bootstrap est créé en tirant aléatoirement des instances de l’ensemble original avec remise, ce qui signifie qu’une même instance peut apparaître plusieurs fois dans un échantillon bootstrap, tandis que d’autres peuvent ne pas y figurer du tout. Typiquement, chaque échantillon bootstrap a la même taille que l’ensemble de données original. Sur chacun de ces échantillons bootstrap, un modèle de base (par exemple, un arbre de décision, un réseau de neurones) est entraîné indépendamment. L’étape d’agrégation intervient ensuite pour combiner les prédictions de tous les modèles de base. Pour les tâches de classification, l’agrégation se fait généralement par un vote majoritaire (la classe prédite le plus souvent par les modèles individuels est choisie). Pour les tâches de régression, elle se fait en calculant la moyenne des prédictions des modèles individuels. Le principe sous-jacent est que l’agrégation de multiples modèles, surtout s’ils sont instables (c’est-à-dire que de petits changements dans les données d’entraînement peuvent entraîner des changements significatifs dans le modèle appris), permet de réduire la variance globale de la prédiction. En effet, les erreurs dues à la variance de chaque modèle tendent à se compenser, conduisant à une prédiction plus stable et moins sujette au surajustement (overfitting) sur les données d’entraînement.
L’importance du Bagging réside principalement dans sa capacité à améliorer significativement les performances des algorithmes d’apprentissage instables. Des modèles comme les arbres de décision non élagués, qui ont tendance à avoir une forte variance et à surajuster les données, bénéficient grandement du Bagging. En réduisant la variance, le Bagging augmente la généralisation du modèle, c’est-à-dire sa capacité à bien performer sur des données nouvelles et non vues. Il contribue ainsi à la construction de systèmes de prédiction plus fiables et plus précis dans de nombreux domaines. De plus, le Bagging a joué un rôle pionnier dans le développement des méthodes d’ensemble, ouvrant la voie à des algorithmes encore plus puissants comme les Forêts Aléatoires (Random Forests), qui sont une extension directe du Bagging. Sa simplicité conceptuelle et sa facilité de mise en œuvre, notamment sa parallélisabilité inhérente (chaque modèle de base pouvant être entraîné simultanément), en font une technique très prisée.
Les applications pratiques du Bagging sont nombreuses et couvrent un large éventail de secteurs. En finance, il est utilisé pour la détection de fraudes, l’évaluation du risque de crédit ou la prédiction de faillites d’entreprises. Dans le domaine médical, le Bagging peut aider au diagnostic de maladies en combinant les avis de plusieurs modèles basés sur des données cliniques, ou à la découverte de médicaments en analysant de grandes quantités de données moléculaires. En bioinformatique, il est appliqué à l’analyse de données génomiques et protéomiques, par exemple pour l’identification de gènes pertinents. La reconnaissance d’images et de la parole, ainsi que le traitement du langage naturel, bénéficient également du Bagging pour améliorer la précision des classifieurs et des systèmes de prédiction. Un exemple concret serait l’utilisation du Bagging avec des arbres de décision pour prédire si un client va résilier son abonnement (attrition client). Plusieurs arbres seraient entraînés sur des échantillons bootstrap des données clients, et la prédiction finale (résiliation ou non) serait déterminée par le vote majoritaire de ces arbres. De même, pour estimer le prix d’un bien immobilier, plusieurs modèles de régression (comme des arbres de régression) entraînés par Bagging pourraient fournir des estimations, et la moyenne de ces estimations constituerait la prédiction finale.
Il existe plusieurs nuances et variations du concept de Bagging. La distinction la plus fondamentale concerne le type de tâche : pour la classification, l’agrégation est un vote majoritaire, tandis que pour la régression, c’est une moyenne. Une variation notable est le « Pasting », qui est similaire au Bagging, mais où les sous-ensembles de données sont échantillonnés sans remise à partir de l’ensemble d’entraînement original. Cela peut être utile lorsque la taille de l’ensemble de données est très grande. Une autre technique apparentée est la méthode des « Random Subspaces », où, en plus de l’échantillonnage des instances, on sélectionne aléatoirement un sous-ensemble de caractéristiques (features) pour entraîner chaque modèle de base. Cela contribue davantage à décorréler les modèles. Une caractéristique importante et utile du Bagging est l’estimation de l’erreur « Out-of-Bag » (OOB). Pour chaque instance de l’ensemble d’entraînement original, on peut calculer une prédiction en utilisant uniquement les modèles de base qui n’ont pas inclus cette instance dans leur échantillon bootstrap respectif (ces instances sont dites « out-of-bag »). L’erreur OOB est la moyenne des erreurs de prédiction sur ces instances OOB et fournit une estimation non biaisée de l’erreur de généralisation du modèle Bagging, sans nécessiter un ensemble de validation séparé. Bien que les arbres de décision soient les modèles de base les plus couramment utilisés avec le Bagging en raison de leur instabilité et de leur capacité à capturer des interactions complexes, d’autres types de modèles peuvent être utilisés, à condition qu’ils présentent une certaine instabilité.
Plusieurs concepts sont étroitement liés au Bagging. Il s’agit d’une forme d’apprentissage d’ensemble (Ensemble Learning), une catégorie plus large de méthodes qui combinent plusieurs modèles pour améliorer la performance. Le Boosting est une autre technique d’ensemble majeure, mais elle diffère fondamentalement du Bagging : le Boosting construit les modèles de manière séquentielle, chaque nouveau modèle tentant de corriger les erreurs des modèles précédents, et se concentre souvent sur la réduction du biais en plus de la variance. Le Bagging, lui, construit les modèles en parallèle et vise principalement à réduire la variance. Le Stacking est une autre méthode d’ensemble où les prédictions de plusieurs modèles de base sont utilisées comme entrées pour un méta-modèle qui apprend à faire la prédiction finale. Les Forêts Aléatoires (Random Forests) sont une extension directe et très populaire du Bagging, spécifiquement pour les arbres de décision, où une randomisation supplémentaire est introduite lors de la construction de chaque arbre (par exemple, en ne considérant qu’un sous-ensemble aléatoire de caractéristiques à chaque nœud). Le terme « Bootstrap », qui désigne la technique d’échantillonnage avec remise, est au cœur du Bagging. « Bootstrap Aggregating » est d’ailleurs le nom complet dont « Bagging » est l’acronyme. À l’opposé du Bagging et des méthodes d’ensemble, on trouve l’utilisation d’un modèle unique (Single Model).
Le Bagging a été introduit par Leo Breiman dans un article technique publié en 1994, puis plus formellement dans son article « Bagging Predictors » en 1996. Breiman, un statisticien éminent, cherchait des moyens d’améliorer la précision et surtout la stabilité des prédicteurs statistiques et des algorithmes d’apprentissage machine. Il a observé que les procédures de prédiction instables pouvaient être améliorées en agrégeant les résultats de plusieurs versions de ces procédures, chacune étant ajustée sur une réplique bootstrap des données d’apprentissage. Cette idée simple mais puissante a eu un impact considérable sur le domaine de l’apprentissage automatique, stimulant la recherche sur les méthodes d’ensemble et conduisant directement au développement de techniques encore plus sophistiquées, notamment les Forêts Aléatoires, également largement attribuées à Breiman.
Le Bagging présente de nombreux avantages. Son principal atout est la réduction significative de la variance du modèle, ce qui se traduit par une meilleure stabilité et une précision accrue, en particulier pour les modèles de base complexes et instables sujets au surajustement. Il est relativement facile à mettre en œuvre et, crucialement, il est intrinsèquement parallélisable, car chaque modèle de base peut être entraîné indépendamment sur son échantillon bootstrap, ce qui permet d’exploiter les architectures de calcul multi-cœurs ou distribuées pour réduire le temps d’entraînement. L’estimation de l’erreur Out-of-Bag (OOB) est un autre avantage notable, car elle offre un moyen pratique et fiable d’évaluer les performances du modèle sans avoir besoin d’un ensemble de test distinct, économisant ainsi des données précieuses.
Cependant, le Bagging a aussi des inconvénients et des limitations. L’un des principaux est la perte d’interprétabilité : un ensemble de nombreux modèles (par exemple, des centaines d’arbres de décision) est beaucoup plus difficile à comprendre et à interpréter qu’un modèle unique simple. Le coût computationnel peut également être un problème, car entraîner M modèles de base prend environ M fois plus de temps que d’entraîner un seul modèle, ce qui peut être prohibitif pour des ensembles de données très volumineux ou des modèles de base très complexes. De plus, le Bagging est principalement efficace pour réduire la variance ; il ne réduit pas le biais du modèle. Si les modèles de base sont fortement biaisés (c’est-à-dire qu’ils font systématiquement des erreurs dans une certaine direction), le modèle Bagging hérite de ce biais. La performance du Bagging peut également stagner ou même se dégrader légèrement si les modèles de base sont déjà très stables (faible variance). Enfin, l’efficacité du Bagging dépend de la diversité des modèles de base ; si les modèles entraînés sur les différents échantillons bootstrap sont trop similaires (fortement corrélés), les gains de performance seront limités. C’est une des raisons pour lesquelles les Forêts Aléatoires introduisent une randomisation supplémentaire au niveau des caractéristiques pour augmenter la diversité des arbres.