Qu’est-ce que le gradient boosting ?

Auteurs

Bryan Clark

Senior Technology Advocate

Fangfang Lee

Developer Advocate

IBM

Qu’est-ce que le gradient boosting ?

Le gradient boosting est un algorithme d’apprentissage d’ensemble qui produit des prédictions précises en combinant plusieurs arbres de décision en un seul modèle. Cette approche algorithmique de la modélisation prédictive, introduite par Jerome Friedman, utilise les modèles de base pour renforcer leurs points forts, corriger les erreurs et améliorer les capacités prédictives. En captant les schémas complexes dans les données, le gradient boosting excelle dans diverses tâches de modélisation prédictive.

Les dernières tendances en matière d’IA, vues par des experts

Obtenez des informations sur les actualités les plus importantes et les plus intrigantes en matière d’intelligence artificielle. Abonnez-vous à notre newsletter hebdomadaire Think. Lire la Déclaration de confidentialité d’IBM.

Merci ! Vous êtes abonné(e).

Vous recevrez votre abonnement en anglais. Vous trouverez un lien de désabonnement dans chaque newsletter. Vous pouvez gérer vos abonnements ou vous désabonner ici. Consultez la Déclaration de confidentialité d’IBM pour plus d’informations.

Apprentissage d’ensemble et boosting

L’apprentissage d’ensemble est une approche du machine learning qui combine plusieurs modèles ou méthodes pour améliorer la performance prédictive. Il a souvent recours à des techniques telles que le bagging et le boosting. Le bagging consiste à entraîner de nombreux modèles sur différents sous-ensembles de données avec un certain degré d’aléatoire, ce qui permet de réduire la variance en calculant la moyenne des erreurs. Les forêts aléatoires constituent un bon exemple de cette approche.

Le boosting, quant à lui, est une technique d’ensemble qui entraîne les modèles de manière itérative à corriger les erreurs précédentes. Il donne plus de poids aux instances mal classées dans les modèles ultérieurs, ce qui leur permet de se concentrer sur les points de données complexes et, en fin de compte, d’améliorer la performance globale. AdaBoost, largement considéré comme le premier algorithme de boosting applicable, est une illustration classique de cette méthode. Le bagging et le boosting optimisent tous deux le compromis biais-variance des modèles, ce qui favorise une meilleure performance. 2

Ces techniques sont largement utilisées dans le machine learning pour améliorer la précision des modèles, en particulier lorsqu’il s’agit de jeux de données complexes ou bruités. En combinant plusieurs perspectives, l’apprentissage d’ensemble permet de s’affranchir des limites des modèles individuels pour renforcer l’optimisation. 3

Diagramme illustrant le boosting dans le contexte de l’apprentissage d'ensemble.

Comment fonctionne le gradient boosting

Le gradient boosting est une technique de machine learning qui combine plusieurs modèles de prédiction faibles pour former un seul ensemble. Ces modèles faibles sont généralement des arbres de décision, qui sont entraînés de manière séquentielle pour minimiser les erreurs et améliorer la précision. En combinant plusieurs arbres de régression ou de classification, le gradient boosting capte efficacement les relations complexes entre les caractéristiques.

L’un des principaux avantages du boosting de gradient est sa capacité à minimiser de manière itérative la fonction de perte, ce qui se traduit par une meilleure précision prédictive. Cependant, il faut faire attention au surajustement, qui se produit lorsqu’un modèle devient trop spécialisé pour les données d’entraînement et ne parvient pas à bien généraliser à de nouvelles instances. Pour atténuer ce risque, les professionnels doivent régler avec soin les hyperparamètres, surveiller les performances du modèle pendant l’entraînement et employer des techniques telles que la régularisation, l’élagage ou l’arrêt anticipé. En comprenant ces défis et en prenant des mesures pour les relever, les spécialistes peuvent exploiter avec succès le potentiel du boosting de gradient, y compris l’utilisation d’arbres de régression, afin de développer des modèles de prédiction précis et robustes pour diverses applications. 4,5

L’erreur quadratique moyenne (MSE) est une fonction de perte utilisée pour évaluer la correspondance entre les prédictions d’un modèle de machine learning et les données réelles. La MSE calcule la moyenne des différences au carré entre les valeurs prédites et les valeurs observées. La formule de la MSE est la suivante :  MSE=Σ(yi-pi)2/n , où  yi  représente la valeur réelle,  pi  est la valeur prédite, et  n est le nombre d’observations.

Pour aller plus loin, la MSE quantifie la différence entre les valeurs prédites et les valeurs réelles représentées dans le jeu de données pour les problèmes de régression. L’étape du carré permet de s’assurer que les erreurs positives et négatives contribuent à la valeur finale sans s’annuler mutuellement. Cette méthode donne plus de poids aux erreurs plus importantes, car les erreurs sont élevées au carré.

Pour interpréter la MSE, une valeur plus faible indique généralement une meilleure concordance entre les prédictions et les observations. Cependant, il est difficile d’obtenir une MSE plus faible dans des scénarios réels en raison du caractère aléatoire inhérent non seulement au jeu de données, mais aussi à la population. En revanche, la comparaison des valeurs MSE au fil du temps ou entre différents modèles peut aider à déterminer les améliorations en matière de précision prédictive. Il est également important de noter que le fait de viser spécifiquement une MSE de zéro est presque toujours le signe d’un surajustement. 6

Parmi les implémentations populaires des méthodes de boosting en Python, on peut citer Extreme Gradient Boosting (XGBoost) et Light Gradient-Boosting Machine (LightGBM). Conçu pour la vitesse et la performance, XGBoost est utilisé pour résoudre les problèmes de régression et de classification. LightGBM utilise des algorithmes d’apprentissage arborescents et convient au traitement des données à grande échelle. Les deux méthodes améliorent la précision, en particulier lorsqu’il s’agit de jeux de données complexes ou bruités. LightGBM utilise une technique appelée Gradient-based One-Side Sampling (GOSS) pour filtrer les instances de données et trouver les points de séparation, ce qui réduit considérablement la charge de calcul. Intégrer plusieurs techniques d’apprentissage d’ensemble permet d’éliminer les contraintes liées aux modèles individuels et d’obtenir de meilleurs résultats dans les scénarios de science des données. 7,8

Voici comment le gradient boosting fonctionne étape par étape.

Initialisation : commencez par utiliser un ensemble d’entraînement pour établir une fondation avec un modèle apprenant de base, souvent un arbre de décision, dont les prédictions initiales sont générées aléatoirement. En règle générale, l’arbre de décision ne contient qu’une poignée de nœuds foliaires ou de nœuds terminaux. Souvent choisis en raison de leur interprétabilité, ces apprenants faibles ou de base sont un point de départ optimal. Cette configuration initiale ouvre la voie aux itérations ultérieures.

Calcul des valeurs résiduelles : pour chaque exemple d’entraînement, calculez l’erreur résiduelle en soustrayant la valeur prédite de la valeur réelle. Cette étape permet d’identifier les aspects des prédictions du modèle qui doivent être améliorés.

Affinage avec régularisation : après le calcul résiduel et avant l’entraînement d’un nouveau modèle, le processus de régularisation a lieu. Cette étape consiste à réduire l’influence de chaque nouvel apprenant faible intégré dans l’ensemble. En calibrant soigneusement cette échelle, on peut contrôler la rapidité de progression de l’algorithme de boosting, ce qui permet de prévenir le surapprentissage et d’optimiser la performance globale.

Entraînement du modèle suivant : utilisez les erreurs résiduelles calculées à l’étape précédente comme cibles, et entraînez un nouveau modèle ou un apprenant faible à les prédire avec précision. Cette étape consiste à corriger les erreurs commises par les modèles précédents afin d’affiner la prédiction globale.

Mises à jour de l’ensemble : lors de cette étape, la performance de l’ensemble mis à jour (y compris le modèle nouvellement entraîné) est généralement évaluée à l’aide d’un ensemble de test distinct. Si la performance de ce jeu de données est satisfaisante, l’ensemble peut être mis à jour en y incorporant le nouvel apprenant faible ; dans le cas contraire, il faudra probablement ajuster les hyperparamètres.

Répétition : répétez les étapes présentées précédemment si nécessaire. Chaque itération s’appuie sur le modèle de base et l’affine en entraînant de nouveaux arbres, pour améliorer davantage la précision du modèle. Si la mise à jour de l’ensemble et le modèle final satisfont au critère de précision du modèle de référence, passez à l’étape suivante. 

Critères d’arrêt : arrêtez le processus de boosting lorsque le critère prédéterminé est atteint (par exemple, le nombre maximal d’itérations, la précision de la cible ou des rendements décroissants). Cette étape permet de s’assurer que la prédiction finale du modèle atteint l’équilibre attendu entre complexité et performance. 

Processus d’apprentissage d’ensemble séquentiel, utilisé par les algorithmes de boosting pour entraîner plusieurs apprenants faibles en séquence.

Méthodes d’ensemble et stacking

La combinaison du gradient boosting avec d’autres algorithmes de machine learning par le biais des méthodes d’ensemble ou d’empilement permet d’améliorer davantage la précision des prédictions. Par exemple, associer le gradient boosting aux machines à vecteurs de support (SVM), aux forêts aléatoires ou aux k plus proches voisins (KNN) permet de tirer parti des points forts de chaque modèle et de créer un ensemble plus robuste. L’empilement implique l’entraînement de plusieurs apprenants de base et l’utilisation de leurs sorties comme entrées pour un méta-apprenant, qui combine les prédictions pour générer les sorties finales. 9

Diagramme illustrant l’empilement dans le contexte de l’apprentissage ensembliste.

Arrêt anticipé et validation croisée

Surveiller la performance des modèles pendant l’entraînement et mettre en œuvre des techniques d’arrêt anticipé permettent d’éviter le surapprentissage en arrêtant le processus de boosting dès que la performance sur un ensemble de validation cesse de s’améliorer ou commence à se dégrader. En outre, une stratégie de validation croisée comme la validation croisée k-fold permet une estimation plus fiable de la performance du modèle et du réglage des hyperparamètres, ce qui améliore davantage les capacités prédictives du gradient boosting.

AI Academy

Exploiter l’IA pour le service client

Découvrez comment l’IA générative peut ravir les clients avec une expérience plus transparente et augmenter la productivité de l’organisation dans ces trois domaines clés : le libre-service, les agents humains et les opérations du centre de contact.

Adresser les jeux de données déséquilibrés

Le boosting de gradient est sensible au déséquilibre des classes, ce qui peut entraîner des prédictions biaisées en faveur de la classe majoritaire. Pour remédier à ce problème, les experts peuvent recourir à des techniques telles que le suréchantillonnage de la classe minoritaire, le sous-échantillonnage de la classe majoritaire ou l’utilisation de fonctions de perte pondérées qui appliquent des pénalités plus fortes en cas de mauvaise classification des instances minoritaires.

En mettant en œuvre ces stratégies et en réglant soigneusement les hyperparamètres, les praticiens peuvent considérablement améliorer la précision prédictive et la robustesse du gradient boosting dans diverses applications, de l’analyse des données à haute dimension aux tâches de surveillance environnementale complexes.

Réglage des hyperparamètres du boosting de gradient dans scikit-learn (sklearn)

Les modèles GradientBoostingClassifier et GradientBoostingRegressor de scikit-learn offrent une approche polyvalente pour mettre en œuvre l’algorithme de gradient boosting, convenant aux tâches tant de classification que de régression. En permettant aux utilisateurs d’affiner plusieurs paramètres, ces implémentations permettent de personnaliser le processus de boosting en fonction des exigences et des caractéristiques des données.

Profondeur de l’arbre (max_depth) : ce paramètre contrôle la profondeur maximale des arbres de décision individuels et doit être ajusté pour optimiser les performances. Des arbres plus profonds peuvent modéliser des relations complexes, mais présentent un risque accru de surajustement. 

Taux d’apprentissage (learning_rate) : il détermine la contribution de chaque arbre à l’ensemble global. Un taux d’apprentissage plus faible ralentit la convergence et réduit le risque de surajustement, tandis qu’une valeur plus élevée accélère l’apprentissage, au prix d’un risque accru de surajustement.

Nombre d’arbres (n_estimators) : ce paramètre spécifie le nombre total d’arbres dans l’ensemble. L’augmenter peut améliorer les performances, mais accroît également le risque de surajustement.

De plus, les implémentations du boosting de gradient dans scikit-learn proposent des estimations hors sac (out-of-bag, OOB), une technique permettant d’évaluer les performances du modèle sans recourir à un jeu de validation distinct. Les méthodes de prédiction par étapes dans scikit-learn permettent également de générer des prédictions incrémentales à mesure que de nouvelles données deviennent disponibles, rendant le traitement en temps réel possible et efficace. En résumé, les implémentations du boosting de gradient dans scikit-learn offrent un ensemble riche de fonctionnalités permettant d’affiner les modèles en fonction des besoins spécifiques et des caractéristiques des jeux de données, favorisant ainsi des performances prédictives supérieures. 10

Cas d’utilisation du gradient boosting

Gestion de données médicales à haute dimensionnalité : le boosting de gradient peut gérer efficacement des jeux de données comportant de nombreuses variables par rapport au nombre d’observations. Par exemple, dans le cadre du diagnostic médical, il peut être utilisé pour diagnostiquer des maladies à partir de données patient contenant plus d’une centaine de variables. En s’appuyant sur des arbres de décision comme apprenants faibles, l’algorithme peut traiter des données à haute dimensionnalité, là où les modèles de régression linéaire traditionnels rencontreraient des difficultés. Il peut également extraire des informations pertinentes à partir de données clairsemées, ce qui le rend adapté à des applications telles que la bioinformatique ou la classification de texte. 11,12

Réduction du taux d’attrition dans le service client : lorsqu’un modèle existe déjà mais que ses performances sont sous-optimales, le boosting de gradient peut être utilisé pour affiner les prédictions de manière itérative en corrigeant les erreurs précédentes. Ainsi, dans le secteur des télécommunications, un modèle de régression logistique peut servir à prédire le taux d’attrition des clients. L’entreprise peut alors appliquer des algorithmes de boosting de gradient pour identifier les principaux facteurs influençant le départ des clients, tels qu’un volume d’appels élevé ou une mauvaise qualité du réseau. En intégrant ces facteurs au modèle, il est possible d’améliorer la précision des prédictions et de réduire le taux d’attrition. 13

Prédiction de la survie des hêtres : dans un écosystème forestier, la maladie des feuilles du hêtre (BLD) représente une menace majeure pour la santé des hêtres. Des chercheurs peuvent développer un modèle prédictif afin d’identifier les arbres à risque et d’estimer leur probabilité de survie. Un modèle de machine learning peut être pensé pour analyser des facteurs environnementaux tels que les données climatiques, la qualité du sol et les caractéristiques des arbres pour calculer la probabilité de survie des hêtres (BTS) sur une période de cinq ans. En utilisant des techniques de boosting de gradient, il est possible de capturer des schémas complexes qui échapperaient à des méthodes plus simples. Le modèle peut ainsi identifier les arbres à risque de BLD avec une grande précision et prévoir leur BTS de manière fiable, permettant aux chercheurs de hiérarchiser les interventions et de protéger efficacement les hêtres vulnérables. Ce cas d’utilisation illustre comment le boosting de gradient peut renforcer la puissance prédictive des modèles de machine learning dans des tâches complexes de surveillance environnementale. 14

Solutions connexes
IBM watsonx.ai

Entraînez, validez, réglez et déployez une IA générative, des modèles de fondation et des capacités de machine learning avec IBM watsonx.ai, un studio d’entreprise nouvelle génération pour les générateurs d’IA. Créez des applications d’IA en peu de temps et avec moins de données.

Découvrir watsonx.ai
Solutions d’intelligence artificielle

Mettez l’IA au service de votre entreprise en vous appuyant sur l’expertise de pointe d’IBM dans le domaine de l’IA et sur son portefeuille de solutions.

Découvrir les solutions d’IA
Conseils et services en matière d’IA

Réinventez les workflows et les opérations critiques en ajoutant l’IA pour optimiser les expériences, la prise de décision et la valeur métier en temps réel.

Découvrir les services d’IA
Passez à l’étape suivante

Bénéficiez d’un accès centralisé aux fonctionnalités couvrant le cycle de développement de l’IA. Produisez des solutions IA puissantes offrant des interfaces conviviales, des workflows et un accès à des API et SDK conformes aux normes du secteur.

Découvrir watsonx.ai Réserver une démo en direct
Notes de bas de page

Friedman, Jerome H. « Greedy Function Approximation : A Gradient Boosting Machine ». The Annals of Statistics 29, n° 5 (2001) : 1189–1232. http://www.jstor.org/stable/2699986

Schapire, R.E. (2013). Explaining AdaBoost. In : Schölkopf, B., Luo, Z., Vovk, V. (eds) Empirical Inference. Springer, Berlin, Heidelberg. https://link.springer.com/chapter/10.1007/978-3-642-41136-6_5

Fan, Wenjie, et al. « A Survey of Ensemble Learning : Recent Trends and Future Directions », arXiv preprint arXiv:2501.04871 (2025).

Matsubara, Takuo. « Wasserstein Gradient Boosting : A Framework for Distribution- Valued Supervised Learning ». arXiv.org, 29 août 2024. https://search.arxiv.org/paper.jsp?r=2405.09536&qid=1743170618344ler_nCn N_-2014411830&qs=gradient%2Bboosting. 

Emami, Seyedsaman, and Gonzalo Martínez-Muñoz. 2023. « Sequential Training of Neural Networks with Gradient Boosting ». IEEE Access 11 (janvier) : 42738–50. https://ieeexplore.ieee.org/document/10110967

Chen, Tianqi, et al. « Mean Squared Error ». Encyclopedia Britannica, 2023. https://www.britannica.com/science/mean-squared-error.

XGBoost Developers. « XGBoost : A Scalable Tree Boosting System ». GitHub, 2021. https://github.com/dmlc/xgboost/blob/master/README.md .

Équipe de documentation LightGBM. « LightGBM ». 2021. https://lightgbm.readthedocs.io/en/stable/ .

Konstantinov, Andrei V. et Lev V. Utkin. « A Generalized Stacking for Implementing Ensembles of Gradient Boosting Machines ». In Studies in Systems, Decision and Control, 3–16, 2021. https://link.springer.com/chapter/10.1007/978-3-030-67892-0_1.

10 Documentation Scikit-Learn « Scikit-Learn » 2007 https://scikit-learn.org/0.21/documentation.html

11. Lecun, Yann, et al. « Gradient-Based Learning Applied to Document Recognition ». Proceedings of the IEEE 86, n° 11 (2007) : 2278-2324. doi : 10.1109/PROC.2007.898639 

12 Zhang, Zhongheng, Yiming Zhao, Aran Canes, Dan Steinberg et Olga Lyashevska. 2019. « Predictive Analytics with Gradient Boosting in Clinical Medicine ». Annals of Translational Medicine 7 (7) : 152–52. https://atm.amegroups.org/article/view/24543/23475.

13 ‌Al Shourbaji, Ibrahim, Na Helian, Yi Sun, Abdelazim G. Hussien, Laith Abualigah et Bushra Elnaim. 2023. « An Efficient Churn Prediction Model Using Gradient Boosting Machine and Metaheuristic Optimization ». Scientific Reports 13 (1) : 14441. https://www.nature.com/articles/s41598-023-41093-6.

14 Manley, William, Tam Tran, Melissa Prusinski et Dustin Brisson. « Modeling Tick Populations : An Ecological Test Case for Gradient Boosted Trees ». bioRxiv : the preprint server for biology, novembre 29, 2023. https://pmc.ncbi.nlm.nih.gov/articles/PMC10054924/#:~:text=The%20rapidly%20expanding%20environmental%20data,development%20of%20public%20health%20strategies.