En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Paramètres des cookies
En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Découvrez comment l'apprentissage d'ensemble améliore les performances des modèles d'IA grâce à des techniques telles que le bagging, le boosting et l'empilement, afin d'obtenir des prédictions plus précises et plus stables.
Les innovations en matière d'IA, telles que les moteurs de recommandation et les systèmes de détection des fraudes, s'appuient sur des algorithmes et des modèles d'apprentissage automatique pour faire des prédictions et prendre des décisions sur la base de données. Ces modèles peuvent identifier des modèles, prévoir des tendances et aider à automatiser des tâches complexes.
Cependant, un modèle unique peut avoir du mal à capturer tous les détails des données du monde réel. Il peut être performant dans certains cas, mais insuffisant dans d'autres, par exemple un modèle de détection de la fraude qui ne tient pas compte de nouveaux types de transactions.
Les ingénieurs en intelligence artificielle sont souvent confrontés à cette limitation lorsqu'ils construisent et déploient des modèles d'apprentissage automatique. Certains modèles se surajoutent en apprenant trop fidèlement les données d'apprentissage, tandis que d'autres se sous-ajustent en manquant des modèles importants. L'apprentissage d'ensemble est une technique d'IA qui permet de relever ces défis en combinant plusieurs modèles, connus sous le nom d'apprenants de base, en un seul système plus puissant.
On peut l'assimiler à une équipe d'experts travaillant ensemble à la résolution d'un problème. Dans cet article, nous allons explorer ce qu'est l'apprentissage par ensembles, comment il fonctionne et où il peut être utilisé. C'est parti !
Qu'est-ce que l'apprentissage ensembliste ?
L'apprentissage d'ensemble fait référence à un ensemble de techniques qui combinent plusieurs modèles pour résoudre le même problème et produire un résultat unique et amélioré. Il peut être appliqué à la fois à l'apprentissage supervisé (où les modèles apprennent à partir de données étiquetées) et à l'apprentissage non supervisé (où les modèles trouvent des modèles dans des données non étiquetées).
Au lieu de s'appuyer sur un seul modèle pour faire des prédictions, un ensemble utilise plusieurs modèles qui analysent chacun les données à leur manière. Lorsque leurs résultats sont combinés, ils sont souvent plus précis, plus stables et plus généralisables que ce qu'un seul modèle pourrait réaliser seul.
Vous pouvez le comparer à un panel d'analystes traitant du même problème. Chaque analyste ou modèle individuel interprète les données différemment.
L'un d'eux peut se concentrer sur les modèles, un autre sur les anomalies et un autre encore sur le contexte. En réunissant leurs perspectives, le groupe peut prendre une décision plus équilibrée et plus fiable que n'importe quel jugement individuel.
Cette approche permet également de relever deux des plus grands défis de l'apprentissage automatique : le biais et la variance. Un modèle avec un biais élevé est trop simple et néglige des modèles importants, tandis qu'un modèle avec une variance élevée est trop sensible et s'adapte trop étroitement aux données d'apprentissage. En combinant les modèles, l'apprentissage d'ensemble trouve un équilibre entre les deux, améliorant ainsi les performances du système sur de nouvelles données inédites.
Comprendre le fonctionnement de l'apprentissage ensembliste
Chaque modèle d'un ensemble est appelé "apprenant de base" ou "modèle de base". Il peut s'agir du même type d'algorithme ou d'un mélange d'algorithmes différents, en fonction de la technique d'ensemble utilisée.
Voici quelques exemples courants des différents modèles utilisés dans l'apprentissage par ensembles :
Arbres de décision: Ces modèles divisent les données en branches sur la base des valeurs des caractéristiques afin de prendre des décisions. Par exemple, dans les problèmes de classification visant à prédire si un client achètera un produit, ils prennent en compte des facteurs tels que l'âge, le revenu et l'historique de navigation.
Réseaux neuronaux: Inspirés de la manière dont le cerveau humain traite l'information, ils constituent l'architecture de base de la plupart des modèles modernes d'IA et d'apprentissage automatique.
Machines à vecteurs de support (SVM) : Ces algorithmes classent les données en trouvant une frontière de décision optimale, appelée hyperplan, qui maximise la marge entre les différentes classes. En d'autres termes, le SVM trace la meilleure ligne possible qui sépare les groupes tout en laissant le plus grand écart possible entre eux. Par exemple, il peut être utilisé pour déterminer si un courriel est un spam ou non en se basant sur des modèles tels que la fréquence et la structure des mots.
Modèles de régression logistique: Ils estiment les probabilités et sont souvent utilisés pour des tâches de classification binaire. Un exemple typique est la prédiction du caractère frauduleux ou légitime d'une transaction.
Un ensemble de modèles combinés est généralement appelé "apprenant fort" car il intègre les forces des apprenants de base (également appelés "modèles faibles") tout en minimisant leurs faiblesses. Pour ce faire, il combine les prédictions de chaque modèle de manière structurée, en utilisant le vote majoritaire pour les tâches de classification ou la moyenne pondérée pour les tâches de régression, afin de produire un résultat final plus précis.
Fig. 1. Un exemple d'apprentissage ensembliste(Source)
Quand utiliser l'apprentissage par ensembles ?
Avant de nous plonger dans les différentes techniques d'apprentissage ensembliste, prenons un peu de recul pour comprendre quand ce type d'approche doit être utilisé dans un projet d'apprentissage automatique ou d'IA.
L'apprentissage d'ensemble est le plus efficace lorsqu'un modèle unique peine à faire des prédictions précises ou cohérentes. Il peut également être utilisé dans des situations où les données sont complexes, bruyantes ou imprévisibles.
Voici quelques cas courants où les méthodes d'ensemble sont particulièrement efficaces :
Faible précision du modèle : Lorsque les prédictions d'un modèle ne sont pas suffisamment fiables, la combinaison de plusieurs modèles peut améliorer considérablement la précision et les performances. Par exemple, dans le domaine de l'évaluation du crédit ou du diagnostic médical, même de petites améliorations dans la précision des prédictions peuvent faire une grande différence.
Données bruitées ou incohérentes : Si un ensemble de données contient des valeurs aberrantes, des erreurs ou des fluctuations aléatoires, l'apprentissage d'ensemble permet d'atténuer ces irrégularités en établissant une moyenne ou en votant pour plusieurs modèles.
Besoin de robustesse : Les modèles d'ensemble sont moins sensibles aux petites modifications des données, ce qui les rend plus stables et plus fiables pour les environnements de production où les données réelles peuvent varier.
Tâches de prédiction complexes : Dans des tâches telles que la reconnaissance d'images, la détection de fraudes ou la prévision de séries temporelles, les ensembles saisissent un plus large éventail de modèles et de relations qu'un modèle unique ne pourrait le faire à lui seul.
Il est également plus simple à former, plus facile à interpréter et plus rapide à maintenir. Avant d'utiliser un ensemble, il est important d'évaluer l'avantage d'une plus grande précision par rapport au temps, à la puissance de calcul et à la complexité supplémentaires qu'il requiert.
Vue d'ensemble des techniques d'apprentissage ensembliste
Examinons ensuite les principales façons dont l'apprentissage par ensembles peut être appliqué dans les projets d'apprentissage automatique. Il existe plusieurs techniques de base utilisées pour combiner des modèles, chacune améliorant les performances à sa manière. Les méthodes d'ensemble les plus courantes sont le bagging, le boosting, le stacking et le blending.
Ensachage
Le bagging, abréviation de bootstrap aggregating, est une méthode d'apprentissage d'ensemble qui permet d'améliorer la stabilité et la précision des modèles en entraînant plusieurs versions du même modèle sur différentes parties des données.
Chaque sous-ensemble est créé à l'aide d'un processus appelé échantillonnage bootstrap, dans lequel les points de données sont sélectionnés au hasard avec remplacement. Cela signifie qu'une fois qu'un point de données a été choisi, il est remis dans le pool avant que le suivant ne soit sélectionné, de sorte que le même point peut apparaître plus d'une fois, tandis que d'autres peuvent être laissés de côté. Ce caractère aléatoire garantit que chaque modèle s'entraîne sur une version légèrement différente de l'ensemble de données.
Au cours de l'inférence, tous les modèles formés fonctionnent en parallèle pour faire des prédictions sur de nouvelles données inédites. Chaque modèle produit sa propre sortie sur la base de ce qu'il a appris, et ces prédictions individuelles sont ensuite combinées pour former le résultat final.
Pour les tâches de régression, telles que la prédiction des prix de l'immobilier ou des prévisions de vente, il s'agit généralement de calculer la moyenne des résultats de tous les modèles afin d'obtenir une estimation plus lisse. Pour les tâches de classification, telles que l'identification d'une transaction frauduleuse ou non, l'ensemble prend souvent un vote majoritaire pour décider de la classe finale.
L'analyse en sac en action : L'algorithme Random Forest
Les arbres de décision constituent un bon exemple de l'efficacité du bagging. En effet, les arbres de décision peuvent facilement être surajoutés lorsqu'ils sont formés sur un seul ensemble de données. En entraînant de nombreux arbres sur des échantillons légèrement différents et en combinant leurs résultats, le bagging réduit le surajustement et améliore la fiabilité.
Considérons l'algorithme Random Forest. Il s'agit d'un ensemble d'arbres de décision, où chaque arbre est formé sur un sous-ensemble aléatoire de l'ensemble de données d'apprentissage ainsi que sur un sous-ensemble aléatoire de caractéristiques.
Ce caractère aléatoire des caractéristiques permet de garantir que les arbres sont moins corrélés et que le modèle global est plus stable et plus précis. Un algorithme Random Forest peut être utilisé pour classer des images, détecter des fraudes, prédire le taux de désabonnement des clients, prévoir les ventes ou estimer les prix de l'immobilier.
Fig 2. Aperçu de l'algorithme Random Forest(Source)
Renforcer l'efficacité
Le boosting est une autre technique d'apprentissage ensembliste qui se concentre sur l'amélioration des apprenants faibles (modèles) en les formant de manière séquentielle, l'un après l'autre, plutôt qu'en parallèle. Le concept de base du boosting est que chaque nouveau modèle apprend des erreurs des modèles précédents, améliorant ainsi progressivement les performances globales du modèle.
Contrairement au bagging, qui réduit la variance en calculant la moyenne des modèles indépendants, le boosting réduit les biais en faisant en sorte que chaque nouveau modèle accorde plus d'attention aux cas difficiles que les modèles précédents ont eu du mal à traiter.
Étant donné que les modèles de boosting sont formés de manière séquentielle, la manière dont leurs prédictions sont combinées à la fin diffère légèrement des autres méthodes d'ensemble. Chaque modèle contribue à la prédiction finale proportionnellement à ses performances pendant la formation, les modèles les plus précis recevant un poids plus important.
Pour les tâches de régression, le résultat final est généralement une somme pondérée de toutes les prédictions du modèle. Pour les tâches de classification, l'algorithme combine les votes pondérés des modèles pour décider de la classe finale. Cette approche permet de créer un modèle global solide en donnant plus de poids aux modèles les plus précis tout en continuant à apprendre des autres.
Voici quelques types courants d'algorithmes de stimulation :
AdaBoost (Adaptive Boosting): Cette méthode commence par former un modèle simple, tel qu'un petit arbre de décision, puis augmente le poids des points de données qui ont été mal classés. Ces poids font que le modèle suivant se concentre davantage sur les exemples difficiles. Au fil des itérations, les modèles se construisent les uns sur les autres et leurs prédictions combinées forment un résultat plus fort et plus précis. Par exemple, AdaBoost peut améliorer la détection des spams ou la précision de la reconnaissance faciale.
Renforcement du gradient: Au lieu de repondérer les échantillons, le Gradient Boosting entraîne chaque nouveau modèle à corriger les erreurs résiduelles, c'est-à-dire les différences entre les valeurs réelles et les valeurs prédites, commises par les modèles précédents. Cette approche itérative la rend efficace pour les tâches de régression et de classification, telles que la prévision des ventes et l'évaluation du crédit.
XGBoost (Extreme Gradient Boosting): Cette version avancée du renforcement du gradient améliore à la fois la vitesse et la précision. Elle utilise la régularisation, qui pénalise légèrement les modèles trop complexes au cours de la formation afin qu'ils se concentrent sur des modèles significatifs au lieu de mémoriser des données. Bien que les modèles soient toujours formés de manière séquentielle, XGBoost accélère le processus en utilisant la parallélisation lors de la construction de l'arbre. Il peut évaluer de nombreux points de séparation possibles en même temps sur différents cœurs de CPU. L'apprentissage est ainsi beaucoup plus rapide, en particulier sur les grands ensembles de données, tout en maintenant des performances prédictives élevées.
Fig. 3. Exemple d'un classificateur basé sur un arbre de décision (DTB) formé avec une approche de renforcement pour la prédiction du risque de diabète.(Source)
Empilage
L'empilement, également appelé généralisation par empilement, va plus loin en utilisant les prédictions de plusieurs modèles comme données d'entrée d'un modèle final appelé méta-apprentissage. C'est un peu comme si un groupe d'experts partageait son opinion, et qu'un décideur final apprenait à pondérer ces opinions pour prendre la meilleure décision possible.
Par exemple, un modèle peut être très efficace pour repérer les fraudes, tandis qu'un autre est plus performant pour prédire l'attrition de la clientèle. Le méta-apprenant étudie les performances de chacun et utilise leurs forces ensemble pour faire une prédiction finale plus précise.
Mélange
Le blending fonctionne de la même manière que l'empilage, car il combine également les prédictions de plusieurs modèles pour prendre une décision finale, mais il adopte une approche plus simple et plus rapide. Au lieu d'utiliser la validation croisée (une méthode qui divise les données en plusieurs parties et les fait alterner entre l'entraînement et le test pour rendre le modèle plus fiable), comme le fait l'empilage, le mélange met de côté une petite partie des données, appelée "ensemble d'attente".
Les modèles de base sont entraînés sur les données restantes et font ensuite des prédictions sur l'ensemble d'attente, qu'ils n'ont jamais vu auparavant. On obtient ainsi deux informations essentielles : les réponses réelles, ou vraies étiquettes, et les prédictions faites par chaque modèle de base.
Ces prédictions sont ensuite transmises à un autre modèle appelé modèle de mélange ou méta-modèle. Ce dernier modèle étudie la précision des prédictions de chaque modèle de base et apprend à les combiner de la meilleure façon possible.
Étant donné que le mélange repose sur une seule division de la formation et du test au lieu de répéter le processus plusieurs fois, il fonctionne plus rapidement et est plus facile à mettre en place. En contrepartie, il dispose d'un peu moins d'informations pour apprendre, ce qui peut le rendre un peu moins précis.
Évaluation des algorithmes d'ensemble
Une partie importante de l'apprentissage par ensembles consiste à évaluer les performances d'un modèle sur des données qu'il n'a jamais vues auparavant. Quelle que soit l'avancée d'une technique, elle doit être testée pour s'assurer qu'elle peut se généraliser, c'est-à-dire qu'elle doit faire des prédictions précises sur de nouveaux exemples du monde réel plutôt que de simplement mémoriser les données d'apprentissage.
Voici quelques mesures de performance couramment utilisées pour évaluer les modèles d'IA :
Précision : Cette métrique mesure la proportion de prédictions correctes sur l'ensemble des prédictions faites par le modèle. Elle donne un aperçu rapide de la performance globale.
Précision: Elle indique combien d'échantillons prédits comme positifs sont effectivement positifs. Une précision élevée signifie que le modèle fait peu d'erreurs faussement positives.
Rappel : Cette mesure se concentre sur le nombre de cas positifs réels correctement identifiés par le modèle. Elle est particulièrement importante dans des domaines tels que les soins de santé, où l'omission d'un cas positif, tel qu'un diagnostic de maladie, peut avoir de graves conséquences.
Applications concrètes de l'apprentissage ensembliste
Jusqu'à présent, nous avons exploré le fonctionnement et les techniques de l'apprentissage par ensembles. Voyons maintenant où cette approche a un impact.
Voici quelques domaines clés où l'apprentissage ensembliste est couramment appliqué :
Analyse des données et les prévisions : Dans le domaine des affaires et de l'analyse, les modèles d'ensemble aident les organisations à faire de meilleures prévisions en combinant des informations provenant de plusieurs modèles. Cela permet d'établir des prévisions de vente plus précises, de planifier la demande de manière plus intelligente et de mieux comprendre le comportement des clients.
Classification binaire : Des tâches telles que la détection de spam, la prévention de la fraude et le diagnostic médical nécessitent souvent de faire la distinction entre deux résultats possibles. Les modèles d'ensemble permettent de réduire les faux positifs et les faux négatifs, ce qui est particulièrement important dans des domaines tels que la cybersécurité et les soins de santé.
Problèmes de régression : Lorsqu'il s'agit de prédire des valeurs continues telles que les prix de l'immobilier, le chiffre d'affaires ou le risque de crédit, les méthodes d'ensemble permettent de saisir les relations complexes au sein des données. Il en résulte des prédictions plus précises qui permettent de prendre de meilleures décisions financières et opérationnelles.
Aller au-delà des données structurées grâce à l'apprentissage ensembliste
Si l'apprentissage par ensembles est le plus souvent utilisé avec des données structurées ou tabulaires, telles que des feuilles de calcul contenant des informations numériques ou catégorielles, il peut également être appliqué à des données non structurées telles que du texte, des images, du son et de la vidéo.
Ces types de données sont plus complexes et plus difficiles à interpréter pour les modèles, mais les méthodes d'ensemble permettent d'améliorer la précision et la fiabilité. Par exemple, dans le domaine de la vision artificielle, les ensembles peuvent améliorer des tâches telles que la classification d'images et la détection d'objets.
En combinant les prédictions de plusieurs modèles de vision, tels que les réseaux neuronaux convolutionnels (CNN), le système peut reconnaître les objets avec plus de précision et gérer les variations d'éclairage, d'angle ou d'arrière-plan qui pourraient perturber un modèle unique.
Un aperçu de l'assemblage des modèles YOLOv5 d'Ultralytics
Un exemple intéressant d'utilisation de l'apprentissage d'ensemble dans le domaine de la vision par ordinateur est celui d'un ingénieur qui combine plusieurs modèles de détection d'objets afin d'améliorer la précision. Imaginez un ingénieur travaillant sur un système de surveillance de la sécurité pour un chantier de construction, où l'éclairage, les angles et la taille des objets changent constamment.
Un seul modèle peut manquer un travailleur dans l'ombre ou confondre une machine en mouvement. En utilisant un ensemble de modèles, chacun avec des forces différentes, le système devient plus fiable et moins susceptible de commettre ces erreurs.
En particulier, les modèles comme Ultralytics YOLOv5 vont de pair avec l'assemblage de modèles. Les ingénieurs peuvent combiner différentes variantes de YOLOv5, telles que YOLOv5x et YOLOv5l6, pour faire des prédictions ensemble. Chaque modèle analyse la même image et produit ses propres détections, dont la moyenne est ensuite calculée pour générer un résultat final plus fort et plus précis.
Fig. 4. Détection d'objets dans une image à l'aide de YOLOv5(Source)
Avantages et inconvénients de l'apprentissage ensembliste
Voici quelques avantages clés de l'apprentissage par ensembles :
Résistance aux données bruyantes : Les ensembles sont moins affectés par les valeurs aberrantes ou le bruit aléatoire de l'ensemble de données car ils reposent sur des modèles multiples.
Une meilleure généralisation: Les ensembles réduisent le surajustement, ce qui permet aux modèles d'être performants sur des données inédites au lieu de simplement mémoriser des exemples d'apprentissage.
Flexibilité des algorithmes : Vous pouvez combiner différents types de modèles, tels que les arbres de décision, les réseaux neuronaux et les modèles linéaires, afin de tirer parti de leurs atouts spécifiques.
Si l'apprentissage ensembliste présente de nombreux avantages, il n'en reste pas moins qu'il y a aussi des défis à relever. Voici quelques facteurs à prendre en compte :
Plus élevé coût de calcul: La formation et la maintenance de plusieurs modèles nécessitent plus de mémoire, de puissance de traitement et de temps qu'un modèle unique.
Interprétabilité réduite : Étant donné que le résultat final provient de la combinaison de plusieurs modèles, il peut être difficile de comprendre pourquoi une certaine décision a été prise. Toutefois, cela dépend des modèles utilisés, car lorsque vous utilisez des modèles interprétables, tels que les arbres de décision ou les machines à vecteurs de support, il est généralement plus facile de comprendre les résultats.
Considérations relatives à la conception d'un ensemble : La construction d'un ensemble implique de choisir la bonne combinaison de modèles et de s'assurer qu'ils fonctionnent bien ensemble. Cependant, elle peut aussi être plus simple dans certains cas, car il n'est pas nécessaire d'affiner les hyperparamètres de chaque modèle individuel.
Principaux points à retenir
L'apprentissage d'ensemble montre comment la combinaison de plusieurs modèles peut rendre les systèmes d'intelligence artificielle plus précis et plus fiables. Il permet de réduire les erreurs et d'améliorer les performances pour différents types de tâches. Alors que l'apprentissage automatique et l'IA continuent de se développer, des techniques comme celle-ci favorisent une adoption plus large et des solutions d'IA plus pratiques et plus performantes.