在lightgbm
中初始化num_leaves
参数是否有任何经验法则?例如,对于一个有1000
个特征的数据集,我们知道当tree-depth
为10
时,可以覆盖整个数据集,因此我们可以据此选择,并限制调优的搜索空间。
但是在lightgbm
中,我们如何大致猜测这个参数,否则在使用网格搜索方法时,其搜索空间将非常大。
关于选择此参数的任何直觉都会有所帮助。
回答:
我遇到的最佳建议是Laurae在lightgbm GitHub上的这个精彩总结。如往常一样,这在很大程度上取决于你的数据。
根据我在Kaggle有限的经验,我的个人经验法则是从[10,100]
范围内的值开始尝试。但如果你有一个可靠的启发式方法来选择树的深度,你可以始终使用它,并将num_leaves
设置为2^tree_depth - 1