也谈Ensemble Methods做特征选择
特征处理
特征是对象的表达,模式识别中处理特征的方法可以分为两类:
1 特征选择
特征选择就是在原始特征集合中,挑选出一些最具有代表性、可分性最好的特征子集——典型的组合优化问题、NP问题。
从统计观点——变量的选择
特征选择:1)可以降低特征空间维数;2)特征本身常常具有明确的意义。
搜索策略
- 顺序前进法——不考虑特征相关性,由少到多,不断增加特征
- 顺序后退法——不考虑特征相关性,由多到少,不断减少特征
- 遗传算法——“物竞天择,适者生存” 交叉+变异
- 分支界限法
- 模拟退火法
- Tabu搜索法
特征选择的方法大体可分为两类
- Filter方法
- 通常给出一个独立于分类器的准则,来评价所选择的特征子集
- Fisher判别准则——根据每个特征在两类的平均距离和方差,来评价它的分类能力
- 互信息量准则——考虑特征变量和目标值的互信息量
- 在所有可能的特征子集中,搜索最优的特征子集
- 通常给出一个独立于分类器的准则,来评价所选择的特征子集
- Wrapper方法
- 将特征选择和分类器结合在一起,即特征子集的好坏标准是由分类器决定的
- 最近邻——OBLIVION
- SVM——SVM-RFE(Recursive Feature Elimination)
- Fisher判别——FOM(Fisher Optimization Model)
- AdaBoost(后面有详述)
- 在学习过程汇总表现优异的特征子集会被选中
- 将特征选择和分类器结合在一起,即特征子集的好坏标准是由分类器决定的
2 特征变换
特征变换就是希望通过变换,消除原始特征之间的相关或减少冗余,得到新的特征。
从统计观点——减少变量之间的相关性,用少量新变量来尽可能反映样本信息
- 主成分分析 PCA
- 通过协方差矩阵的特征值分解得到的特征向量,来进行特征变换
- 没有考虑类别信息
- 因子分析 FA
- 独立成分分析 ICA
从几何观点——通过变换得到新的表达空间,使得数据可分性更好
- 线性判别分析 LDA
- 引入了类别信息
- 通过类间离散度矩阵"除以"类内总离散度矩阵的特征值分解得到的特征向量,来进行特征变换
- 核方法
AdaBoost
AdaBoost本质
- 给定有限分类器集合和训练样本集,选择合适的分类器进行线性组合。
- 如果为每一个特征设计一个分类器,这样分类器选择的过程就实现了特征选择,并得到了最后的分类器。
- 基于AdaBoost的特征选择方法最早是Viola等人在人脸检测中提出的,本质上是利用顺序前进法选择特征的Wrapper方法。
基于AdaBoost的特征选择
- 初始化训练样本权重
- 设计每个特征的分类器
- 根据加权训练样本最小错误率准则,选择分类器,也就是选择了特征
- 调整样本权重
- 通过循环,最后得到分类器的线性组合