Par Équipe Blent
Data Scientist
Publié le 25 févr. 2022
Catégorie Machine Learning
Les modèles basés sur le renforcement de gradient et leurs variantes offertes par plusieurs communautés ont gagné beaucoup de traction ces dernières années. LightGBM (Light Gradient Boosting Machine), développé par Microsoft et publié en 2016, représente un exemple très populaire. Il est rapide, distribué et de haute performance. Basé sur des algorithmes d’arbre de décision, il est utilisé pour le classement, la classification et de nombreuses autres tâches de Machine Learning. Il représente aussi une excellente alternative à XGBoost (eXtreme Gradient Boosting).
Dans cet article, nous examinerons le concept de renforcement de gradient, nous allons détailler le fonctionnement de l'algorithme LightGBM, en quoi son utilisation et ses applications sont variées ainsi que les différences fondamentales entre XGBoost et LightGBM.
Avant de détailler les algorithmes, comprenons rapidement le concept fondamental de renforcement de gradient (Gradient Boosting) qui fait partie à la fois de XGBoost et de LightGBM. Cette notion fait référence à une méthodologie de Machine Learning dans laquelle l’idée est de former plusieurs modèles utilisant le même algorithme d’apprentissage. Une combinaison de modèles individuels créant un modèle plus fort et plus puissant. Il s'agit de centaines ou de milliers d’apprenants très dépendants les uns des autres, avec un objectif commun fusionnés pour résoudre un problème. Ces modèles sont généralement des arbres de décision.
À lire aussi : découvrez notre formation MLOps
Le renforcement de gradient est l’une des techniques les plus puissantes pour construire des modèles prédictifs. Il existe plusieurs modèles qui se basent sur cette technique dont LightGBM.
Light Gradient Boosted Machine, ou LightGBM pour faire court, est un modèle d'apprentissage d'ensemble séquentiel, créé par des chercheurs de Microsoft, se basant sur le renforcement de gradient et des arbres de décision (GBDT ou Gradient Boosting decision Trees).
Ces derniers sont combinés de manière à ce que chaque nouvel apprenant ajuste les résidus de l'arbre précédent afin que le modèle s'améliore. Le dernier arbre ajouté regroupe les résultats de chaque étape et un apprenant puissant est atteint.
Les arbres de décision sont construits en fractionnant les observations (c'est-à-dire les instances de données) en fonction des valeurs des variables. L'algorithme CART recherche la meilleure répartition qui se traduit par le gain d'information le plus élevé qui se calcule en utilisant des outils statistiques comme l’entropie et l’indice de Gini. Pour trouver la meilleure structure de l'arbre, celle qui apporte le plus d'information. On essaye toutes les combinaisons de points de partage possibles, on les évalue et puis on les trie, la structure avec le gain en information le plus élevé est choisie. Ce n'est certainement pas une manière optimale. Cette méthode est de plus en plus lente que la taille du jeu de données augmente est elle est utilisée dans la plupart des GBDT.
Avec LightGBM, on vise à résoudre ce problème de temps et de puissance de calcul. Donc on introduit une nouvelle méthode de recherche de la bonne structure d'arbre pour chaque apprenant ajouté. Cette technique se base deux notions clés : GOSS (Gradient-based One-Side Sampling ou échantillonnage d'un côté en dégradé) et EFB (Exclusive Feature Bundling ou Offre groupée de fonctionnalités exclusives).
GOSS est une nouvelle méthode d’échantillonnage qui échantillonne les observations en se basant sur les gradients. Les gradients donnent un aperçu précieux du gain d'information.
L'approche consiste à écarter les cas ayant de petits gradients en se concentrant uniquement sur les cas ayant de grands gradients, cela modifierait la distribution des données. En un mot, GOSS conserve les instances avec de grands gradients et effectue un échantillonnage aléatoire sur les instances avec des gradients plus petits.
Cela fonctionne comme suit :
latex
\frac {1-A} { B}
lorsque le gain d'information est calculé (A et B étant des pourcentages).EBF fusionne des variables pour réduire la complexité de l'entrainement. En effet c'est une méthode de réduction de dimension.
Les ensembles de données avec un nombre élevé de caractéristiques sont susceptibles d'avoir des caractéristiques rares (c'est-à-dire beaucoup de valeurs nulles). Ces caractéristiques clairsemées sont généralement mutuellement exclusives, ce qui signifie qu'elles n'ont pas de valeurs non nulles simultanément. Dans ce cas on peut utiliser la EFB pour fusionner deux variables par exemple en une seule.
Cette technique se fait généralement en deux étapes.
1. Déterminer les caractéristiques qui pourraient être regroupées
Cette étape consiste a construire un graphique avec les mesures du conflit entre les variables du jeu de données (La mesure de conflit est la fraction des valeurs non nulles qui se chevauchent et le nombre total des valeurs ).
On va ensuite les trier et si la mesure de conflit est inferieure au seuil, on va créer une nouvelle variable .
2. Fusionnement des variables
À lire aussi : découvrez notre formation MLOps
Après avoir choisi les variables à fusionner, on en construit une nouvelle. Pour comprendre cette étape, prenons cet exemple.
Dans l’exemple ci-dessus, on peut voir que feature1
et feature2
sont mutuellement exclusives. Afin d’obtenir des lignes non chevauchantes, on va calculer conserver les valeurs non nulles de feature1
( dans ce cas 1,2,3,4), et puis pour feature2
, on va sommer les valeurs non nulles avec la plus grande valeur de feature1
(dans ce cas 4) . Cela permet de s’assurer que les points de données non nuls de chaque variable ne sont jamais égaux , et donc confondus. Les instances 5,6 contiennent des instances de feature2
non nulles.
Ensemble, ces deux notions peuvent accélérer le temps d’entraînement de l’algorithme jusqu'à 20 fois. Donc, on peut dire tout simplement que LightGBM peut être considéré comme GBDT avec l’ajout de GOSS et EFB.
Comme nous l'avons déjà dit, LightGBM est un modèle de Machine Learning se basant sur le renforcement de gradient et les arbres de décision. Tout comme XGBoost, les deux modèles sont très populaires et reconnus pour leur haute performance. Mais en quoi sont-ils différents alors ?
Il est devenu difficile pour les algorithmes traditionnels de donner des résultats rapides, car la taille des données augmente rapidement de jour en jour. LightGBM est appelé « Light » ou léger en raison de sa puissance de calcul et de ses résultats plus rapides. Il lui faut moins de mémoire pour fonctionner et est capable de traiter de grandes quantités de données.
max_depth
.LightGBM est donc une version améliorée de XGBoost. Néanmoins, ces deux modèles sont très performants. XGBoost est plus populaire chez les Data Scientist du fait de son ancienneté.
Vous souhaitez vous former au MLOps ?
Articles similaires
20 sept. 2022
Hugging Face est une startup française qui s'est fait connaître grâce à l'infrastructure NLP qu'ils ont développée. Aujourd'hui, elle est sur le point de révolutionner le domaine du Machine Learning et traitement automatique du langage naturel. Dans cet article, nous allons présenter Hugging Face et détailler les taches de base que cette librairie permet de réaliser. Nous allons également énumérer ses avantages et ses alternatifs.
Équipe Blent
Data Scientist
Lire l'article
12 juil. 2022
spaCy est une bibliothèque open-source pour le traitement avancé du langage naturel. Elle est conçue spécifiquement pour une utilisation en production et permet de construire des applications qui traitent et comprennent de grands volumes de texte.
Équipe Blent
Data Scientist
Lire l'article
4 juil. 2022
Un auto-encodeur est une structure de réseaux neuronaux profonds qui s'entraîne pour réduire la quantité de données nécessaires pour représenter une donnée d'entrée. Ils sont couramment utilisés en apprentissage automatique pour effectuer des tâches de compression de données, d'apprentissage de représentations et de détection de motifs.
Équipe Blent
Data Scientist
Lire l'article
60 rue François 1er
75008 Paris
Blent est une plateforme 100% en ligne pour se former aux métiers Tech & Data.
Organisme de formation n°11755985075.
Data Engineering
IA Générative
MLOps
Cloud & DevOps
À propos
Gestion des cookies
© 2024 Blent.ai | Tous droits réservés