Boosting 算法 Adaboost(使用树时)具有三个核心参数:
- 要训练的弱学习者的数量
- 学习率
- 最大分割数(树的深度)
为这些参数找到合适的值有哪些好的做法,也许是经验证明的?
我能想到的一种选择是通过交叉验证进行网格搜索并得出验证准确性(1-泛化错误)。
Boosting 算法 Adaboost(使用树时)具有三个核心参数:
为这些参数找到合适的值有哪些好的做法,也许是经验证明的?
我能想到的一种选择是通过交叉验证进行网格搜索并得出验证准确性(1-泛化错误)。
弱学习者的数量
训练很多很多薄弱的学习者。然后查看测试错误与估计器数量的曲线以找到最佳数量。
学习率
越小越好,但是学习率越小,你就必须适应越弱的学习者。在初始建模和 EDA 期间,将学习率设置得相当大(例如 0.01)。然后在拟合最终模型时,将其设置得非常小(例如 0.0001),拟合很多很多弱学习器,然后整夜运行模型。
最大分割数
没有先验的最佳答案。你需要网格搜索这个。