Quelle que soit la méthode ('cv', 'OOB' or 'test'
) nous choisissons, le nombre d'arbres dans l'objet GBM équipé est toujours 3*n.trees
pour jeu de données iris
. Est-ce parce que l'ensemble de données iris
a une variable catégorielle cible avec 3 niveaux. Si oui et que la variable cible a les valeurs A, B et C, est le premier arbre pour A, le deuxième arbre pour B, le troisième arbre pour C et le quatrième arbre pour A à nouveau?
Si le n.trees
est défini sur 100, les 100 premiers arbres sont pour A, les 100 premiers arbres pour B et les 100 derniers pour C?
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 50, cv.folds = 2)
best.iter = gbm.perf(fit, method = 'cv')
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 40, train.fraction = 0.8)
best.iter = gbm.perf(fit, method = 'test')
fit = gbm(data=iris, Species ~., shrinkage = 0.2, n.trees = 50)
best.iter = gbm.perf(fit, method = 'OOB')
J'ai aussi trouvé que si le 'distribution' est choisi comme' Bernoulli ', alors ce n'est que 1 * n.trees et la réponse doit être recodée à 0s et 1s. – John