重新拟合决策树以添加图层

时间:2018-03-16 10:44:08

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

我想知道是否有办法重新使用现有的DecisionTreeClassifier来添加另一层。

我的方案如下:

  • 我有一些数据(数据数组 X ,相应的标签 y )用于分类
  • 我在我的(X,y)数据上使用max_depth=1训练 DecisionTreeClassifier
  • 虽然我对分类器不满意:
    • 使用相同的数据重复使用相同的分类器,在树的底部添加叶子,因此将深度增加1(重要的是我保持相同的树,我只是添加一层叶子在最后,我没有用max_depth=n+1
    • 重新培训一个新的DecisionTree

有没有办法用scikit-learn做到这一点?或者使用其他分类器,如神经网络,你可以训练你的神经网络,比如10个时代,然后如果它不够准确,用另外10个时期重新训练它,依此类推?

1 个答案:

答案 0 :(得分:0)

简答:

,你可以

答案很长:

DecisionTreeClassifier 并不打算再次安装。 正如您在第350行的源代码tree.py中所看到的,内部树是使用从TreeBuilder继承的某个类构建的。该类来自cpython文件_tree.py。您仍然可以尝试通过复制/粘贴其代码块来调整此类...我不推荐它,因为它是颈部疼痛并且根本不可能工作。

希望您能找到(或找到)另一种解决方案并与我们分享:)