One PUNCH Man——特征选择

特征选择

对于一个学习任务来说,给定属性集,其中有些属性可能很关键,另一些属性则可能没什么用。

我们将属性称为“特征”(feature)。对当前学习任务有用的属性称为“相关特征”(relevant feature)。没什么用的属性称为“无关特征”(irrelevant feature)。
有一类特征称为"冗余特征" (redundant feature) ,它们所包含的信息能从其他特征中推演出来。例如,考虑立方体对象,若已有特征"底面长"“底面宽”,则"底面积"是冗余特征,因为它能从"底面长"与"底固宽"得到。

从给定的特征集合中选择出相关特征子集的过程,称为“特征选择”(feature selection)。但是特征是否有用是相对的,特征选择中所谓的"无关特征"是指与当前任务无关我的特征。

为什么需要特征选择?

  • 维数灾难问题:这是由于属性过多而造成的,与上一节学习的降维又相似的动机。
  • 去除不相关特征往往会降低学习任务的难度。

需注意的是:特征选择过程必须确保不丢失重要特征。除了需要排除“无关特征”,还需要排除“冗余特征”。

下面的内容暂且假定数据中不涉及冗余特征,井且假定初始的特征集合包含了所有的重要信息。

子集搜索与评价

欲从初始的特征集合中选取一个包含了所有重要信息的特征子集,可行的做法是产生一个"候选子集",评价出它的好坏,基于评价结果产生下一个候选子集,再对其进行评价,……这个过程持续进行下去,直至无法找到更好的候选子集为止。

显然,这里涉及两个关键环节:
如何根据评价结果获取下一个候选特征子集?如何评价候选特征子集的好坏?


子集搜索(subset search):
给定特征集合 { a 1 , a 2 , … , a n } \{a_1,a_2,…,a_n\} {a1,a2,,an},我们可将每个特征看作一个候选子集,对这d个候选单特征子集进行评价,假定 { a 2 } \{a_2\} {a2}最优,则将 { a 2 } \{a_2\} {a2}作为第一轮的候选集;然后,在上一轮的选定集中加入一个特征,构成包含两个特征的候选子集,假定在 d − 1 d-1 d1个候选两特征子集中 { a 2 , a 4 } \{a_2,a_4\} {a2,a4}最优,且优于 { a 2 } \{a_2\} {a2},则将 { a 2 , a 4 } \{a_2,a_4\} {a2,a4}作为本轮的候选集;以此类推,假定在第 k + 1 k+1 k+1轮时,最优的候选 ( k + 1 ) (k+1) k+1特征不如上一轮的选定集,则停止生成候选子集,并将上一轮选定的 k k k特征集合作为特征选择结果。

然而,很容易发现,上述的策略是贪心的,因为它们仅考虑了使本轮选定集最优,例如在第二轮假定选择 a 5 a_5 a5优于 a 6 a_6 a6,于是选定集为 { a 2 , a 4 , a 5 } \{a_2,a_4,a_5\} {a2,a4,a5},然而在第四轮却可能是 { a 2 , a 4 , a 6 , a 8 } \{a_2,a_4,a_6,a_8\} {a2,a4,a6,a8}比所有的 { a 2 , a 4 , a 5 , a i } \{a_2,a_4,a_5,a_i\} {a2,a4,a5,ai}都更优。遗憾的是,若不进行穷举搜索,则这样的问题无法避免。


子集评价(subset evaluation):
信息熵。

信息熵计算方法:https://blog.csdn.net/No_Game_No_Life_/article/details/89670583#_36


将特征子集搜索机制与子集评价机制相结合,即可得到特征选择方法,这显然与决策树算法非常相似。事实上,决策树可用于特征选择,树结点的划分属性所组成的集合就是选择出的特征子集。

其他的特征选择方法未必像决策树特征选择这么明显,但它们在本质上都是显式
或隐式地结合了某种(或多种)子集搜索机制和子集评价机制。我们在这里点到即止,有机会再深入了解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值