2023.10.21学习-特征选择

本文介绍了特征选择在数据预处理中的重要性,特别是针对维度灾难和特征相关问题。讲述了三种主要方法:过滤式(如Relief)、包裹式(Wrapper)和嵌入式(如L1正则化),以及它们的优缺点和应用实例。
摘要由CSDN通过智能技术生成

2023.10.21学习-特征选择

特征选择(Feature Selection):从给定的特征集合中选择出相关特征子集,是数据预处理(Data Preprocessing)的一部分。

为什么要进行特征选择:

(1)维度灾难:特征维度太大,训练过程漫长或无法进行

(2)特征之间存在相互关联关系,可能会导致解的空间不稳定,致使模型的泛化能力弱

特征选择的目标:降低特征数量,去除无关特征(Irrelevant Feature),保留对学习有用的相关特征(Relevant Feature)。

步骤:

①子集搜索(Subset Search):包括前向搜索、后向搜索、双向搜索,都属于贪心算法,只能找到局部最优,无法穷举搜索而找到全局最优。不过全局最优也不一定泛化能力最好,因为有可能会过拟合。

②子集评价(Subset Evaluation):信息增益越大,包含有助于分类的信息越多

信息增益:
G a i n ( A ) = E n t ( D ) − ∑ v = 1 V ∣ D v ∣ ∣ D ∣ E n t ( D v ) Gain(A)=Ent(D)-\sum\limits^V\limits_{v=1}\frac {|D^v|} {|D|}Ent(D^v) Gain(A)=Ent(D)v=1VDDvEnt(Dv)
(A表示特征选择中的子集,根据该子集的属性取值决定将数据集D划分为V类(比如对于特征集合{a1, a2, … ad},子集选定为{a2},若a2的属性为{青绿、乌黑、浅白},则意味着该子集将D划分为了3类),Dv/D即表示第v类数据在D中的占比)

信息熵:
E n t ( D ) = − ∑ i = 1 ∣ γ ∣ p k l o g 2 p k Ent(D)=-\sum\limits^{|\gamma|}\limits_{i=1}p_klog_2p_k Ent(D)=i=1γpklog2pk
(γ表示在数据集D中共有几类样本,比如在鸢尾花数据集中便是3类样本)

将不同的子集搜索机制与子集评价机制结合起来,形成了以下常见的三种特征选择方法:

(1)过滤式选择(Filter):选择的特征和分类结果无关。

典型代表:Relief(Relevant Features),通过“相关统计量”来度量特征的重要性。

相关统计量:
δ j = ∑ i − d i f f ( x i j , x i , n h j ) 2 + d i f f ( x i j , x i , n m j ) 2 \delta^j = \sum \limits_i-diff(x_i^j,x_{i, nh}^j)^2+diff(x_i^j,x_{i, nm}^j)^2 δj=idiff(xij,xi,nhj)2+diff(xij,xi,nmj)2
解释:上标 j 统一表示在某一个属性 j 上,下标 i 表示第几个样本;diff(xa, xb)为某种距离的量测,对于离散量,若xa = xb,则diff(xa, xb) = 0,否则为1,对于连续量,则diff(xa, xb) = |xa - xb|(已归一化);xnh即near-hit猜中近邻,xnm即near-miss猜错近邻。

相关统计量反映了特征 j 对最终分类效果的影响,从几何的角度来思考,即所选样本 xi 的类别与猜中近邻越靠近(δj 越大),其属性 j 是有益的,那么就要增大属性 j 的统计量分量;基于不同样本得到的估计结果进行平均,就得到了属性 j 的最终统计量分量,分量值越大,说明该属性的分类能力越强(分量值大说明不同类别的数据分的很开,混杂在一起的少)。

Relief处理的是二分类问题的特征选择,数据只有0/1两类;若要处理多分类问题的特征选择,可以使用其扩展变体Relief-F,其相关统计量:
δ j = ∑ i − d i f f ( x i j , x i , n h j ) 2 + ∑ l ≠ k ( p l × d i f f ( x i j , x i , l , n m j ) 2 ) \delta^j = \sum \limits_i-diff(x_i^j,x_{i, nh}^j)^2+\sum\limits_{l\neq k}(p_l×diff(x_i^j,x_{i, l,nm}^j)^2) δj=idiff(xij,xi,nhj)2+l=k(pl×diff(xij,xi,l,nmj)2)
解释:对于第k类数据,选定样本xi,先在第k类样本中找到其猜中近邻xnh,再在除了第k类样本之外的其他种类样本找到猜错近邻xl,nm;pl 为第l类样本在数据集D中所占的比例。

缺点:不考虑所选择的特征是否适用于后续的学习器。

(2)包裹式选择(Wrapper):选择和模型评价(学习器的性能)有关,让所选择的数据集的特征尽可能最适合模型的特点。

子集搜索:随机搜索(蒙特卡洛算法或拉斯维加斯算法)。

子集评价:使用交叉验证法估计学习器使用该数据子集 A‘ 时的误差,若比当前特征子集 A*上的误差更小,或误差相当但A’中包含的特征数更少,则将 A‘ 保留下来(A* = A’);接着进行随机搜索和交叉验证,最后到预设的停止条件为止

缺点:计算开销较大,每次特征子集评价都需要训练学习器。

(3)嵌入式选择(Embedding):在模型训练时选择特征,及特征选择过程与学习器训练过程在同一个优化过程中完成,在学习器训练过程中自动地进行了特征选择。

假定选择线性回归模型,损失函数为平方误差,即优化目标:
m i n w ∑ i = 1 m ( y i − w T x i ) 2 \mathop{min}_w \sum \limits^m\limits_{i= 1}(y_i-w^Tx_i)^2 minwi=1m(yiwTxi)2
为了防止过拟合,常常引入正则化项:

L2范数正则化(岭回归):
m i n w ∑ i = 1 m ( y i − w T x i ) 2 + λ ∣ ∣ w ∣ ∣ 2 2 \mathop{min}_w \sum \limits^m\limits_{i= 1}(y_i-w^Tx_i)^2+\lambda||w||^2_2 minwi=1m(yiwTxi)2+λ∣∣w22
L1范数正则化(LASSO回归):
m i n w ∑ i = 1 m ( y i − w T x i ) 2 + λ ∣ ∣ w ∣ ∣ 1 \mathop{min}_w \sum \limits^m\limits_{i= 1}(y_i-w^Tx_i)^2+\lambda||w||_1 minwi=1m(yiwTxi)2+λ∣∣w1
当使用L1范数的时候,会更易于获得稀疏解,即求得的w的非零分量较少。

求得了稀疏解,就意味着原本有d个特征,最终只有对应w的非零分量的特征出现在最终模型,所以,基于L1范数正则化的学习就是一种嵌入式特征选择,将特征选择与学习器训练融合在一起完成。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值