Rôle du paramètre n.minobsinnode de GBM dans R [fermé]
21
Je voulais savoir ce que signifie le paramètre n.minobsinnode dans le package GBM. J'ai lu le manuel, mais ce n'est pas clair. Ce nombre devrait-il être petit ou grand pour améliorer les résultats?
"Cette question est peu susceptible d'aider les futurs visiteurs". Je suis un futur visiteur et je l'ai trouvé utile.
Flounderer
1
Je l'ai également trouvé utile.
oaxacamatt
Réponses:
25
À chaque étape de l'algorithme GBM, un nouvel arbre de décision est construit. La question lors de la croissance d'un arbre de décision est «quand s'arrêter?». Le plus loin possible est de diviser chaque nœud jusqu'à ce qu'il n'y ait qu'une seule observation dans chaque nœud terminal. Cela correspondrait à n.minobsinnode = 1. Alternativement, le fractionnement des nœuds peut cesser lorsqu'un certain nombre d'observations se trouvent dans chaque nœud. La valeur par défaut pour le package R GBM est 10.
Quelle est la meilleure valeur à utiliser? Cela dépend de l'ensemble de données et si vous effectuez une classification ou une régression. Étant donné que la prédiction de chaque arbre est considérée comme la moyenne de la variable dépendante de toutes les entrées du nœud terminal, une valeur de 1 ne fonctionnera probablement pas si bien pour la régression (!) Mais peut être appropriée pour la classification.
Des valeurs plus élevées signifient des arbres plus petits, donc accélérez l'algorithme et utilisez moins de mémoire, ce qui peut être une considération.
En règle générale, les résultats ne sont pas très sensibles à ce paramètre et, compte tenu de la nature stochastique des performances de GBM, il peut en fait être difficile de déterminer exactement quelle valeur est «la meilleure». La profondeur d'interaction, le retrait et le nombre d'arbres seront tous beaucoup plus importants en général.
Réponses:
À chaque étape de l'algorithme GBM, un nouvel arbre de décision est construit. La question lors de la croissance d'un arbre de décision est «quand s'arrêter?». Le plus loin possible est de diviser chaque nœud jusqu'à ce qu'il n'y ait qu'une seule observation dans chaque nœud terminal. Cela correspondrait à n.minobsinnode = 1. Alternativement, le fractionnement des nœuds peut cesser lorsqu'un certain nombre d'observations se trouvent dans chaque nœud. La valeur par défaut pour le package R GBM est 10.
Quelle est la meilleure valeur à utiliser? Cela dépend de l'ensemble de données et si vous effectuez une classification ou une régression. Étant donné que la prédiction de chaque arbre est considérée comme la moyenne de la variable dépendante de toutes les entrées du nœud terminal, une valeur de 1 ne fonctionnera probablement pas si bien pour la régression (!) Mais peut être appropriée pour la classification.
Des valeurs plus élevées signifient des arbres plus petits, donc accélérez l'algorithme et utilisez moins de mémoire, ce qui peut être une considération.
En règle générale, les résultats ne sont pas très sensibles à ce paramètre et, compte tenu de la nature stochastique des performances de GBM, il peut en fait être difficile de déterminer exactement quelle valeur est «la meilleure». La profondeur d'interaction, le retrait et le nombre d'arbres seront tous beaucoup plus importants en général.
la source