可视化随机森林的特征重要性

会有一股神秘感。 提交于 2019-12-23 04:13:37

可视化随机森林的特征重要性

# 查看随机森林的特征重要性
import numpy as np
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier
from sklearn import datasets
​
iris = datasets.load_iris()
features = iris.data
target = iris.target
# 创建分类器对象
randomforest = RandomForestClassifier(random_state=0)
# 训练模型
model = randomforest.fit(features, target)
# 计算特征重要性
importances = model.feature_importances_
print("model.feature_importances_: {}".format(importances))# print(importances)
# 对特征重要性进行排序
indices = np.argsort(importances)[::-1]
print(indices)
# 获取特征名字
names = [iris.feature_names[i] for i in indices]
# 创建图
plt.figure()
plt.title("feature importance")
# features.shape[1]  数组的长度
plt.bar(range(features.shape[1]), importances[indices])
plt.xticks(range(features.shape[1]), names, rotation=90)
plt.show()
model.feature_importances_: [0.09090795 0.02453104 0.46044474 0.42411627]
[2 3 0 1]

在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!