2015-10-06 5 views
2

Comment pouvons-nous trouver la profondeur maximale de la forêt aléatoire si nous connaissons le nombre de caractéristiques?trouver la profondeur maximale de la forêt aléatoire étant donné le nombre de caractéristiques

Ceci est nécessaire pour régulariser le classificateur de forêt aléatoire.

+0

Pourquoi? Comment régulariserais-tu? Certaines personnes ont tort cette partie. Les tresses en pleine croissance ne sont pas trop ajustées, parce que l'ensachage et la sélection de caractéristiques aléatoires empêchent cela. –

+0

Lorsque je l'ai formé avec 100% de données et testé avec les mêmes données complètes, la précision était de 1. C'est possible seulement dans le cas d'overfitting, donc j'ai pensé à le régulariser avec le paramètre max_depth et oui il a résolu le problème, la précision s'est accrue – mach

+0

Hey, vous devez le tester sur un ensemble de validation croisée. Évidemment, si vous vérifiez le classificateur sur l'ensemble de formation sur lequel il est formé, il serait calme près de 100%. Veuillez diviser votre ensemble d'entraînement en deux parties. Formation et validation croisée pour vérifier la performance. Vérifiez également la corrélation entre les caractéristiques car celles-ci peuvent également conduire à un surapprentissage mais votre méthode de test est erronée dans mon humble opnion –

Répondre

0

Je n'y ai pas encore pensé. En général, les arbres sont non déterministes. Au lieu de demander quelle est la profondeur maximale? Vous voudrez peut-être savoir quelle serait la profondeur moyenne, ou quelle est la chance d'un arbre a la profondeur 20 ... De toute façon, il est possible de calculer quelques limites de la profondeur maximale. Ainsi, soit un nœud se termine par (a) des échantillons inbag ou (b) des scissions possibles. (A) Si les échantillons d'entrée (N) sont la partie limite, on pourrait imaginer un arbre de classification, où tous les échantillons sauf un sont transférés à gauche pour chaque division. Ensuite, la profondeur maximale est N-1. Ce résultat est hautement improbable, mais possible. L'arbre de profondeur minimale, où tous les nœuds enfants sont également grands, alors la profondeur minimale serait ~ log2 (N), par ex. 16,8,4,2,1. En pratique, la profondeur de l'arbre se situera quelque part entre le maximum et le minimum. Les paramètres contrôlant la taille minimale des nœuds réduiraient la profondeur. (B) Pour vérifier si les caractéristiques limitent la profondeur de l'arbre et si vous connaissez auparavant l'ensemble d'entraînement, comptez combien d'échantillons d'entraînement sont uniques. Les échantillons uniques (U) ne peuvent pas être divisés. Do à boostrapping seulement ~ 0,63 des échantillons seront sélectionnés pour chaque arbre. N ~ U * 0,63. Utilisez les règles de la section (a). Tous les échantillons uniques pourraient être sélectionnés lors du bootstrapping, mais cela est également peu probable. Si vous ne connaissez pas votre jeu d'apprentissage, essayez d'estimer le nombre de niveaux (L [i]) possibles dans chaque fonction (i) parmi les fonctions d. Pour les caractéristiques catégoriques, la réponse peut être donnée. Pour les entités numériques tirées d'une distribution réelle, il y aurait autant de niveaux qu'il y a d'échantillons. Les échantillons uniques possibles seraient U = L [1] * L [2] * L [3] ... * L [d]. Pourquoi auriez-vous besoin de régulariser le classificateur de forêt aléatoire?