首页 > 编程语言 >Python在Scikit-Learn可视化随机森林中的决策树分析房价数据

Python在Scikit-Learn可视化随机森林中的决策树分析房价数据

时间:2022-11-07 10:05:44浏览次数:40  
标签:Python max Scikit estimators 可视化 随机 Learn 森林 决策树

随机森林是​​决策树​​的集合。在这篇文章中,我将向您展示如何从随机森林中可视化决策树。

从决策树到随机森林:R语言信用卡违约分析信贷数据实例

,时长10:11

 

首先让我们在房价​​数据集​​上训练随机森林模型。

加载数据并训练随机森林。

X = pd.DataFrame(data, columns=feature_names)

让我们将森林中的树数设置为 100:

RandomForestRegressor(n_estimators=100)

决策树存储在 模型​​list​​​ 中的 ​​estimators_​​​ 属性中 ​​rf​​​ 。我们可以检查列表的长度,它应该等于 ​​n_estiamtors​​ 值。


1.  len(estimators_)
2.
3. >>> 100

我们可以从随机森林中绘制第一棵决策树( ​​0​​ 列表中有索引):

plot_tree(rf.estimators_[0])

Python在Scikit-Learn可视化随机森林中的决策树分析房价数据_数据

这棵树太大,无法在一个图中将其​​可视化​​。

让我们检查随机森林中第一棵树的深度:


1.  tree_.max_depth
2.
3. >>> 16

我们的第一棵树有 ​​max_depth=16​​​. 其他树也有类似的深度。为了使可视化具有可读性,最好限制树的深度。让我们再次训练随机森林 ​​max_depth=3​​。

第一个决策树的可视化图:

plot_tree(rf.estimators_[0])

Python在Scikit-Learn可视化随机森林中的决策树分析房价数据_随机森林_02

我们可以可视化第一个决策树:

viz

Python在Scikit-Learn可视化随机森林中的决策树分析房价数据_数据_03

概括

我将向您展示如何可视化随机森林中的单个决策树。可以通过 ​​estimators_​​​ 列表中的整数索引访问树。有时当树太深时,值得用 ​​max_depth​​ 超参数限制树的深度。 


Python在Scikit-Learn可视化随机森林中的决策树分析房价数据_决策树_04

标签:Python,max,Scikit,estimators,可视化,随机,Learn,森林,决策树
From: https://blog.51cto.com/u_14293657/5827846

相关文章