/ AI

特征选择

概述

要使用特征选择技术的关键假设是:训练数据包含许多冗余无关的特征,因而移除这些特征并不会导致丢失信息。冗余无关特征是两个不同的概念。如果一个特征本身有用,但如果这个特征与另一个有用特征强相关,且那个特征也出现在数据中,那么这个特征可能就变得多余。
特征选择技术与特征提取有所不同。特征提取是从原有特征的功能中创造新的特征,而特征选择则只返回原有特征中的子集。 特征选择技术的常常用于许多特征但样本(即数据点)相对较少的领域。特征选择应用的典型用例包括:解析书面文本和微阵列数据,这些场景下特征成千上万,但样本只有几十到几百个。
数据和特征决定了机器学习的上限,而模型和算法是在逼近这个上限。简言之,好的数据和特征是所有模型和算法发挥到极致的前提。

为什么要特征选择?

不同的特征对模型的准确度的影响不同,有些特征与要解决的问题不相关,有些特征是冗余信息,这些特征都应该被移除掉。对于当前学习任务有用的属性称为相关特征(relevant feature),对于当前学习任务无用的属性称为无关特征(irrelevant feature)
特征选择是自动地选择出对于问题最重要的那些特征子集的过程。进行特征选择有两个重要原因:
首先维数灾难问题就是由于属性过多造成的。若挑选出重要特征,使得后续学习过程仅仅需要在这一小部分特征上构建模型,则维数灾难问题会大大减轻。其次去除不相关特征通常会降低学习任务的难度。
特征选择必须确保不丢失重要信息,若重要信息缺失则学习效果会大打折扣。通常来说,从两个方面考虑来选择特征:

  1. 特征是否发散:如果一个特征不发散,例如方差接近于0,也就是说样本在这个特征上基本上没有差异,这个特征对于样本的区分并没有什么用。
  2. 特征与目标的相关性:这点比较显见,与目标相关性高的特征,应当优选选择。除方差法外,本文介绍的其他方法均从相关性考虑。

常见的特征选择方法大致分为三类:

  1. 过滤式(filter)
    1. 方差法
    2. 相关系数 协方差与相关系数
    3. 卡方检验
    4. 显著性检验
    5. 基尼系数
    6. 信息增益
  2. 包裹式(wrapper)
  3. 嵌入式(embedding)。

Reference

  1. 特征选择 Wiki
  2. https://www.jianshu.com/p/de2dbed7682b