文章目录

  • 特征选择
  • 子集搜索与评价

特征选择

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

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

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

为什么需要特征选择?

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

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

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

子集搜索与评价

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

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


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

然而,很容易发现,上述的策略是贪心的,因为它们仅考虑了使本轮选定集最优,例如在第二轮假定选择a5a_5a5​优于a6a_6a6​,于是选定集为{a2,a4,a5}\{a_2,a_4,a_5\}{a2​,a4​,a5​},然而在第四轮却可能是{a2,a4,a6,a8}\{a_2,a_4,a_6,a_8\}{a2​,a4​,a6​,a8​}比所有的{a2,a4,a5,ai}\{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

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

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

One PUNCH Man——特征选择相关推荐

  1. python 特征选择卡方_特征选择

    2020-01-10 皮尔逊相关系数 image.png 衡量线性相关性,检查数据集里目标和数值特征之间皮尔逊相关系数的绝对值.根据这个准则保留前n个特征.def cor_selector(X, y, ...

  2. 机器学习(5)降维 -- 特征选择(低方差过滤与相关系数)与主成分分析(PCA降维)

    目录 一.基础理论 1.降维定义 2.降维对象及目标 二.低方差过滤 1.基础理论 2.API 过程: 1.读取待处理数据集 2.创建低方差过滤转换器(设置过滤阈值) 3.低方差过滤处理 代码 三.相 ...

  3. 【机器学习入门】(12) 特征工程:特征选择、数据降维、PCA

    各位同学好,今天我和大家分享一下python机器学习中的特征选择和数据降维.内容有: (1)过滤选择:(2)数据降维PCA:(3)sklearn实现 那我们开始吧. 一个数据集中可能会有以下问题: ( ...

  4. 特征工程:特征生成,特征选择(三)

    转自:https://blog.csdn.net/cymy001/article/details/79169862 特征生成 特征工程中引入的新特征,需要验证它确实能提高预测得准确度,而不是加入一个无 ...

  5. 一文介绍机器学习中的三种特征选择方法

    作者 | luanhz 来源 | 小数志 导读 机器学习中的一个经典理论是:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限.也正因如此,特征工程在机器学习流程中占有着重要地位.广义的特征 ...

  6. 特征选择的通俗讲解!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 译者:佚名,编辑:Datawhale 简  介 据<福布斯> ...

  7. 数据维度爆炸怎么办?详解5大常用的特征选择方法

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:Edwin Jarvis,cnblog博客整理 在许多机器学习相关 ...

  8. 机器学习中特征选择怎么做?这篇文章告诉你

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 来源 | AI开发者 简  介 据<福布斯>报道,每天大约会有 250 万 ...

  9. GitHub开源项目!一款功能强大的特征选择工具

    点击上方"Datawhale",选择"星标"公众号 第一时间获取价值内容 编辑 | 机器学习算法与Python实践 特征选择(feature selection ...

最新文章

  1. HDU1527(博弈论)
  2. 学习笔记——sklearn监督学习:回归(简单数学知识罗列)
  3. 技术晋升的评定与博弈
  4. java jui 正则表达式_常规正则表达式练习
  5. OpenStack Keystone架构
  6. Oracle 客户端下载
  7. 【五万字深度洞察】毒舌阿朱最看好的企业服务商
  8. 面试自我介绍和简历上的内容能不能相同?
  9. html常见基础标签大汇总
  10. vue子父组件之间的传值
  11. 微信小程序打开位置有偏差的解决方案
  12. 针对双非学生计算机保研信息分享
  13. Qt 设置弹出控制台终端
  14. JavaScript的全局作用域、全局对象window
  15. VPP DPDK,不是翻墙!!
  16. Visul C++中CList用法
  17. 防止ACCESS数据库被下载的一个通用解决方法:
  18. 12种纸飞机的折法 - T爸写给小T的书
  19. java web租车系统_JavaWeb在线租车服务系统项目源码(福利)
  20. 【LeGO-LOAM论文阅读(二)--特征提取(二)】

热门文章

  1. 京训钉怎么快速看完_阿里(钉钉部门)远程面,三面坐上“直通车”,拿下offer没问题...
  2. Java自动生成日历,移除节假日和周六日
  3. C语言排列组合(函数
  4. android 个推封装,Android个推快速集成
  5. 使用Anbox在Jetson Nano 2GB上运行Android应用程序
  6. 苹果手机中计算机功能是什么,如何将苹果11手机中的内容和隐私访问限制功能关闭...
  7. 我一个高考英语94的渣渣是怎么通过四六级的(学习方法技巧)
  8. Typora+gitee+PicGo+坚果云 实现Typora文件的保存完整保存
  9. ad16怎么画弧线_在AD软件中如何实现圆弧走线?
  10. 测试工程师到底需要具备哪些能力?