数据挖掘:特征工程——特征提取与选择

数据挖掘:特征工程——特征提取与选择
特征的处理和构建已经在上一篇特征处理和构建文章中有所总结 。接来下对特征提取和选择进行说明 。
注:特征提取的范围很大,一般理解的话,它提取的对象是原始数据,目的就是自动地构建新的特征,将原始数据转换为一组具有明显物理意义(比如几何特征、纹理特征)或者统计意义的特征 。
一般常用的方法包括降维(PCA、ICA、LDA等)、图像方面的SIFT、Gabor、HOG等、文本方面的词袋模型、词嵌入模型等,这里简单介绍这几种方法的一些基本概念 。
而本文章仅对结构性数据进行说明,因此,特征提取=特征降维 。
一、什么是特征降维与特征选择?
一般经过特征处理和生成后,会产生大量的特征,而这些特征中有的特征是很重要的,但不是每一项特征都对模型有用,因此,要将这类没用的特征剔除掉 。所以,特征提取(降维)与特征选择的主要目的就是为了剔除无用的特征 。
之前一直有个疑惑,既然特征降维与特征选择都是为了剔除特征,那这两者之间有什么区别和联系?
二、特征降维与选择的区别和联系
特征提取与特征选择都是为了从原始特征中找出最有效的特征 。
降维:本质上是从一个维度空间映射到另一个维度空间,特征的多少别没有减少,当然在映射的过程中特征值也会相应的变化 。特征的多少并没有减少,只是换了个维度进行表示 。强调通过特征转换的方式得到一组具有明显物理或统计意义的特征 。
举例:现在的特征是1000维,我们想要把它降到500维 。降维的过程就是找个一个从1000维映射到500维的映射关系 。原始数据中的1000个特征,每一个都对应着降维后的500维空间中的一个值 。假设原始特征中有个特征的值是9,那么降维后对应的值可能是3 。
特征选择:就是单纯地从提取到的所有特征中选择部分特征作为训练集特征,特征在选择前和选择后不改变值,但是选择后的特征维数肯定比选择前小,毕竟我们只选择了其中的一部分特征 。特征的多少发生了改变,选取最有利于模型的特征 。是从特征集合中挑选一组具有明显物理或统计意义的特征子集 。
举例:现在的特征是1000维,现在我们要从这1000个特征中选择500个,那个这500个特征的值就跟对应的原始特征中那500个特征值是完全一样的 。对于另个500个没有被选择到的特征就直接抛弃了 。假设原始特征中有个特征的值是9,那么特征选择选到这个特征后它的值还是9,并没有改变 。
总结:两者都能帮助减少特征的维度、数据冗余,特征提取有时能发现更有意义的特征属性,特征选择的过程经常能表示出每个特征的重要性对于模型构建的重要性 。可以先进行特征的提取,再从中选择更有效的特征 。
特征降维
降维,降低数据特征的维度 。
机器学习之降维方法总结
举两个例子来说明降维的作用:
示例一:假如现在我们只有两个,为了了解这两者之间的关系,可以使用散点图将它们两者的关系画出:
那如果我们有时,如果我们要看每个变量之间的关系,那需要100(100-1)/2 = 5000个图,而且把它们分开来看也没什么意义?
示例二:假如我们现在有两个意义相似的——Kg (X1) and Pound (X2),如果两个变量都使用会存在共线性,所以在这种情况下只使用一个变量就行 。可以将二维数据降维一维 。
降维——机器学习笔记——降维(特征提取)
特征降维与选择的区别和联系
要找到k个新的维度的集合,这些维度是原来k个维度的组合,这个方法可以是监督的,也可以是非监督的,(PCA-非监督的,LDA(线性判别分析)-监督的),这两个都是线性投影来进行降为的方法 。另外,因子分析,和多维标定(MDS)也是非监督的线性降为方法 。