Python机器学习:使用Matplotlib可视化特征权重
使用Matplotlib可视化特征权重
在机器学习中,理解哪些特征对模型预测影响最大至关重要。一种直观的方法是将特征权重可视化为图表。
以下代码片段演示了如何使用Matplotlib库绘制特征权重图:
import matplotlib.pyplot as plt
import numpy as np
# 假设你已经训练了一个模型,名为 'model'
# 并且 'X' 是你的特征数据框
coef = model.coef_.ravel()
labels = X.columns.values
plt.bar(np.arange(len(labels)), coef)
plt.xticks(np.arange(len(labels)), labels, rotation=90)
plt.xlabel('特征名称')
plt.ylabel('特征权重')
plt.title('特征权重图')
plt.show()
代码解释:
coef = model.coef_.ravel(): 从模型中获取特征权重系数,并将其展平为一维数组,赋值给变量coef。labels = X.columns.values: 获取特征名称,并将其赋值给变量labels。plt.bar(np.arange(len(labels)), coef): 绘制柱状图,横坐标为特征的索引,纵坐标为特征权重系数。plt.xticks(np.arange(len(labels)), labels, rotation=90): 设置横坐标的标签为特征名称,并将其旋转90度以避免重叠。plt.xlabel('特征名称'): 设置x轴标签plt.ylabel('特征权重'): 设置y轴标签plt.title('特征权重图'): 设置图表标题plt.show(): 展示绘制出的图形。
通过观察特征权重图,你可以快速识别哪些特征对模型预测影响最大(权重系数较大),哪些特征影响较小(权重系数接近于零)。
原文地址: https://www.cveoy.top/t/topic/f1xp 著作权归作者所有。请勿转载和采集!