Edit scikit-learn decisionTree



我想编辑sklearn decisionTree,例如,改变条件或切割节点/叶子等

但是似乎没有这样的功能,如果我可以导出到一个文件,编辑它导入。

如何编辑decisionTree?

环境:

  • Windows10
  • python3.3
  • sklearn 0.17.1

即使文档说DecisionTreeClassifiersplitter kwarg是一个字符串,您也可以给它一个类。证据:

https://github.com/scikit-learn/scikit-learn/blob/412996f/sklearn/tree/tree.py L353-L360

看起来你可以在这里找到一个Splitter类的子类:

https://github.com/scikit-learn/scikit-learn/blob/0.17.X/sklearn/tree/_splitter.pyx

和做的事:

my_decision_tree = sklearn.tree.DecisionTreeClassifier(splitter=mySplitter)

如果您正在考虑编辑模型,我认为没有简单的方法可以做到这一点。有关于导出(而不是可视化)规则集的讨论[1],[2],但没有关于导入规则集的讨论。但是,当规则集适合最优解决方案时,手动尝试编辑规则集有什么意义呢?然后,如果您确实知道条件,您可以简单地使用一组嵌套的if-else条件,而根本不使用scikit-learn。

如果您需要更改拆分器的Impl,您可以按照@zemekeneng的建议执行

相关内容

  • 没有找到相关文章

最新更新