Maison >Problème commun >Quel est le principe de l'algorithme de forêt aléatoire
Le principe de l'algorithme de forêt aléatoire est le suivant : 1. L'algorithme de forêt aléatoire est une amélioration de l'algorithme de Bagging ; 2. La forêt aléatoire utilise l'arbre de décision CART comme apprenant faible ; ensemble d'échantillons, et le classificateur faible itère les temps T 4. Le résultat est le classificateur fort final [f(x)].
Le principe de l'algorithme de forêt aléatoire est :
Algorithme de forêt aléatoire
L'algorithme RF (Random Forest) est une amélioration de l'algorithme Bagging.
Premièrement, RF utilise l'arbre de décision CART comme apprenant faible, ce qui nous rappelle l'arbre de boosting de gradient GBDT.
Deuxièmement, sur la base de l'utilisation d'arbres de décision, RF a amélioré l'établissement d'arbres de décision pour les arbres de décision ordinaires, nous en sélectionnerons un optimal parmi les n échantillons de fonctionnalités du nœud. Les fonctionnalités sont utilisées pour diviser. les sous-arbres gauche et droit de l'arbre de décision, mais RF sélectionne de manière aléatoire une partie des échantillons de caractéristiques sur le nœud. Ce nombre est inférieur à n, en supposant qu'il s'agit de nsub, puis parmi ces échantillons de caractéristiques nsub (inférieurs à n) sélectionnés au hasard. , sélectionnez Une fonctionnalité optimale est utilisée pour diviser les sous-arbres gauche et droit de l'arbre de décision. Cela améliore encore la capacité de généralisation du modèle.
À l'exception des deux points ci-dessus, RF n'est pas différent de l'algorithme d'ensachage ordinaire. Ce qui suit est un bref résumé de l'algorithme RF.
L'entrée est l'ensemble d'échantillons et le nombre d'itérations du classificateur faible est T.
La sortie est le classificateur fort final f(x)
(1) Pour t = 1,2,3,... ,T;
Échantillonnez l'ensemble d'entraînement pour la ième fois, en collectant m fois au total, pour obtenir un ensemble d'échantillonnage Dt contenant m échantillons
Utilisez l'ensemble d'échantillonnage Dt pour entraîner le ième arbre de décision modèle Gt (x), lors de la formation du nœud du modèle d'arbre de décision, sélectionnez une partie des exemples de fonctionnalités parmi tous les exemples de fonctionnalités sur le nœud et sélectionnez une fonctionnalité optimale parmi ces parties sélectionnées au hasard des exemples de fonctionnalités pour créer la gauche et les sous-arbres droits de l'arbre de décision se divisent.
(2) Si cela est prédit par un algorithme de classification, la catégorie ou l'une des catégories pour laquelle les T apprenants faibles ont voté le plus sera la catégorie finale. S’il s’agit d’un algorithme de régression, la moyenne arithmétique des résultats de régression obtenus par T apprenants faibles constitue le résultat final du modèle.
2. Promotion de Random Forest
RF n'est pas seulement utilisé pour les problèmes de classification, mais aussi pour la conversion de fonctionnalités, la détection de valeurs aberrantes, etc.
2.1 arbres supplémentaires
Les arbres supplémentaires sont une variante du RF Le principe est presque exactement le même que le RF La seule différence est :
(1) Pour l'entraînement. de chaque arbre de décision, RF utilise un bootstrap d'échantillonnage aléatoire pour sélectionner l'ensemble d'échantillonnage comme ensemble de formation pour chaque arbre de décision, tandis que les arbres supplémentaires n'utilisent généralement pas d'échantillonnage aléatoire, c'est-à-dire l'ensemble de formation d'origine utilisé par chaque arbre de décision.
(2) Après avoir sélectionné les caractéristiques de division, l'arbre de décision RF sélectionnera un point de division de caractéristiques optimal sur la base de principes tels que le coefficient de Gini et l'erreur quadratique moyenne, qui sont les mêmes que l'arbre de décision traditionnel. Mais les arbres supplémentaires sont plus radicaux. Ils sélectionnent au hasard une valeur de caractéristique pour diviser l'arbre de décision.
2.2 Incorporation d'arbres totalement aléatoires
L'intégration d'arbres totalement aléatoires (ci-après dénommée TRTE) est une méthode de transformation de données d'apprentissage non supervisée. Il mappe des ensembles de données de faible dimension à des dimensions élevées, afin que les données mappées à des dimensions élevées puissent être mieux utilisées dans les modèles de classification et de régression. Nous savons que la méthode du noyau est utilisée dans les machines à vecteurs de support pour mapper des ensembles de données de faible dimension à des dimensions élevées. Ici, TRTE propose une autre méthode.
TRTE utilise également une méthode similaire à la RF dans le processus de transformation des données pour établir des arbres de décision en T adaptés aux données. Une fois l'arbre de décision établi, la position des nœuds feuilles dans les arbres de décision T pour chaque donnée de l'ensemble de données est également déterminée. Par exemple, nous avons 3 arbres de décision, chaque arbre de décision a 5 nœuds feuilles. Une certaine caractéristique de données x est divisée en le 2ème nœud feuille du premier arbre de décision, le 3ème nœud feuille du deuxième arbre de décision et le 3ème nœud feuille. du deuxième arbre de décision. Le cinquième nœud feuille de trois arbres de décision. Ensuite, le code de fonctionnalité après le mappage x est (0,1,0,0,0, 0,0,1,0,0, 0,0,0,0,1), qui possède des fonctionnalités de haute dimension à 15 dimensions. Des espaces sont ajoutés ici entre les dimensions des caractéristiques pour souligner le sous-codage de chacun des trois arbres de décision.
Après avoir cartographié des fonctionnalités de grande dimension, vous pouvez continuer à utiliser divers algorithmes de classification et de régression d'apprentissage supervisé.
3. Résumé de Random Forest
Le principe de l'algorithme RF a enfin été expliqué En tant qu'algorithme hautement parallélisé, RF. est largement utilisé. Il y a beaucoup à faire avec les données.
Les principaux avantages de la RF sont :
1) La formation peut être hautement parallélisée, ce qui présente des avantages en termes de vitesse de formation de grands échantillons à l'ère du Big Data. Personnellement, je pense que c'est le principal avantage.
2) Étant donné que les nœuds de l'arbre de décision peuvent être sélectionnés au hasard pour diviser les fonctionnalités, le modèle peut toujours être entraîné efficacement lorsque la dimension des fonctionnalités de l'échantillon est très élevée.
3) Après la formation, l'importance de chaque fonctionnalité dans le résultat peut être donnée
4) En raison de l'utilisation de l'échantillonnage aléatoire, le modèle entraîné présente une faible variance et une forte capacité de généralisation.
5) Par rapport à Adaboost et GBDT de la série Boosting, la mise en œuvre RF est relativement simple.
6) Insensible aux fonctionnalités manquantes.
Les principaux inconvénients de la RF sont :
1) Sur certaines séries d'échantillons avec un bruit relativement important, le modèle RF est sujet au surajustement.
2) Les caractéristiques avec plus de divisions de valeur sont susceptibles d'avoir un plus grand impact sur la prise de décision de RF, affectant ainsi l'effet du modèle ajusté.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!