一种基于PCA和ReliefF的特征选择方法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
式中, X = TP , X 为 X 的残差; T 为主元矩阵; P k为负荷矩阵。 这样, 以前k 个特征向量构成的 PCA 子空间就能够提取 X 的绝大部分特征信息, 因而实现了 Rn ® Rk 的线性变换, 达到了 特征提取和降低变量维数的目的。采用 PCA 方法, 为了消除 不同变量量纲和变化幅度不同带来的影响, 原始数据都应该 做标准化处理。
蒋玉娇, 王晓丹, 王文军, 等: 一种基于 PCA 和 ReliefF 的特征选择方法
n为输入变量个数。定义 X 的协方 化, 其中m为测量数据长度, 差矩阵为: T Cov( X ) = X X (1) m-1 对该矩阵进行正交分解, 得: T Cov( X ) = P n·D·P n (2) D = diag( λ1 λ 2 λ n)是协方差矩阵中 λ( 式中, ) 按 i i = 1,2, , n
(No.2007F19) 。
如果采用遗传算法的 wrapper 式结构, 运行效率较低[6]。 [7-8] Relief 系列算法 (包括最早提出的 Relief 以及后来拓展 的 Relief 和 ReliefF, ReliefF 可以解决多类问题及回归问题, 并 补充了对数据缺失的情况的处理办法; ReliefF 算法是针对目 标属性为连续值的回归问题提出的) 是公认的效果较好的 filter 式特征评估算法 [9]。但 Relief 算法的缺点是不能去除冗余 特征, 算法会赋予所有和类别相关性高的特征较高的权值, 而 不管该特征是否和其余特征冗余。针对这一问题, 首先利用 主成分分析 (Principle Component Analysis, PCA) 去除特征间 存在的相关性, 然后利用 ReliefF 算法进行特征选择, 结合两种 算法各自的优点, 从而给出一种基于 PCA 和 ReliefF 相结合的 特征选择方法, 最后以支持向量机 (Support Vector Machine, [10] SVM) 作为分类器, 在 UCI 数据集上对算法进行了实验。
1
主成分分析
设过程输入数据矩阵 X Î Rm ´ n已经按列零均值化或标准
基金项目: 国家自然科学基金 (the National Natural Science Foundation of China under Grant No.60975026) ; 陕西省自然科学研究计划项目 作者简介: 蒋玉娇 (1985-) , 女, 硕士研究生, 研究方向: 智能信息处理; 王晓丹 (1966-) , 女, 教授, 博士生导师, 主要从事智能信息处理、 模式识别等 研究; 王文军, 男, 工程师, 硕士; 毕凯, 男, 硕士研究生。 收稿日期: 2010-04-09 修回日期: 2010-07-09
2010, 46 (26)
171
的类别; 步骤 5 更新每一个特征a的权值W (a), 权值更新公式为:
W (a) = W (a) - 1 å d (a X P j) + mk j = 1
k p(c) 1 [ d (a X M j (c))] å å mk c ¹ c( X ) 1 - p(c( X )) j = 1 k
k n
步骤 6 重复执行步骤 3~步骤 5 过程m次, 然后输出特征的 权值W ; 步骤 7 求出每个样本的各个特征与类的相关性权值W 后, 将其依照降序排序。 输出: 输出权值最大的前d 个特征构成最后的特征子集。 d (a X Y )表示样本 X 和样本Y 关于特征 a 的距离; 其中,
p(c)表示第c类目标的概率, 一种简单的计算方法是用该类目
1.空军工程大学 导弹学院 计算机工程系, 陕西 三原 713800 2.第四军医大学 教育技术中心, 西安 710032 1.Department of Computer Engineering, Missile Institute, Air Force Engineering University, Sanyuan, Shaanxi 713800, China cation and Technology Center, The Fourth Military Medical University, Xi’ an 710032, China JIANG Yu-jiao, WANG Xiao-dan, WANG Wen-jun, et al.New feature selection approach by PCA and puter Engineering and Applications, 2010, 46 (26) : 170-172. Abstract: How to decrease the time of training and testing the samples, and improve the classification accuracy are important aspects of the feature selection research.A new feature selection approach by PCA and ReliefF is presented in this paper. The algorithm can take out the most representative features which constitute the effective feature sets from the original features, thus the dimensions of the features are decreased.Moreover the algorithm is proven to be more advantageous than the approach of PCA-GA in its simplicity and speed.Experiments on a UCI dataset show that the method in this paper provides a new research approach for information feature compression in pattern recognition. Key words:feature selection; principle component analysis; support vector machine 摘 要: 如何减少样本的训练测试时间、 提高分类精度是有效特征选择方法研究的重要方面。提出了一种结合 PCA 和 ReliefF 的
, 则k 确定。当主元确定后, 即可得主元模型: Q > 85%)
T = XP 而原来的测量矩阵可以重构为: X= X + X
^ T k ^ ^ ~
(3) (4)
标样本数除以样本总数, 即 p(c) = N c
当各类目标样本 å Nc, c=1
C
数大致相同时, p(c) = 1/C ; M j (c)表示第c类目标的第 j个样本; m 和k 可根据样本数量以及样本维数进行设定。 在 PCA-ReliefF 算法中, 首先利用 PCA 实现将高维数据 (n 维) 向低维子空间 (s维) 映射降维, 然后根据 ReliefF 算法思想 对样本各个特征赋予相应的权值, 最后根据特征 (或属性) 权 值越高该特征越有利于分类的性质, 选择特征权值最高的d 个 属性构成最后的特征子集。
2 结合 PCA 和 ReliefF 的特征选择方法
Relief 算法为一系列算法, 最早由 Kira 提出, 当时局限于 解决两类问题的分类问题[7]。Relief 系列算法的要点是根据特 征对近距离样本的区分能力来评估特征, 其主要思想是: 好的 特征应该使同类样本接近, 而使不同类的样本远离。Relief 系 列算法运行效率高, 对数据类型没有要求, 对特征间的关系不 敏感 (相对很多特征评估方法的特征间独立的假设) 。ReliefF 算法是一种改进的 Relief 算法[8], 是目前最为有效的 filter 式特 征选择方法之一。 PCA 通过变换的方法, 可把给定的一组相关变量通过线 性变换转换成另一组不相关的变量, 因此常被用来对特征空 间进行降维。针对 ReliefF 算法本身不能取出冗余特征的弱 点, 结合 PCA, 提出一种结合 PCA 和 ReliefF 的特征选择方法 ——PCA-ReliefF 算法, 首先通过 PCA 对特征之间进行去相 关, 然后再运行 ReliefF 进行特征选择。 假设给定两类分类问题, 训练样本集为 D ={( x1 y1)( x 2 y 2) 其中 xi Î Rn , 则基于 ,( x n y n)}, yi 为 xi 的类标签, yi Î{- 1 1}, PCA-ReliefF 的特征选择算法详细描述如下所示: 基于 PCA-ReliefF 的特征选择算法 输入: 训练数据集 D, 迭代次数m, 最近邻样本个数k , 阈值 d s > d。 (目标维数) , 阈值s (PCA 后保留的选择特征的个数) , 步骤 1 对训练数据集 D进行 PCA 降维处理, 选取s个主成 分, 记降维后的数据集为 D′; 步 骤 2 置 D′ 中 所 有 样 本 的 各 个 特 征 的 权 值 为 0, 即 W (i) = 0 i = 1 2 s; 步骤 3 从 D′中随机选择一个样本 X ; 步骤 4 从 D′中找出与 X 同类的k 个近邻 P j ( j = 1 2 k ); 从 其 余 各 类 中 找 出 X 的 k 个 近 邻 M j (c) , 其 中 c = 1 2 C ,
170
2010, 46 (26)
Computer Engineering and Applications 计算机工程与应用
一种基于 PCA 和 ReliefF 的特征选择方法
蒋玉娇 1, 王晓丹 1, 王文军 2, 毕 凯1 1 JIANG Yu-jiao , WANG Xiao-dan1, WANG Wen-jun2, BI Kai1
特征选择是指从原始特征集中选择使某种评估标准最优 的特征子集。通过特征选择, 一些和任务无关或者冗余的特 征被删除, 简化的数据集常常会得到更精确地模型, 也更容易 理解[1]。特征选择是机器学习、 模式识别等相关领域的一个热 点问题。 国内外许多学者对此进行了研究, 并提出了一系列算法[1-3]。 特征选择方法根据是否以分类精度作为评价函数主要分为两 [4] 大类: 过滤方法 (filter) 和封装方法 (wrapper) 。由于过滤方法 不以分类精度作为评价函数, 时间效率较高, 而封装方法将分 类精度的评价嵌套在特征选择的每一次循环迭代过程中, 比 较费时。 遗传算法是一种进化学习方法, 通过迭代搜索技术来实 现。它对问题依赖性小, 搜索能力强, 适合大规模复杂问题的 优化。利用遗传算法对样本空间进行特征选择, 能产生使分 类正确率较高的特征组合。但据 Jain[5]实验, 遗传算法容易过 早收敛, 需要就此采取措施, 而且当应用于大规模数据集时,
照 降 序 排 列( 即 λ1 ³ λ 2 ³ ³ λ n )构 成 的 对 角 矩 阵 。
P n = [ p1 p 2 p n]是与特征值对应的特征矩阵。前k 个主元所
概括的原测量变量的信息大小可由前k 个主元的方差贡献率
λi å λ j来表示。若前k 个主元贡献率大于某数Q (通常选取 å i=1 j=i
特征选择算法。该算法选择出了最具有代表性的特征, 构成有效特征子集, 实现了特征降维。同时, 较 利用标准数据集进行的实验结果表明, 文中算法是可行的、 有效的, 为模式识别的信息特征压缩提供了一 种新的研究方法。 关键词: 特征选择; 主成分分析; 支持向量机 DOI: 10.3778/j.issn.1002-8331.2010.26.052 文章编号: 1002-8331 (2010) 26-0170-03 文献标识码: A 中图分类号: TP181