特征选择学习笔记
1.定义
特征选择( Feature Selection )也称特征子集选择( Feature Subset Selection , FSS ),或属性选择( Attribute Selection )。是指从已有的M个特征(Feature)中选择N个特征使得系统的特定指标最优化,是从原始特征中选择出一些最有效特征以降低数据集维度的过程,是提高学习算法性能的一个重要手段,也是模式识别中关键的数据预处理步骤。对于一个学习算法来说,好的学习样本是训练模型的关键。反正就是选择最大程度上能够代替总体的最少指标(属性)。
(这个地方我还是有个疑问的。emmmm。。。特征选择和主成分分析和因子分析的区别是啥?回头写个专门的剖析)
2.四个要素
特征选择可以看作一个搜索寻优问题。对大小为n 的特征集合, 搜索空间由2n-1 种可能的状态构成。Davies 等证明最小特征子集的搜索是一个NP 问题,即除了穷举式搜索,不能保证找到最优解。但实际应用中,当特征数目较多的时候, 穷举式搜索因为计算量太大而无法应用,因此人们致力于用启发式搜索算法寻找次优解。一般特征选择算法必须确定以下4 个要素:1)搜索起点和方向;2)搜索策略;3)特征评估函数;4)停止准则
2.1搜索起点和方向
搜索起点是算法开始搜索的状态点,搜索方向是指评价的特征子集产生的次序。搜索的起点和搜索方向是相关的,它们共同决定搜索策略。一般的,根据不同的搜索起点和方向,有以下4 种情况:
1)前向搜索搜索起点是空集S,依据某种评价标准,随着搜索的进行,从未被包含在S 里的特征集中选择最佳的特征不断加入S。(**往里面加,由多到少)-
###2.2搜索策略
假设原始特征集中有n 个特征(也称输入变量/属性),那么存在2n-1 个可能的非空特征子集。搜索策略就是为了从包含 2n-1 个候选解的搜索空间中寻找最优特征子集而采取的搜索方法。搜索策略可大致分为以下3 类:
-
###2.3特征评估函数(评价函数)
评价标准在特征选择过程中扮演着重要的角色,它是特征选择的依据。评价标准可以分为两种:一种是用于单独地衡量"每个特征的预测能力"的评价标准;另一种是用于评价某个特征子集"整体预测性能"的评价标准。
在Filter方法中,一般不依赖具体的学习算法来评价特征子集,而是借鉴统计学、信息论等多门学科的思想,根据数据集的内在特性来评价每个特征的预测能力,从而找出排序较优的若干个特征组成特征子集。通常,此类方法认为最优特征子集是由若干个预测能力较强的特征组成的。相反,在Wrapper 方法中,用后续的学习算法嵌入到特征选择过程中,通过测试特征子集在此算法上的预测性能来决定它的优劣,而极少关注特征子集中每个特征的预测性能如何。因此,第二种评价标准并不要求最优特征子集中的每个特征都是优秀的。
介绍下常用的三个方法
![](https://img2018.cnblogs.com/blog/1365906/201910/1365906-20191019135830336-656462005.png)
特征选择方法依据是否独立于后续的学习算法, 可分为过滤式(Filter) 和封装式(Wrapper)两种.Filter 与后续学习算法无关, 一般直接利用所有训练数据的统计性能评估特征, 速度快, 但评估与后续学习算法的性能偏差较大. Wrapper 利用后续学习算法的训练准确率评估特征子集, 偏差小, 计算量大, 不适合大数据集.
2.3.1过滤式(Filter) 评价策略的特征选择方法
Filter 特征选择方法一般使用评价准则来增强特征与类的相关性, 削减特征之间的相关性. 可将评价函数分成4 类: 距离度量、信息度量、依赖性度量以及一致性度量.
2.3.2、封装式(Wrapper) 评价策略的特征选择方法
除了上述4 种准则, 分类错误率也是一种衡量所选特征子集优劣的度量标准. Wrapper 模型将特征选择算法作为学习算法的一个组成部分, 并且直接使用分类性能作为特征重要性程度的评价标准. 它的依据是选择子集最终被用于构造分类模型. 因此, 若在构造分类模型时, 直接采用那些能取得较高分类性能的特征即可, 从而获得一个分类性能较高的分类模型. 该方法在速度上要比Filter 方法慢, 但是它所选择的优化特征子集的规模相对要小得多, 非常有利于关键特征的辨识; 同时它的准确率比较高, 但泛化能力比较差, 时间复杂度较高. 目前此类方法是特征选择研究领域的热点, 相关文献也很多.
R1:Hsu 等人用决策树来进行特征选择, 采用遗传算法来寻找使得决策树分类错误率最小的一组特征子集.
R2:Chiang等人将Fisher 判别分析与遗传算法相结合, 用来在化工故障过程中辨识关键变量, 取得了不错的效果.
R3:Guyon 等人使用支持向量机的分类性能衡量特征的重要性程度, 并最终构造一个分类性能较高的分类器.
R4:Krzysztof提出了一种基于相互关系的双重策略的Wrapper 特征选择方法.
R5:叶吉祥等人提出了一种快速的Wrapper 特征选择方法FFSR(fast featuresubset ranking), 以特征子集作为评价单位, 以子集收敛能力作为评价标准.
R6:戴平等人利用SVM线性核与多项式核函数的特性, 结合二进制PSO 方法, 提出了一种基于SVM的快速特征选择方法.
......
综上所述, Filter 和Wrapper 特征选择方法各有优缺点. 将启发式搜索策略和分类器性能评价准则相结合来评价所选的特征, 相对于使用随机搜索策略的方法, 节约了不少时间. Filter 和Wrapper 是两种互补的模式, 两者可以结合. 混合特征选择过程一般由两个阶段组成, 首先使用Filter 方法初步剔除大部分无关或噪声特征, 只保留少量特征, 从而有效地减小后续搜索过程的规模. 第2 阶段将剩余的特征连同样本数据作为输入参数传递给Wrapper 选择方法,以进一步优化选择重要的特征. 例如,有学者采用混合模型选择特征子集, 先使用互信息度量标准和bootstrap 技术获取前k个重要的特征, 然后再使用支持向量机构造分类器
3停止准则
停止标准决定什么时候停止搜索, 即结束算法的执行。它与评价准则或搜索算法的选择以及具体应用需求均有关联。常见的停止准则一般有:
先简单的说就是:达到规定时间;达到迭代测试;达到规定的阈值/精度
从特征选择的基本框架可以看出, 特征选择方法中有4 个基本步骤: 候选特征子集的生成(搜索策略)、评价准则、停止准则和验证方法. 目前对特征选择方法的研究主要集中于搜索策略和评价准则, 因而, 一般从搜索策略和评价准则两个角度对特征选择方法进行分类.
Reference
- 刘家锋,赵巍,朱海龙,金野编著;唐降龙主审 .《模式识别》.哈尔滨:哈尔滨工业大学出版社, 2014
- 计智伟,胡珉,尹建新,特征选择算法综述,《电子设计工程》, 2011, 19(9):46-51
- 姚旭,王晓丹,张玉玺,权文,特征选择方法综述,《控制与决策》, 2012, 27(2):161-166
- 卜华龙,夏静,韩俊波,特征选择算法综述及进展研究,《巢湖学院学报》, 2008, 10(6):41-44