我一直在阅读与the paper中TensorFlow中的增强树实现相关的文章,其中讨论了逐层方法
...和新颖的逐层增强,允许更强的树(导致更快的收敛)和更深的模型。
虽然在文章中没有讨论这种方法。我很确定n_batches_per_layer
parameter passed in the BosstedTreesClassifier/Regressor与这个概念有关。
我的问题是
n_batches_per_layer
参数是什么意思?n_batches_per_layer
参数以遵循提升树的标准训练方案?n_batches_per_layer是您希望用于为每个图层(即树中给定深度)训练的批次数。它基本上是用于构建1层的数据的一部分,分批测量。例如,如果您设置batch size = len(train_set)
和n_batches_per_layer = 1
,那么您将使用每个图层的整个火车组。
所以我建议如果他们的数据集适合内存然后设置batch_size = len(train_set),n_batches_per_layer = len(train_set)
的数量。否则将其设置为int(len(train_data)/batch_size)
- 尽管您可以尝试使用较小的数字来加快训练速度。