特征重要性指的是根据输入特征在预测目标变量时的有用程度给它们打分的技术。
计算特征重要性的方法很多,如统计上的相关系数,线性模型的相关系数、决策树和排列重要性分数。
下面从以下几个方面介绍特征重要性:
1 特征重要性概念
2 特征重要性方法
2.1 系数作为特征重要性
2.2 决策树特征重要性
2.3 排列特征重要性
2.4 重要特征选取
1 特征重要性概念
特征重要性指的是为预测建模中的输入特征分配分数的一种技术,即表示每个特征在进行预测时的相对重要性。
在数值预测(回归)和标签预测(分类)中,可以计算特征重要性得分。
重要性得分在预测建模型中,可以使我们更好的理解数据和模型以及减少输入特征数。
特征重要性得分在预测建模中具有重要的作用:
- 提供对数据的洞察。相对得分可以突出哪些特征与目标最相关以及哪些特征与目标最不相关。领域专家可能会对此进行解释,并将其用作收集更多或不同数据的基础。
- 提供对模型的洞察。多数重要性得分是通过预测模型在数据集上的拟合计算得到的。通过对重要性得分检查,可以深入了解特定模型,以及在进行预测时,哪些特征对模型来说是最重要的,哪些是最不重要的。这可以作为模型支持它的模型解释。
- 为降维和特征选择提供依据,从而提高预测模型的效率和有效性。这可以通过重要性得分来选择要删除的特征(最低分)或要保留的特征(最高分)来实现。这是一种特征选择,可以简化用于建模的问题,加快建模过程(删除特征称为降维),在某些情况下,还可以提高模型的性能。
通常,我们希望量化预测因素(特征)和结果之间的关系强度。在筛选时,对预测因素排名(ranking)是很有用的。
特征重要性得分可用于包裹模型(wrapper model),例如SelectFromModel类[1],来执行特征选择。
2 特征重要性方法
首先准备数据:
from sklearn.datasets import make_classification, make_regression# 创建分类数据集,5个有用特征,5个无用特征
X_class,y_class=make_classification(n_samples=1000,n_features=10,n_informative=5,n_redundant=5,random_state=1)
X_reg,y_reg=make_regression(n_samples=1000,n_f