Gradient tree boosting as proposed by Friedman uses decision trees with J
terminal nodes (=leaves) as base learners. There are a number of ways to grow a tree with exactly J
nodes for example one can grow the tree in a depth first fashion or in a breadth first fashion, ...
Is there an established way how to grow trees with exactly J
terminal nodes for gradient tree boosting?
I examined the tree growing procedure of R's gbm
package and it seems that it expands the tree in depth-first fashion and uses a heuristic based on error improvement to choose whether to expand the left or the right child node -- is that correct?
gbm
has a parametern.minobsinnode
that controls the minimum number of objects per node. Of course, then the number of nodes is less than or equal to NumberOfPoints/n.minobsinnode $\endgroup$