一.特征选择-单变量特征选择
1.SelectKBest可以依据相关性对特征进行选择,保留k个评分最高的特征。
方差分析
分类问题使用f_classif,回归问题使用f_regression。
f_classif:分类任务
跟目标的分类,将样本划分成n个子集,S1,S2,..,Sn,我们希望每个子集的均值μ1,μ2,...,μn不相等。
我们假设H0:μ1=μ2=...=μn,当然我们希望拒绝H0,所以我们希望构造出来f最大越好。所以我们可以通过第i个特征xi对分类进行预测。f值越大,预测值越好。
f_regression:回归任务
引用参考:https://blog.youkuaiyun.com/jetFlow/article/details/78884619
要计算f_regression中的ff值,我们首先要计算的是,这个就是i号特征和因变量y之间的样本相关系数。
我们计算的 ,才是f_regression中的ff值,服从F(1,n−2)F(1,n−2)分布。
ff值越大,i号特征和因变量y之间的相关性就越大,据此我们做特征选择。
from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import f_classif
from sklearn.datasets import load_iris
# 特征选择
data = load_iris()
slectKBest = SelectKBest(f_classif,k=2)
dataK = slectKBest.fit_transform(data.data,data.target)
2.基于学习模型的特征排序
针对每个单独的特征和响应变量建立预测模型。其实Pearson相关系数等价于线性回归里的标准化回归系数。假如某个特征和响应变量之间的关系是非线性的,可以用基于树的方法

最低0.47元/天 解锁文章
5万+

被折叠的 条评论
为什么被折叠?



