特征选择

特征选择常用算法综述

特征选择的一般过程:

1.生成子集:搜索特征子集,为评价函数提供特征子集

2.评价函数:评价特征子集的好坏

3.停止准则:与评价函数相关,一般是阈值,评价函数达到一定标准后就可停止搜索

4.验证过程:在验证数据集上验证选出来的特征子集的有效性

 

1.生成子集

搜索算法有 完全搜索、启发式搜索、随机搜索 三大类。

(1)完全搜索

<1>宽搜(Breadth First Search):时间复杂度高,不实用

<2>分支界限搜索(Branch and Bound):其实就是宽搜加上深度的限制

<3>定向搜索(Beam Search):其实算是启发式的一种,对宽搜加上每次展开结点数的限制以节省时间空间,对于展开那几个结点由启发式函数确定

<4>最优优先算法(Best First Search):也是有启发式函数,对宽搜取最优结点进行展开

(2)启发式搜索

<1>序列前向选择(SFS , Sequential Forward Selection)

特征子集X从空集开始,每次选择能使得评价函数J(X)最优的一个特征x加入,其实就是贪心算法,缺点是只加不减

<2>序列后向选择(SBS , Sequential Backward Selection)

和SFS相反,从特征全集开始,每次选择使评价函数J(X)最优的特征x剔除,也是贪心,缺点是只减不增

<3>双向搜索(BDS , Bidirectional Search)

SFS和SBS同时开始,当两者搜索到同一个特征子集时停止。

<4>增L去R选择算法(LRS , Plus-l Minus-R Selection)

形式一:从空集开始,每次加L个特征,去除R个特征,使得J最优

形式二:从全集开始,每次去除R个特征,加入L个特征,使J最优。

<5>序列浮动选择(Sequential Floating Selection)

该算法由增L去R发展,不同之处在于L和R是会变化的,它结合了序列前后向选择、增L去R的特点并弥补了缺点。

①序列浮动前向选择(SFFS , Sequential Floating Forward Selection)

从空集开始,每轮选择子集x加入使得J最优,再选择子集z剔除使得J最优。

②序列浮动后向选择(SFBS , Sequential Floating Backward Selection)

与①相反,从全集开始,先剔除再加入。

<6>决策树(Decision Tree Method , DTM)

一般使用信息增益作为评价函数,待决策树生长后再进行剪枝,最后留下的叶子就是特征子集。

(3)随机算法

<1>随机产生序列选择算法(RGSS, Random Generation plus Sequential Selection)

随机产生特征子集,然后执行SFS或SBS,可作为SFS和SBS的补充,用于跳出局部最优解。

<2>模拟退火算法( SA, Simulated Annealing )

模拟退火可在一定程度上避免陷入局部最优,但是可能难以求解。

<3>遗传算法(GA, Genetic Algorithms)

首先随机产生一批特征子集,并用评价函数给这些特征子集评分,然后通过交叉、突变等操作繁殖出下一代的特征子集,并且评分越高的特征子集被选中参加繁殖的概率越高。这样经过N代的繁殖和优胜劣汰后,种群中就可能产生了评价函数值最高的特征子集。

 

2.评价函数

用于评价特征子集的好坏,主要分为Filter和Wrapper

(1)Filter

其实就是预处理,利用训练集自身的特点筛选出特征子集后再送入分类器进行学习,与分类器的选择无关。

(2)Wrapper

封装器用选取的特征子集对训练集进行分类,分类的精度作为衡量特征子集好坏的标准。

 

常见的评价函数有:

(1)相关性

基于假设:好的特征子集所包含的特征应该是与分类的相关度较高,而特征之间相关度较低

线性相关系数 

 

(2)距离/相似度

基于假设:好的特征子集应该使得属于同一类的样本距离尽可能小,属于不同类的样本之间的距离尽可能远

常用相似度计算

(3)信息增益

之前讲过了,信息增益体现特征子集的出现对系统信息量的增加。

(4)一致性

若样本1与样本2属于不同的分类,但在特征A、 B上的取值完全一样,那么特征子集{A,B}不应该选作最终的特征集。

(5)分类器错误率

用分类的精度作为评判标准。

 

 

对于文本分类的文本特征提取,大都采用Filter方法进行特征提取,无论是基于词频的VSM方法还是基于语义的方法,大都是通过计算公式对每个特征项进行打分,

最后选择得分最高的k项形成特征子集。Wrapper方法用的很少,我自己认为是文本特征项数量巨大,对于上述不断生成特征子集再去评价实在太慢了,wrapper方法

也是因为效率不高而被舍弃。

 

 

注:上述特征选择常用算法综述摘自博客 http://www.cnblogs.com/heaad/archive/2011/01/02/1924088.html

转载于:https://www.cnblogs.com/CuiN/p/6525780.html

n many data analysis tasks, one is often confronted with very high dimensional data. Feature selection techniques are designed to find the relevant feature subset of the original features which can facilitate clustering, classification and retrieval. The feature selection problem is essentially a combinatorial optimization problem which is computationally expensive. Traditional feature selection methods address this issue by selecting the top ranked features based on certain scores computed independently for each feature. These approaches neglect the possible correlation between different features and thus can not produce an optimal feature subset. Inspired from the recent developments on manifold learning and L1-regularized models for subset selection, we propose here a new approach, called {\em Multi-Cluster/Class Feature Selection} (MCFS), for feature selection. Specifically, we select those features such that the multi-cluster/class structure of the data can be best preserved. The corresponding optimization problem can be efficiently solved since it only involves a sparse eigen-problem and a L1-regularized least squares problem. It is important to note that MCFS can be applied in superised, unsupervised and semi-supervised cases. If you find these algoirthms useful, we appreciate it very much if you can cite our following works: Papers Deng Cai, Chiyuan Zhang, Xiaofei He, "Unsupervised Feature Selection for Multi-cluster Data", 16th ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD'10), July 2010. Bibtex source Xiaofei He, Deng Cai, and Partha Niyogi, "Laplacian Score for Feature Selection", Advances in Neural Information Processing Systems 18 (NIPS'05), Vancouver, Canada, 2005 Bibtex source
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值