我已经使用Random Forest Regressor解决了回归问题,现在我想绘制回归线,根据this的回答,我正在尝试这样做。
w = model1.coef_[0]
a = -w[0] / w[1]
xx = np.linspace(-5, 5)
yy = a * xx - (model1.intercept_[0]) / w[1]
plt.plot(xx, yy, 'k-')
其中model1为sklearn.ensemble.RandomForestRegressor
的地方已经适合数据集。有哪些替代方案。
错误消息是
AttributeError: 'RandomForestRegressor' object has no attribute 'coef_'
答案 0 :(得分:1)
当模型适合超平面时,您将拥有coef_
和intercept_
。线性回归就是这样一种模型,它沿着火车数据拟合超平面,从而使偏差/误差最小。这些coef_
和intercept_
代表超平面。
但是,像随机森林这样的模型并不适合超平面,而是根据最终导致预测的输入来识别一组决策。您可以将它们视为一组嵌套的条件(如果有其他条件)。因此,如果您的模型是基于随机森林的,则没有coef_
和intercept_
的概念,但您宁愿做的就是打印决策树。