Arbres de décision dans l'apprentissage automatique : fonctions, classification, avantages et inconvénients

Publié: 2020-05-14

Chaque personne doit prendre des décisions dans sa vie. Ces décisions dépendent de la situation. Prendre la bonne décision aide à faire face à une situation de la meilleure manière, en résolvant le problème de la manière la plus simple. Dans l'enfance, la plupart de vos décisions tournaient autour de ce que vous mangez et des choses liées à votre école.

Au fur et à mesure que vous grandissez, vos décisions commencent à avoir une implication plus sérieuse non seulement sur votre vie, mais aussi sur celles des autres. À un moment donné de votre vie, vous prendrez des décisions concernant votre carrière ou votre entreprise. Cette analogie est de vous présenter le concept d'un arbre de décision dans l'apprentissage automatique.

Table des matières

Qu'est-ce qu'un arbre de décision ?

Pour commencer, laissez-nous vous dire qu'un arbre de décision est un modèle ou un outil prédictif qui prend en charge les décisions. Il est connu de fournir des inférences précises en utilisant des conceptions, des modèles de conception ou des représentations qui suivent une structure arborescente. L'objectif principal de ce modèle ou modèle d'apprentissage automatique est de considérer certains attributs d'une cible, puis de prendre des décisions sur la base de ces attributs.

La plupart des décisions dans un arbre de décision suivent des instructions conditionnelles - if et else. Pour qu'un modèle d'arbre de décision soit meilleur que les autres, il aura une structure plus profonde et des règles plus complexes le régissant. C'est l'un des modèles d'apprentissage supervisé les plus appréciés en apprentissage automatique et il est utilisé dans un certain nombre de domaines. Cela pourrait ressembler à un organigramme conçu en gardant à l'esprit les techniques algorithmiques pour s'assurer que le fractionnement est effectué conformément aux conditions.

La structure de cet organigramme est assez simple. Il a un nœud racine qui sert de base à la construction du modèle. Ensuite, certains nœuds et branches internes affichent respectivement des fonctionnalités ou des tests et des résultats de tests. Le nœud feuille représente un groupe avec des valeurs qui sont similaires à celles qui sont obtenues lorsque des décisions sur un attribut connexe sont prises.

Les arbres de décision trouvent principalement leurs utilisations dans les problèmes de classification et de régression. Ils sont utilisés pour créer des modèles prédictifs automatisés qui servent plus que quelques applications dans non seulement les applications d'algorithmes d'apprentissage automatique, mais aussi les statistiques, la science des données et l'exploration de données, entre autres domaines. Ces structures arborescentes fournissent certains des modèles prédictifs les plus précis qui sont à la fois facilement interprétables et plus stables que la plupart des autres modèles prédictifs.

Contrairement aux modèles linéaires qui ne sont bons que pour un certain nombre de problèmes, les modèles basés sur des arbres de décision peuvent également être utilisés pour cartographier des relations non linéaires. Pas étonnant que les arbres de décision soient si populaires. Une raison très importante à cela est la facilité de compréhension du modèle d'arbre de décision final. Il peut décrire assez clairement ce qui se cache derrière une prédiction. Ils sont également à la base des méthodes collaboratives ou d'ensemble les plus avancées, y compris le gradient boosting, le bagging et les forêts aléatoires, entre autres.

Comment définir un arbre de décision ?

Maintenant que nous avons développé une compréhension de base du concept, laissez-nous le définir pour vous. Un arbre de décision est un algorithme d'apprentissage automatique supervisé qui peut être utilisé pour résoudre à la fois des problèmes basés sur la classification et basés sur la régression. Voyons comment il est utilisé pour la classification.

Supposons qu'il existe un ensemble de données sur lequel nous travaillons actuellement. Nous créons un plan 2D qui peut être divisé en différentes zones de sorte que les points de chaque zone soient désignés dans la même classe. Les divisions ou fractionnements sont désignés par un caractère unique. C'est un arbre binaire sur lequel nous travaillons ici.

Maintenant, il y a différentes choses de cet arbre de décision qui n'ont pas de représentation préalable mais qui sont créées à l'aide des données d'apprentissage qui nous sont fournies. Ces éléments incluent le nombre de nœuds que cet arbre aura, son positionnement de bord et sa structure. Nous n'allons pas créer l'arbre à partir de zéro ici. Nous ne ferons qu'avancer, considérant que notre arbre est déjà là.

Maintenant, comment pouvons-nous classer les nouveaux points d'entrée ? Nous n'avons qu'à descendre de l'arbre pour le faire. Pendant la traversée, nous continuerons à poser une question sur le point de données en atteignant chaque nœud. Par exemple, lorsque nous posons cette question au nœud racine, la réponse nous permettrait de bifurquer à droite ou à gauche. La règle générale est que si la question posée est vraie si la condition posée dans la condition est remplie, nous devons bifurquer vers la gauche. Si ce n'est pas vrai, nous devons bifurquer à droite. Si notre condition nous amène à un nœud gauche, nous saurions à quelle classe un point d'entrée doit être affecté.

Lorsqu'il s'agit de la façon dont un arbre de décision est démontré, il y a certaines choses qu'il ne faut jamais oublier. Il n'y a aucune règle ou nécessité qui dit que nous devons alterner entre les deux coordonnées d'un arbre de décision tout en le parcourant. Nous pouvons choisir de n'utiliser qu'une seule caractéristique ou dimension. Nous devons garder à l'esprit que les arbres de décision peuvent être utilisés avec un ensemble de données de n'importe quelle dimension. Nous avons pris des données 2D dans notre exemple, mais cela ne signifie pas que les arbres de décision ne concernent que des ensembles de données à deux dimensions.

Paiement : Types d'arbre binaire

Avez-vous déjà participé à un concours Twenty Questions ? C'est assez similaire au fonctionnement des arbres de décision. Découvrons comment ? L'objectif ultime du jeu Twenty Questions est de découvrir l'objet auquel la personne qui répond aux questions pense en répondant aux questions. Les questions ne peuvent être répondues que par oui ou par non.

Au fur et à mesure que vous avancerez dans le jeu, vous saurez grâce aux réponses précédentes quelles questions spécifiques poser afin d'obtenir la bonne réponse avant la fin du jeu. Un arbre de décision est votre série de questions qui vous aide à obtenir la réponse ultime en vous guidant pour poser des questions plus pertinentes.

Vous souvenez-vous comment vous êtes dirigé vers la personne à qui vous souhaitez parler dans une entreprise par messagerie vocale ? Vous parlez d'abord à l'assistant informatisé, puis appuyez sur une série de boutons sur vos téléphones et entrez quelques détails sur votre compte avant d'atteindre la personne à qui vous vouliez parler en premier lieu. Cela pourrait être une expérience gênante pour vous, mais c'est ainsi que la plupart des entreprises utilisent des arbres de décision pour aider leurs clients à atteindre le bon service ou à parler à la bonne personne. Lisez également 6 types d'apprentissage supervisé que vous devez connaître.

Comment fonctionne un arbre de décision ?

Vous songez à créer un arbre de décision parfait ? Comme nous l'avons mentionné précédemment, les arbres de décision sont une classe d'algorithmes utilisés pour résoudre des problèmes d'apprentissage automatique appartenant aux types de classification et de régression. Il peut être utilisé aussi bien pour les variables catégorielles que pour les variables continues.

Cet algorithme a un moyen simple d'aller de l'avant - il partitionne l'ensemble de données ou les données d'échantillon en différents ensembles de données, chaque ensemble de données regroupé partageant les mêmes attributs. Les arbres de décision utilisent un certain nombre d'algorithmes à des fins différentes - identifier la division, les variables les plus importantes et la meilleure valeur de résultat qui peut produire plus de subdivisions allant plus loin.

En règle générale, le flux de travail d'un arbre de décision implique la division des données en ensemble de données d'apprentissage et de test, l'application d'algorithmes et l'évaluation des performances du modèle. Comprenons comment cela fonctionne avec un exemple très simple. Supposons que nous voulions vérifier si une personne convient ou non à un emploi. Ce sera la racine de l'arbre.

Passons maintenant aux caractéristiques ou attributs de l'arbre, qui constitueront les nœuds internes. Sur la base de ces attributs, des décisions seront prises - la formation des branches de l'arbre. Faisons ici une autre hypothèse. Le paramètre d'une personne considérée comme idéale pour le poste est son expérience de 5 ans ou plus. La première division se fera sur ce paramètre que nous venons de fixer.

Nous avons besoin de plus d'ensembles de paramètres pour une division plus poussée. Ces paramètres peuvent concerner leur appartenance à un certain groupe d'âge ou non, leur obtention d'un certain diplôme ou non, etc. Les résultats sont représentés par les feuilles de l'arbre, autres que les racines et les branches. Les feuilles ne se fendent jamais et représentent les décisions. Cet arbre vous aidera à décider si un candidat convient ou non au poste.

Comme déjà mentionné, un arbre de décision a sa propre représentation particulière qui lui permet de résoudre un problème pour nous. Il a des racines, des nœuds internes, des branches et des feuilles, chacun servant un objectif spécifique ou effectuant un travail spécifique. Ces étapes vous aideront à faire une représentation arborescente :

  1. La racine de l'arbre présente la version optimisée du meilleur attribut
  2. Divisez les exemples de données en sous-ensembles à l'aide des attributs appropriés. Assurez-vous que les nouveaux sous-ensembles ou groupes de données ne comportent pas de valeurs différentes pour le même attribut
  3. Répétez les deux étapes ci-dessus jusqu'à ce que vous ayez les feuilles pour chaque branche de votre arbre de décision

Arbre de classification ou de régression (CART)

Prenons un exemple. Imaginez que l'on nous confie la tâche de classer les candidats à un emploi sur la base de certains attributs prédéfinis pour nous assurer que seuls les candidats méritants sont sélectionnés à la fin du processus. La décision de sélectionner un candidat dépendrait d'un événement en temps réel ou possible. Tout ce dont nous avons besoin est un arbre de décision pour trouver les bons critères de classification. Les résultats dépendraient de la manière dont la classification est effectuée.

La classification, comme nous le savons tous, comporte deux étapes. La première étape consiste à construire un modèle aléatoire sur l'ensemble de données de l'échantillon. La deuxième étape implique la prédiction - le modèle formé dans la première étape est mis en œuvre pour faire une prédiction concernant la réponse pour des données données.

Maintenant, il existe certaines situations dans lesquelles la variable cible est un nombre réel, ou les décisions sont prises sur des données continues. On peut vous demander de faire une prédiction concernant le prix d'un article en fonction du coût de la main-d'œuvre. Ou vous pouvez être invité à décider du salaire d'un candidat en fonction de son salaire précédent, de ses compétences, de son expérience et d'autres informations pertinentes.

La valeur de la valeur cible dans ces situations sera soit une valeur réelle, soit une valeur associée à un ensemble de données continues. Nous utiliserons la version de régression d'un arbre de décision pour résoudre ces problèmes. Cet arbre prendra en compte les observations faites sur les caractéristiques d'un objet et formera le modèle pour faire des prédictions et fournir une sortie continue qui a un sens absolu.

Parlons maintenant de quelques similitudes et différences entre les arbres de décision de classification et de régression. Les arbres de décision sont utilisés comme modèles de classification dans des situations où les variables cibles sont de nature catégorique. La valeur que l'ensemble de données d'apprentissage obtient juste au point culminant d'un nœud terminal est égale à la valeur reçue lorsque nous prenons un mode des observations pour cette section particulière. Dans le cas où une nouvelle observation est ajoutée à cette section de l'arbre, nous la remplacerons par la valeur de mode, puis ferons la prédiction.

D'autre part, les arbres de décision sont utilisés comme modèles de régression lorsque les variables cibles font partie d'un ensemble de données continu. La valeur reçue au même point dont nous avons discuté pour les arbres de classification est la valeur moyenne des observations dans cette section en ce qui concerne les arbres de régression.

Il y a aussi quelques similitudes. Les deux modèles d'arbre de décision utilisent une approche binaire récursive et divisent les variables indépendantes en régions qui ne se chevauchent pas et sont définies. Dans ces deux arbres, la division commence au sommet de l'arbre et les observations se situent dans une région. Ces observations divisent les variables en deux branches. Cette division est un processus continu qui cède la place à un arbre adulte.

Lire : Idées de projets d'apprentissage automatique

Comment apprendre un modèle CART ?

Il y a quelques choses importantes que vous devez faire pour créer un modèle CART. Celles-ci incluent le choix des variables d'entrée ainsi que des points de division de manière à ce que l'arbre soit correctement construit. L'algorithme glouton qui réduit la fonction de coût est utilisé pour choisir les variables d'entrée ainsi que les points de division.

La constriction de l'arbre est terminée à l'aide du critère d'arrêt défini à l'avance. Le critère d'arrêt peut mentionner n'importe quoi, comme le nombre d'instances d'entraînement attribuées aux nœuds feuilles de l'arbre.

1. Algorithme glouton : L'espace d'entrée doit être découpé correctement pour construire un arbre binaire. Le fractionnement binaire récursif est l'algorithme glouton utilisé à cette fin. C'est une méthode numérique qui consiste à aligner différentes valeurs. Une fonction de coût est ensuite utilisée pour essayer de tester plusieurs points de division. Le point de division avec le coût minimum est choisi. Cette méthode est utilisée pour évaluer tous les points de division ainsi que les variables d'entrée.

2. Élagage de l'arbre : Le critère d'arrêt améliore les performances de votre arbre de décision. Pour le rendre encore meilleur, vous pouvez essayer d'élaguer l'arbre après avoir appris. Le nombre de divisions d'un arbre de décision en dit long sur sa complexité. Tout le monde préfère les arbres plus simples que les autres. Ils ne surchargent pas les données et sont facilement déchiffrables.

La meilleure façon d'élaguer un arbre est d'examiner chaque nœud feuille et de découvrir l'impact de sa suppression sur l'arbre. La suppression des nœuds feuilles a lieu lorsque cette action justifie une baisse de la fonction de coût. Lorsque vous pensez qu'il n'y a aucun moyen d'améliorer davantage les performances, vous pouvez arrêter ce processus de suppression. Les méthodes d'élagage que vous pouvez utiliser incluent

3. Critère d'arrêt : La méthode de fractionnement glouton mentionnée dont nous avons parlé plus tôt doit avoir une commande ou une condition d'arrêt pour savoir quand s'arrêter. Un critère courant consiste à prendre le nombre d'instances auxquelles chaque nœud feuille a été affecté. Si ce nombre est atteint, la division n'aura pas lieu et ce nœud sera considéré comme le dernier.

Par exemple, disons que le critère d'arrêt prédéfini est mentionné comme cinq instances. Ce nombre en dit également long sur l'exactitude de l'arbre en fonction des données d'apprentissage. S'il est trop précis ou exact, cela entraînera un surajustement, ce qui signifie de mauvaises performances.

Comment éviter le surajustement dans un arbre de décision ?

La plupart des arbres de décision sont exposés au surajustement. Nous pouvons construire un arbre de décision capable de classer les données de manière idéale, ou nous pouvons avoir une situation où nous n'avons aucun attribut pour la division. Cela ne fonctionnera pas trop bien avec l'ensemble de données de test ; cependant, cela conviendrait à l'ensemble de données de formation. Vous pouvez suivre l'une des deux approches que nous allons mentionner pour éviter cette situation.

Vous pouvez soit tailler l'arbre s'il est trop grand, soit arrêter sa croissance avant qu'il n'atteigne cet état de surajustement. Dans la plupart des cas, il existe une limite définie pour contrôler la croissance de l'arbre qui mentionne la profondeur, le nombre de couches et d'autres choses qu'il peut avoir. L'ensemble de données sur lequel l'arbre doit être formé sera divisé en un ensemble de données de test et un ensemble de données d'apprentissage. Ces deux ensembles de données auront des profondeurs maximales sur la base de l'ensemble de données de formation et seront testés par rapport à l'ensemble de données de test. Vous pouvez également utiliser la validation croisée avec cette approche.

Lorsque vous choisissez d'élaguer l'arbre, vous testez les éditions élaguées de l'arbre par rapport à la version originale. Si l'arbre élagué fait mieux que sa version lorsqu'il s'agit de tester par rapport à l'ensemble de données de test, les feuilles ne seront pas disponibles pour l'arbre tant que cette situation persistera.

En savoir plus sur : Arbre de décision en R

Avantages de l'approche des arbres de décision

  1. Il peut être utilisé aussi bien avec des données continues que catégorielles.
  2. Il peut fournir plusieurs sorties
  3. Il peut interpréter des résultats précis, et vous pouvez quantifier et faire confiance à la fiabilité des arbres
  4. Avec cette méthode, vous pouvez explorer les données, trouver des variables importantes et trouver des relations entre différentes variables pour renforcer les variables cibles et créer de nouvelles fonctionnalités en beaucoup moins de temps.
  5. Il est facile à comprendre et à expliquer aux autres
  6. Il est utile pour nettoyer les données. Par rapport à d'autres méthodes, cela ne prend pas trop de temps car il n'y a pas d'impact des valeurs manquantes et des valeurs aberrantes après un certain point
  7. L'efficacité et les performances des arbres de décision ne sont pas affectées par les relations non linéaires entre les caractéristiques
  8. La préparation des données ne prend pas beaucoup de temps car il n'est pas nécessaire de remplacer les valeurs manquantes, de normaliser les données, etc.
  9. C'est une approche non paramétrique. Cela n'a rien à voir avec la conception et l'agencement spatial des classificateurs

Inconvénients des arbres de décision

  1. Certains utilisateurs peuvent construire des arbres de décision trop complexes, même à leur goût. Ces arbres ne généralisent pas les données comme le font les arbres plus simples.
  2. Des arbres biaisés sont souvent créés en raison de la domination de certaines classes. C'est pourquoi il est très important d'équilibrer les données de l'échantillon avant de les utiliser
  3. Parfois, ces arbres ne sont pas trop stables. Les variations de données peuvent entraîner la création d'un arbre qui ne correspond pas à la facture. Cette anomalie est appelée variance. Il peut être traité en utilisant le boosting et le bagging.
  4. Vous ne pouvez pas vous attendre à obtenir le meilleur arbre de décision avec des algorithmes gourmands. Pour résoudre ce problème, vous pouvez former plusieurs arbres.

Conclusion

Ce blog traite de toutes les choses importantes qu'un apprenant doit savoir sur les arbres de décision. Après avoir lu ce blog, vous comprendrez mieux le concept et serez mieux placé pour le mettre en œuvre dans la vie réelle.

Si vous souhaitez en savoir plus sur l'apprentissage automatique et l'IA, consultez le diplôme PG d'IIIT-B & upGrad en apprentissage automatique et IA, conçu pour les professionnels en activité et offrant plus de 450 heures de formation rigoureuse, plus de 30 études de cas et missions, Statut d'ancien de l'IIIT-B, plus de 5 projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.

À quoi sert l'algorithme de l'arbre de décision ?

Faisant partie de la famille des algorithmes d'apprentissage supervisé, les arbres de décision sont l'un des algorithmes de classification les plus utilisés. Il est très facile à comprendre et à interpréter, ce qui explique sa popularité. Des arbres de décision peuvent être utilisés pour développer des modèles de formation qui peuvent prédire des valeurs de variables cibles sur la base d'instructions de décision simples dérivées de données de formation historiques. La meilleure chose à propos de l'algorithme des arbres de décision est qu'il peut être utilisé efficacement pour résoudre des problèmes de classification et de régression, auxquels d'autres algorithmes d'apprentissage supervisé ne peuvent pas être appliqués. Différents types d'arbres de décision peuvent être utilisés en fonction du type de variable cible.

Faisant partie de la famille des algorithmes d'apprentissage supervisé, les arbres de décision sont l'un des algorithmes de classification les plus utilisés. Il est très facile à comprendre et à interpréter, ce qui explique sa popularité. Des arbres de décision peuvent être utilisés pour développer des modèles de formation qui peuvent prédire des valeurs de variables cibles sur la base d'instructions de décision simples dérivées de données de formation historiques. La meilleure chose à propos de l'algorithme des arbres de décision est qu'il peut être utilisé efficacement pour résoudre des problèmes de classification et de régression, auxquels d'autres algorithmes d'apprentissage supervisé ne peuvent pas être appliqués. Différents types d'arbres de décision peuvent être utilisés en fonction du type de variable cible.

En IA, l'algorithme des arbres de décision est livré avec un large éventail d'applications. Certaines des applications les plus intéressantes des arbres de décision incluent l'évaluation des opportunités de croissance potentielles pour les entreprises sur la base de données historiques. Pour cela, les données historiques sur les ventes peuvent aider les arbres de décision à indiquer les voies possibles pour une expansion et une croissance supplémentaires de l'entreprise. Les arbres de décision peuvent également être utilisés pour trouver des clients potentiels à l'aide d'informations démographiques. En outre, les institutions financières peuvent également appliquer des arbres de décision pour créer des modèles prédictifs permettant d'évaluer la solvabilité des clients et des débiteurs défaillants.

Quels autres algorithmes sont utilisés dans l'Intelligence Artificielle ?

Les algorithmes utilisés dans l'intelligence artificielle peuvent être classés en trois grandes parties : les algorithmes de régression, les algorithmes de classification et les algorithmes de clustering. Les algorithmes de classification sont utilisés pour classer les ensembles de données d'une manière particulière. Les algorithmes de clustering sont appliqués à des ensembles entiers de données pour trouver des différences et des similitudes entre des points de données spécifiques. Il peut être utilisé pour signaler des personnes du même âge parmi un grand groupe de clients. Les algorithmes de régression sont utiles pour prévoir les résultats futurs en fonction des données d'entrée. Par exemple, les algorithmes de régression peuvent être utilisés pour concevoir des modèles de prévision du temps.