Illustration par un collage de pictogrammes représentant des nuages, un diagramme circulaire, des pictogrammes de graphique
Qu’est-ce que le boosting ?

Le boosting est une méthode d’apprentissage d’ensemble qui combine un ensemble d’apprenants faibles en un apprenant fort afin de minimiser les erreurs d’entraînement. Les algorithmes de boosting peuvent améliorer la puissance prédictive de vos projets d’exploration de données.

Lors du boosting, un échantillon aléatoire de données est sélectionné, ajusté avec un modèle, puis entraîné de manière séquentielle. En d’autres termes, chaque modèle tente de compenser les faiblesses de son prédécesseur. À chaque itération, les règles faibles de chaque classificateur sont combinées pour former une seule règle de prédiction forte.

Apprentissage d’ensemble

L’apprentissage d’ensemble donne du crédit au concept de « sagesse des foules » selon lequel le processus décisionnel d’un groupe plus large de personnes serait plus efficace que celui d’un expert individuel. De même, l’apprentissage d’ensemble fait référence à un groupe (ou ensemble) d’apprenants de base, ou de modèles, qui travaillent collectivement à l’obtention d’une meilleure prédiction finale. Un modèle individuel, également appelé modèle de base ou apprenant faible, peut présenter des performances médiocres en raison d’une variance ou d’un biais élevé. Cependant, lorsque des apprenants faibles sont agrégés, ils peuvent former un apprenant fort, car leur combinaison réduit le biais ou la variance, ce qui améliore les performances du modèle. 

Les méthodes d’ensemble sont fréquemment illustrées à l’aide d’arbres de décision, car cet algorithme peut être sujet au surajustement (variance élevée et biais faible) lorsqu’il n’a pas été élagué, et peut aussi se prêter à un sous-ajustement (variance faible et biais élevé) lorsqu’il est très petit, comme une souche de décision, qui est un arbre de décision à un niveau. N’oubliez pas que lorsqu’un algorithme s’adapte trop ou pas assez à son ensemble de données d’entraînement, il ne peut pas correctement se généraliser à de nouveaux ensemble de données. C’est pourquoi on utilise des méthodes d’ensemble pour contrer ce comportement et permettre la généralisation du modèle à de nouveaux ensembles de données. Bien que les arbres de décision puissent présenter un biais élevé ou une variance importante, il convient de noter qu’il ne s’agit pas de la seule technique de modélisation qui utilise l’apprentissage d’ensemble pour trouver le « point idéal » dans le compromis biais-variance.  

Bagging versus boosting

Le bagging et le boosting sont deux méthodes principales d’apprentissage d’ensemble. Comme le souligne cette étude (lien externe à ibm.com), la principale différence entre ces méthodes d’apprentissage est la manière dont elles sont entraînées. Dans le bagging, les apprenants faibles sont entraînés en parallèle, tandis que dans le boosting, l’apprentissage se fait de manière séquentielle. Autrement dit, une série de modèles est construite, et à chaque nouvelle itération, les poids des données mal classifiées dans le modèle précédent sont augmentés. Cette redistribution des poids permet à l’algorithme de se concentrer sur les points de données qui nécessitent une attention particulière afin d’améliorer ses performances. AdaBoost, acronyme de « Adaptative Boosting Algorithm » (algorithme de boosting adaptatif), est l’un des algorithmes de boosting les plus utilisés, car il a été l’un des premiers à être développé. Parmi les autres types d’algorithmes de boosting, citons XGBoost, GradientBoost et BrownBoost. 

Le bagging et le boosting diffèrent également dans la manière dont ils sont utilisés. Par exemple, les méthodes de bagging sont généralement utilisées sur les apprenants faibles qui présentent une variance élevée et un biais faible, tandis que les méthodes de boosting sont employées lorsqu’une variance faible et un biais élevé sont observés. Si le bagging peut servir à éviter le surajustement, les méthodes de boosting sont davantage sensibles à ce problème (lien externe à ibm.com), bien que cela dépende vraiment de l’ensemble de données. Cependant, le réglage des paramètres peut permettre d’y remédier. 

Par conséquent, le bagging et le boosting ont également différentes applications dans le monde réel. Le bagging a été exploité pour les processus d’approbation des prêts et les analyses génomiques statistiques, tandis que le boosting a été davantage utilisé dans les applications de reconnaissance d’images et les moteurs de recherche.  

Bagging – apprentissage d’ensemble parallèle Bagging – apprentissage d’ensemble parallèle
Boosting – apprentissage d’ensemble séquentiel Boosting – apprentissage d’ensemble séquentiel
Types de boosting

Les méthodes de boosting sont axées sur la combinaison itérative d’apprenants faibles pour construire un apprenant fort capable de prédire des résultats plus précis. Pour rappel, un apprenant faible classe les données un peu mieux que les suppositions aléatoires. Cette approche peut fournir des résultats robustes pour les problèmes de prédiction, et même surpasser les réseaux neuronaux et les machines à vecteurs de support pour des tâches comme la récupération d’images (lien externe à ibm.com).  

Les algorithmes de boosting peuvent différer dans la manière dont ils créent et regroupent les apprenants faibles au cours du processus séquentiel. Les trois méthodes de boosting les plus courantes sont les suivantes : 

  • Boosting adaptatif ou AdaBoost : Yoav Freund et Robert Schapire sont à l’origine de la création de l’algorithme AdaBoost. Cette méthode fonctionne de manière itérative, identifiant les points de données mal classés et ajustant leurs poids pour minimiser les erreurs à l’entraînement. Le modèle poursuit l’optimisation de manière séquentielle jusqu’à obtenir le prédicteur le plus fort.  
  • Boosting de gradient : en s’appuyant sur les travaux de Leo Breiman, Jerome H. Friedman a développé le boosting de gradient, qui fonctionne en ajoutant séquentiellement des prédicteurs à un ensemble, chacun d’entre eux corrigeant les erreurs de son prédécesseur. Cependant, au lieu de modifier les poids des points de données comme AdaBoost, le boosting de gradient entraîne sur les erreurs résiduelles du prédicteur précédent. Le terme « boosting de gradient » est utilisé car il combine l’algorithme de descente de gradient et la méthode du boosting.  
  • Boosting de gradient extrême ou XGBoost : XGBoost est une implémentation du boosting de gradient conçue pour la vitesse de calcul et le dimensionnement. XGBoost exploite plusieurs cœurs sur le processeur, ce qui permet un apprentissage en parallèle pendant l’entraînement.  

Avantages et défis du boosting

La méthode du boosting présente un certain nombre d’avantages et de défis clés lorsqu’elle est utilisée pour résoudre des problèmes de classification ou de régression. 

Les principaux avantages du boosting sont les suivants :  

  • Facilité de mise en œuvre : le boosting peut être utilisé avec plusieurs options de réglage d’hyperparamètres pour améliorer l’ajustement. Aucun prétraitement des données n’est nécessaire et les algorithmes de boosting comportent des routines intégrées pour gérer les données manquantes. En Python, la bibliothèque scikit-learn des méthodes d’ensemble (également appelée sklearn.ensemble) facilite la mise en œuvre des méthodes de boosting les plus courantes, y compris AdaBoost, XGBoost, etc.  
  • Réduction des biais : les algorithmes de boosting combinent plusieurs apprenants faibles dans une méthode séquentielle, améliorant de manière itérative les observations. Cette approche contribue à réduire les biais importants, couramment observés dans les arbres de décision peu profonds et les modèles de regression logistique. 
  • Efficacité des calculs : comme les algorithmes de boosting ne sélectionnent que les caractéristiques qui augmentent leur pouvoir prédictif pendant l’entraînement, ils contribuent à réduire la dimensionnalité et à augmenter l’efficacité des calculs.  

Les principaux défis du boosting sont les suivants :  

  •  Surajustement : la question de savoir si le boosting peut ou non aider à réduire le surajustement ou à l’exacerber fait débat au sein de la recherche (lien externe à ibm.com). Nous incluons cet aspect dans les défis, car dans les cas où il y a surajustement, les prévisions ne peuvent pas être généralisées à de nouveaux ensembles de données.  
  •  Calcul intense : l’entraînement séquentiel dans le boosting est difficile à dimensionner. Étant donné que chaque estimateur est construit sur ses prédécesseurs, les modèles de boosting peuvent être gourmands en calcul, même si XGBoost peut résoudre les problèmes d’évolutivité rencontrés dans d’autres types de méthodes de boosting. Les algorithmes de boosting peuvent être plus lents à entraîner que le bagging, car un grand nombre de paramètres peuvent également influencer le comportement du modèle. 
Applications du boosting

Les algorithmes de boosting sont bien adaptés aux projets d’intelligence artificielle dans un large éventail d’applications, en particulier dans les secteurs suivants :  

  • Santé : le boosting est utilisé pour réduire les erreurs dans les prédictions de données médicales, telles que la prédiction des facteurs de risque cardiovasculaire et des taux de survie des patients atteints d’un cancer. Par exemple, une étude (lien externe à ibm.com) montre que les méthodes d’ensemble améliorent considérablement la précision de l’identification des patients susceptibles de bénéficier d’un traitement préventif d’une maladie cardiovasculaire, tout en évitant de traiter inutilement d’autres patients. De même, une autre étude (lien externe à ibm.com) révèle que l’application du boosting à plusieurs plateformes génomiques peut améliorer la prédiction du taux de survie au cancer. 

  • Informatique : les arbres de régression à boosting de gradient sont utilisés dans les moteurs de recherche pour le classement des pages, tandis que l’algorithme de boosting Viola-Jones est employé pour la récupération d’images. Comme l’a noté Cornell (lien externe à ibm.com), les classificateurs boostés permettent d’arrêter les calculs plus tôt lorsque la direction vers laquelle se dirige une prédiction est clairement identifiée. Cela signifie qu’un moteur de recherche peut arrêter l’évaluation des pages moins bien classées, tandis que les scanners d’images ne considéreront que les images qui contiennent réellement l’objet souhaité.   

  • Finance : le boosting est utilisé avec des modèles d’apprentissage profond pour automatiser les tâches critiques, notamment la détection des fraudes, l’analyse des prix, etc. Par exemple, les méthodes de boosting dans la détection des fraudes à la carte de crédit et l’analyse des prix des produits financiers (lien externe à ibm.com) améliorent la précision de l’analyse des ensembles de données volumineux afin de minimiser les pertes financières.  

Solutions connexes
IBM SPSS Modeler

Générez un retour sur investissement et accélérez la création de valeur grâce à un outil de science des données intuitif par glisser-déposer.

Découvrir IBM SPSS Modeler
Solutions IBM Cloud

Hybride. Ouverte. Résilient. Votre plateforme et partenaire pour la transformation numérique.

Découvrir les solutions cloud
Solutions IBM Cloud Pak

Logiciel de cloud hybride alimenté par l’IA.

Découvrir les solutions Cloud Pak
Passez à l’étape suivante

IBM SPSS Modeler est une solution visuelle de science des données et de machine learning (ML) qui expose des modèles et des modèles cachés dans les données grâce à une approche ascendante de génération d'hypothèses. Les organisations du monde entier l’utilisent pour la préparation et la découverte de données, l’analyse prédictive, la gestion et le déploiement de modèles, et le ML pour monétiser les actifs de données.

Découvrir SPSS Modeler Essai gratuit de 30 jours