Algorithme de forêt aléatoire : quand l'utiliser et comment l'utiliser ? [Avec avantages et inconvénients]
Publié: 2020-12-24La science des données englobe un large éventail d'algorithmes capables de résoudre des problèmes liés à la classification. La forêt aléatoire est généralement présente au sommet de la hiérarchie de classification. D'autres algorithmes incluent la machine à vecteurs de support, le classificateur Naive Bias et les arbres de décision.
Avant d'en savoir plus sur l'algorithme de forêt aléatoire, comprenons d'abord le fonctionnement de base des arbres de décision et comment ils peuvent être combinés pour former une forêt aléatoire.
Table des matières
Arbres de décision
L'algorithme d'arbre de décision appartient à la catégorie des algorithmes d'apprentissage supervisé. L'objectif d'un arbre de décision est de prédire la classe ou la valeur de la variable cible en fonction des règles développées au cours du processus d'apprentissage. En partant de la racine de l'arbre, nous comparons la valeur de l'attribut racine avec le point de données que nous souhaitons classer et sur la base de la comparaison, nous passons au nœud suivant.
Passons à autre chose, discutons de certains des termes importants et de leur signification dans le traitement des arbres de décision.
- Nœud racine : C'est le nœud le plus haut de l'arbre, à partir duquel la division a lieu pour former des nœuds plus homogènes.
- Fractionnement des points de données : les points de données sont divisés de manière à réduire l'écart type après le fractionnement.
- Gain d'information : Le gain d'information est la réduction de l'écart type que nous souhaitons obtenir après la séparation. Plus la réduction de l'écart type signifie des nœuds plus homogènes.
- Entropie : L'entropie est l'irrégularité présente dans le nœud après que la scission a eu lieu. Plus d'homogénéité dans le nœud signifie moins d'entropie.
Lire: Questions d'entretien sur l'arbre de décision
Besoin d'un algorithme de forêt aléatoire
L'algorithme de l'arbre de décision est sujet au surajustement, c'est-à-dire une grande précision sur les données d'apprentissage et de mauvaises performances sur les données de test. Deux méthodes populaires pour empêcher le surajustement des données sont l'élagage et la forêt aléatoire. L'élagage fait référence à une réduction de la taille de l'arbre sans affecter la précision globale de l'arbre.

Parlons maintenant de l'algorithme de la forêt aléatoire.
L'un des principaux avantages de la forêt aléatoire est sa capacité à être utilisée à la fois dans la classification et dans les problèmes de régression.
Comme son nom l'indique, une forêt se forme en combinant plusieurs arbres. De même, un algorithme de forêt aléatoire combine plusieurs algorithmes d'apprentissage automatique (arbres de décision) pour obtenir une meilleure précision. Ceci est également appelé apprentissage d'ensemble. Ici, une faible corrélation entre les modèles permet de générer une meilleure précision que n'importe laquelle des prédictions individuelles. Même si certains arbres génèrent de fausses prédictions, la majorité d'entre eux produiront de vraies prédictions, donc la précision globale du modèle augmente.
Les algorithmes de forêt aléatoire peuvent être implémentés à la fois en python et en R comme d'autres algorithmes d'apprentissage automatique.
Quand utiliser Random Forest et quand utiliser les autres modèles ?
Tout d'abord, nous devons décider si le problème est linéaire ou non linéaire. Ensuite, si le problème est linéaire, nous devrions utiliser la régression linéaire simple dans le cas où une seule fonctionnalité est présente, et si nous avons plusieurs fonctionnalités, nous devrions utiliser la régression linéaire multiple. Cependant, si le problème n'est pas linéaire, nous devrions Régression polynomiale, SVR, Arbre de décision ou Aléatoire
Forêt. Ensuite, en utilisant des techniques très pertinentes qui évaluent les performances du modèle telles que k-Fold Cross-Validation, Grid Search ou XGBoost, nous pouvons conclure le bon modèle qui résout notre problème.
Comment savoir combien d'arbres je dois utiliser ?
Pour tout débutant, je conseillerais de déterminer le nombre d'arbres requis en expérimentant. Cela prend généralement moins de temps que d'utiliser des techniques pour déterminer la meilleure valeur en ajustant et en ajustant votre modèle. En expérimentant plusieurs valeurs d'hyperparamètres comme le nombre d'arbres. Néanmoins, des techniques comme cover k-Fold Cross-Validation et Grid Search peuvent être utilisées, qui sont des méthodes puissantes pour déterminer la valeur optimale d'un hyperparamètre, comme ici le nombre d'arbres.
La valeur p peut-elle être utilisée pour la forêt aléatoire ?
Ici, la valeur p sera insignifiante dans le cas de la forêt aléatoire car ce sont des modèles non linéaires.

Ensachage
Les arbres de décision sont très sensibles aux données sur lesquelles ils sont formés et sont donc sujets au surajustement. Cependant, la forêt aléatoire tire parti de ce problème et permet à chaque arbre d'échantillonner de manière aléatoire à partir de l'ensemble de données pour obtenir différentes structures arborescentes. Ce processus est connu sous le nom d'ensachage.
L'ensachage ne signifie pas la création d'un sous-ensemble des données d'entraînement. Cela signifie simplement que nous alimentons toujours l'arbre avec des données d'apprentissage mais avec une taille N. Au lieu des données d'origine, nous prenons un échantillon de taille N (N points de données) avec remplacement.
Importance des fonctionnalités
Les algorithmes de forêt aléatoire nous permettent de déterminer l'importance d'une caractéristique donnée et son impact sur la prédiction. Il calcule le score de chaque fonctionnalité après l'entraînement et les met à l'échelle de manière à ce que leur addition en fasse un. Cela nous donne une idée de la fonctionnalité à supprimer car elle n'affecte pas l'ensemble du processus de prédiction. Avec moins de fonctionnalités, le modèle sera moins susceptible d'être la proie du surajustement.
Hyperparamètres
L'utilisation d'hyperparamètres augmente la capacité prédictive du modèle ou rend le modèle plus rapide.
Pour commencer, le paramètre n_estimator est le nombre d'arbres que l'algorithme construit avant de prendre la prédiction moyenne. Une valeur élevée de n_estimator signifie des performances accrues avec une prédiction élevée. Cependant, sa valeur élevée réduit également le temps de calcul du modèle.
Un autre hyperparamètre est max_features, qui est le nombre total de fonctionnalités que le modèle prend en compte avant de se diviser en nœuds suivants.

De plus, min_sample_leaf est le nombre minimum de feuilles requises pour diviser le nœud interne.
Enfin, random_state est utilisé pour produire une sortie fixe lorsqu'une valeur définie de random_state est choisie avec les mêmes hyperparamètres et les données d'apprentissage.
Avantages et inconvénients de l'algorithme de forêt aléatoire
- La forêt aléatoire est un algorithme très polyvalent capable de résoudre à la fois des tâches de classification et de régression.
- De plus, les hyperparamètres impliqués sont faciles à comprendre et généralement, leurs valeurs par défaut donnent une bonne prédiction.
- La forêt aléatoire résout le problème de surajustement qui se produit dans les arbres de décision.
- Une limitation de la forêt aléatoire est que trop d'arbres peuvent ralentir le traitement de l'algorithme, le rendant ainsi inefficace pour la prédiction sur des données en temps réel.
Lire aussi : Types d'algorithmes de classification
Conclusion
L'algorithme de forêt aléatoire est un algorithme très puissant avec une grande précision. Son application réelle dans les domaines de la banque d'investissement, de la bourse et des sites Web de commerce électronique en fait un algorithme très puissant à utiliser. Cependant, de meilleures performances peuvent être obtenues en utilisant des algorithmes de réseau neuronal, mais ces algorithmes ont parfois tendance à devenir complexes et à prendre plus de temps à se développer.
Si vous souhaitez en savoir plus sur l'arbre de décision, l'apprentissage automatique, consultez le diplôme PG d'IIIT-B et 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 affectations, statut IIIT-B Alumni, 5+ projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.
Quels sont les inconvénients de l'utilisation d'algorithmes de forêts aléatoires ?
Random Forest est un algorithme d'apprentissage automatique sophistiqué. Il demande beaucoup de ressources de traitement car il génère beaucoup d'arbres pour trouver le résultat. De plus, par rapport à d'autres algorithmes tels que la méthode de l'arbre de décision, cette technique prend beaucoup de temps d'apprentissage. Lorsque les données fournies sont linéaires, la régression forestière aléatoire ne fonctionne pas bien.
Comment fonctionne un algorithme de forêt aléatoire ?
Une forêt aléatoire est composée de nombreux arbres de décision différents, de la même manière qu'une forêt est composée de nombreux arbres. Les résultats de la méthode de la forêt aléatoire sont en fait déterminés par les prédictions des arbres de décision. La méthode de la forêt aléatoire réduit également les risques de surajustement des données. La classification aléatoire des forêts utilise une stratégie d'ensemble pour obtenir le résultat souhaité. Divers arbres de décision sont entraînés à l'aide des données d'entraînement. Cet ensemble de données comprend des observations et des caractéristiques choisies au hasard après la division des nœuds.
En quoi un arbre de décision est-il différent d'une forêt aléatoire ?
Une forêt aléatoire n'est rien de plus qu'une collection d'arbres de décision, ce qui la rend complexe à appréhender. Une forêt aléatoire est plus difficile à lire qu'un arbre de décision. Par rapport aux arbres de décision, la forêt aléatoire nécessite un temps de formation plus long. Cependant, lorsqu'il s'agit d'un énorme ensemble de données, la forêt aléatoire est privilégiée. Le surajustement est plus courant dans les arbres de décision. Le surajustement est moins probable dans les forêts aléatoires car elles utilisent de nombreux arbres.