首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >学习随机森林分类器能处理分类变量吗?

学习随机森林分类器能处理分类变量吗?
EN

Stack Overflow用户
提问于 2020-04-30 16:46:12
回答 1查看 4.2K关注 0票数 4

我发现了这条线从2014年开始,答案是否定的,sklearn随机森林分类器不能处理分类变量(或者至少不是直接处理)。答案在2020年改变了吗?

我想将gender作为我的模型的一个特性。然而,gender可以具有三个值:MF of np.nan。如果我将这个列编码成三个二分列,随机森林分类器如何知道这三个列代表一个特性?

假设max_features = 7,当训练一棵树时,它会随机选择七个特征。假设选择了gender。如果gender被分成三列(gender_Mgender_Fgender_NA),那么随机森林分类器是否总是选择所有三列并将其计算为一个特性,还是只选择一个或两个?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-30 16:54:10

如果将max_features设置为低于列的实际数量的值(这是一种可取的方法,请参阅文档中的max_features推荐值),则是的,对于随机林中的给定估计器,可能只考虑虚拟列的一个子集。

但这并不一定太糟糕。在决策树中,在给定的层次上选择一个特征作为节点,目的是独立于其他特征,即仅考虑实际特征和目标,对某个度量进行优化。因此,从某种意义上说,模型不会将这些虚拟列视为属于同一特性的列。

但是,通常,二进制特性的最佳方法是提出一个适当的方法来填充缺失的值,并将其转换为编码为0s和1s的单个列。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61528588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档