Christopher Schwalm
2008-Mar-05 21:03 UTC
[R] Using tune with gbm --grid search for best hyperparameters
Hello LIST, I'd like to use tune from e1071 to do a grid search for hyperparameter values in gbm. However, I can not get this to work. I note that there is no wrapper for gbm but that it is possible to use non-wrapped functions (like lm) without problem. Here's a snippet of code to illustrate.> data(mtcars) obj <- > gbm(mpg~disp+wt+carb,data=mtcars,distribution="gaussian",n.trees=1000,n.minobsinnode=5) > summary(obj) #just to demonstrate that gbm workedvar rel.inf 1 disp 55.185469 2 wt 40.198605 3 carb 4.615926 # now let's find the best value for n.minobsinnode using tune> tune.obj <- > tune(gbm,mpg~disp+wt+carb,data=mtcars,distribution="gaussian",n.trees=1000,n.minobsinnode=c(5,10,15))Error in function (formula = formula(data), distribution = "bernoulli", : unused argument(s) (subset = c(23, 9, 18, 26, 32, 28, 16, 5, 25, 24, 21, 8, 6, 7, 13, 1, 30, 17, 2, 29, 3, 27, 31, 12, 15, 11, 4, 22)) I've tried many variations on syntax --too many to count. But this error message will not go away. Does tune simply not work with gbm or is something else going on. Many thanks for any insight. Christopher