【问题标题】:Is it possible to specify the order of spliting in decision tree with scikit-learn?是否可以使用 scikit-learn 指定决策树中的拆分顺序?
【发布时间】:2015-09-18 01:35:08
【问题描述】:

给定三个列,["A", "B", "C"],我们可以指定拆分的顺序,使其首先拆分为“A”的类别,然后是“B”,然后是其他类别?

根据 DecisionTreeClassifier 上的文档页面,没有这样的选项。有什么办法解决吗?

http://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html

【问题讨论】:

  • 这是不可能的。树会自动选择在每个节点上能最大程度降低 gini/entropy 标准的特征。

标签: machine-learning scikit-learn classification decision-tree


【解决方案1】:

这是不可能的。树将通过分析每个特征的方差并选择提供最大收益的拆分来自动选择特征。

此外,如果您自己选择拆分,您的模型将无法高效运行。

【讨论】:

  • 关于“效率”,取决于数据。如果这些是特征之间的一些依赖关系,那么指定特定的顺序可能会有所帮助。
  • @Girishkumar,不,它不依赖于数据。你明白算法的重点是找到最大化分裂效率的分裂吗?在机器学习中,基于启发式的确定性规则的应用会导致比基于统计的规则更糟糕的结果。这就是机器学习先驱者称之为统计学习的原因。
猜你喜欢
  • 2019-07-01
  • 2020-05-13
  • 2014-10-06
  • 2017-11-16
  • 2015-03-05
  • 2017-02-23
  • 2020-04-05
  • 1970-01-01
相关资源
最近更新 更多