基于 WEKA 的数据挖掘算法学习(七)
1. 特征选择
1.1 子集搜索与评价
给定属性集,我们将属性称为“特征”,“相关属性”:对当前学习任务有用的属性,“无关属
性”:对当前学习任务没什么用的属性。从给定的特征集合中选择相关特征子集的过程,称为
“特征选择”。
特征选择是一个重要的数据预处理过程,在现实机器学习任务中,获得数据之后通常进
行特征选择,然后再训练学习器。原因:1、解决维数灾难问题;2、留下关键因素,数据
真相更加明确。但需要保证特征选择过程必须确保不丢失重要特征,否则后续学习过程会因
为重要信息缺失而无法获得好的性能。
两个关键的环节:
1、“子集搜索”:给定特征集合,将每个特征看作一个候选子集,对候选单特征子集进行
评价。直到第 k+1 轮时,最优的候选(k+1)特征子集不如上一轮的选定集。这称为“前向搜
索”,还可以使用“后向搜索”和“双向搜索”。
2、“子集评价”:对属性子集 A,假定根据其取值将数据集 D 分成了 V 个子集,每个子集
中的样本在 A 上取值相同,于是计算到属性子集 A 的信息增益:
其中信息熵定义为:
。信息增益越大,意味着特征子集 A 包含的
有助于分类信息越多。
将特征子集搜索机制与子集评价机制相结合即可得到特征选择方法,大致分为三类:过
滤式(filter)、包裹式(wrapper)、嵌入式(embedding)。
1.2 过滤式选择
先对数据集进行特征选择,然后训练学习器,特征选择过程与后续学习器无关。先用特
征选择过程对初始特征进行“过滤”,再用过滤后的特征来训练模型。
Relif 方法是著名的过滤式特征选择方法,设计了“相关统计量”来度量特征的重要性。该
统计量是一个向量,其每个分量分别对应一个初始特征,而特征的重要性由子集中每个特征
所对应的相关统计量分量之和来决定。可以指定阈值,也可以指定预选取的的特征个数 K。
Relief 的关键是确定相关统计量,通常使用猜中近邻和猜错近邻的结合。对基于不同样本得
到的估计结果进行平均,就得到各属性的相关统计量的分量,分量值越大,则对应属性的分
类能力就越强。时间开销随采样次数以及原始特征数线性增长,因此是一种运行效率很高的
过滤式特征选择算法。
评论0