从随机森林分类器中提取树(预测器)

13

我有一个关于sklearn和随机森林分类器的具体技术问题。

在使用“.fit(X,y)”方法拟合数据后,是否有一种常见的格式可以从估计器对象中提取实际的决策树,以便在python之外实现“.predict(X)”方法?

2个回答

19

谢谢Olivier!这真的很有帮助。 - user3095701
目前还没有(截至0.14.1版本)。这里有一个拉取请求:https://github.com/scikit-learn/scikit-learn/pull/2530 - ogrisel
1
有没有尝试过这个解决方案的示例?我在 Google Colab 上尝试时遇到了错误。 --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-1-131ec55b94e7> in <module>() 19 import numpy as np 20 21 from ..utils.validation import check_is_fitted 22 23 from . import _criterion ValueError: 企图超出顶级包进行相对导入。 - user2458922

0

有这样一个答案,@ogrisel 的回答使我能够实现以下代码段,它可以使用(部分训练的)随机森林来预测值。如果要在数目上交叉验证随机森林模型,则可以节省很多时间:

rf_model = RandomForestRegressor()
rf_model.fit(x, y)

estimators = rf_model.estimators_

def predict(w, i):
    rf_model.estimators_ = estimators[0:i]
    return rf_model.predict(x)

我在这里更详细地解释了:从随机森林中提取树


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接