随机森林 回归 可视化
时间: 2023-06-29 12:05:40 浏览: 72
随机森林回归可视化通常采用特征重要性和决策树可视化两种方式。
1. 特征重要性可视化
随机森林模型可以通过特征重要性来评估每个特征对目标值的影响程度。我们可以通过可视化特征重要性来了解哪些特征对模型的预测结果最为重要。
首先,训练一个随机森林回归模型:
```python
from sklearn.ensemble import RandomForestRegressor
# 构建训练集和测试集
X_train, X_test, y_train, y_test = ...
# 训练随机森林回归模型
rf = RandomForestRegressor(n_estimators=100, random_state=42)
rf.fit(X_train, y_train)
```
然后,我们可以获取每个特征的重要性得分:
```python
importances = rf.feature_importances_
```
最后,我们可以将重要性得分可视化:
```python
import matplotlib.pyplot as plt
# 特征重要性可视化
feat_importances = pd.Series(importances, index=X_train.columns)
feat_importances.nlargest(10).plot(kind='barh')
plt.show()
```
2. 决策树可视化
随机森林是由多个决策树组成的,我们可以通过可视化单个决策树来了解模型的决策过程。
首先,我们需要从随机森林中选择一棵决策树:
```python
from sklearn.tree import export_graphviz
import pydotplus
from IPython.display import Image
# 获取第一棵决策树
estimator = rf.estimators_[0]
```
然后,我们可以使用Graphviz将决策树可视化:
```python
# 导出决策树为DOT格式
export_graphviz(estimator, out_file='tree.dot',
feature_names = X_train.columns,
rounded = True, proportion = False,
precision = 2, filled = True)
# 将DOT格式转换为PNG格式
graph = pydotplus.graph_from_dot_file('tree.dot')
Image(graph.create_png())
```
上述代码将会在Jupyter Notebook中显示一张PNG格式的决策树。如果你不在Jupyter Notebook中使用,你可以使用其他的方法来显示PNG图片。