我正在查看某人为 Kaggle 比赛发布的笔记本。他们使用 lightgbm 并将叶子数设置为 40。如果我理解正确,那就是对提升中使用的弱学习器(决策树)的大小设置了限制;树的叶子不能超过 40 片。
但是,经过训练,我们看到特征重要性最大的特征是一个分类变量,有 1000+ 个类别!如果曾经在决策树中为该变量使用过一个分支,它是否不一定至少有 1000 多个叶子?
这种情况如何处理?当弱学习器上的叶子数小于其中一个变量内的类别数时?
我正在查看某人为 Kaggle 比赛发布的笔记本。他们使用 lightgbm 并将叶子数设置为 40。如果我理解正确,那就是对提升中使用的弱学习器(决策树)的大小设置了限制;树的叶子不能超过 40 片。
但是,经过训练,我们看到特征重要性最大的特征是一个分类变量,有 1000+ 个类别!如果曾经在决策树中为该变量使用过一个分支,它是否不一定至少有 1000 多个叶子?
这种情况如何处理?当弱学习器上的叶子数小于其中一个变量内的类别数时?
包含分类特征的方法有很多种,其中许多方法是单个叶子可以组合多个类别:
最后,也有可能在这 1000 多个类别中只有少数是真正重要的(实际上或只是表面上是由于过度拟合)。