特征提取和特征选择

特征提取和特征选择都是从原始特征中找出最有效(同类样本的不变性、不同样本的鉴别性、对噪声的鲁棒性)的特征。

区别与联系



特征提取:将原始特征转换为一组具有明显物理意义(Gabor、几何特征[角点、不变量]、纹理[LBP HOG])或者统计意义或核的特征。

特征选择:从特征集合中挑选一组最具统计意义的特征,达到降维。

两者的共同作用:

1 减少数据存储和输入数据带宽;

2 减少冗余;

3 低纬上分类性往往会提高;

4 能发现更有意义的潜在的变量,帮助对数据产生更深入的了解。

线性特征提取


PCA-主成分分析

思想:寻找表示数据分布的最优子空间(降维,可以去相关)。

其实就是取协方差矩阵前s个最大特征值对应的特征向量构成映射矩阵,对数据进行降维。

具体可以参考下面这篇讲的很直观详细的文章

LDA-线性判别分析

思想:寻找可分性判据最大的子空间。

用到了Fisher的思想,即寻找一个向量,使得降维后类内散度最小,类间散度最大;其实就是取S−1wSbSw−1Sb前s个特征值对应的特征向量构成映射矩阵,对数据进行处理。

DHS的模式分类一书中96页有详细的推导,浅显易懂,论文1也非常值得阅读。

ICA-独立成分分析

思想:PCA是将原始数据降维,并提取不相关的部分;ICA是将原始数据降维并提取出相互独立的属性;寻找一个线性变换z=Wxz=Wx,使得z的各个分量间的独立性最大,I(z)=Elnp(z)p(z1)...p(zd)I(z)=Elnp(z)p(z1)...p(zd)

具体可参考Machine Learning: A Probabilistic Perspective的推导计算及论文2。

PCA VS ICA

PCA的问题其实是一个基的变换,使得变换后的数据有着最大的方差。方差的大小描述的是一个变量的信息量,我们在讲一个东西的稳定性的时候,往往说要减小方差,如果一个模型的方差很大,那就说明模型不稳定了。但是对于我们用于机器学习的数据(主要是训练数据),方差大才有意义,不然输入的数据都是同一个点,那方差就为0了,这样输入的多个数据就等同于一个数据了。

ICA是找出构成信号的相互独立部分(不需要正交),对应高阶统计量分析。ICA理论认为用来观测的混合数据阵X是由独立元S经过A线性加权获得。ICA理论的目标就是通过X求得一个分离矩阵W,使得W作用在X上所获得的信号Y是独立源S的最优逼近,该关系可以通过下式表示:

Y=WX=WAS,A=W−1Y=WX=WAS,A=W−1

ICA相比与PCA更能刻画变量的随机统计特性,且能抑制高斯噪声。

二维PCA

参考论文3

CCA-典型对应分析(Canonical Correlaton Analysis)

思想:找到两组基,使得两组数据在这两组基上的投影相关性最大。

用来描述两个高维变量之间的线性关系

用PLS(Partial Least Squares)来求解,参考论文4

非线性特征提取


Kernel PCA

参考论文5

Kernel FDA

参考论文6

Manifold Learning 流形学习

找到流形上的低维坐标。

利用流形学上的局部结构进行降维的方法有:ISOMAP、LLE、Laplacian Eigenmap、LPP 参考文献7,8,9,10。

准则性质总结


准则需满足的条件

特征提取与特征选择的准则需要满足:

  1. 单调性:J(x1,...,xn)<=J(x1,...,xs,xs+1)J(x1,...,xn)<=J(x1,...,xs,xs+1)
  2. 可加性:J(x1,...,xs)=∑iJ(xi)J(x1,...,xs)=∑iJ(xi)
  3. 不变性:J(x)=J(AX)J(x)=J(AX)线性变换下
  4. 度量性:Jij>=0,Jij=Jji,Jij=0ifandonlyifi=jJij>=0,Jij=Jji,Jij=0ifandonlyifi=j
  5. 与错误率的上界或者下届有单调关系,或者说本身就是错误率的上界或者下届

大致可分为三类

基于欧式距离的准则

  • 整体散度 St=12N2∑i,j(xi−xj)(xi−xj)‘=Sw+SbSt=12N2∑i,j(xi−xj)(xi−xj)‘=Sw+Sb
  • PCA:tr(St)tr(St)
  • LDA:tr(Sb)/tr(Sw)tr(Sb)/tr(Sw)
  • 基于距离的准侧概念直观,计算方便,但与错误率没有直接关系

基于概率距离的准则

  • Bhattacharyya距离 JB=−ln∫Ω[p(?a|w1)p(?a|w2)]12d?xJB=−ln∫Ω[p(a→|w1)p(a→|w2)]12dx→
  • Chernoff界限 JC=−ln∫Ωp(?a|w1)sp(?a|w2)1−sd?x,0<s<1JC=−ln∫Ωp(a→|w1)sp(a→|w2)1−sdx→,0<s<1
  • KL散度 Iij(?x)=Ei[lnp(?x|wi)p(?x|wj)]Iij(x→)=Ei[lnp(x→|wi)p(x→|wj)]

基于熵的准则

  • 熵函数 H=JC[P(w1|x),...,P(wc|x)]H=JC[P(w1|x),...,P(wc|x)]
  • 香农熵 J1C=−∑Ci=1P(wi|x)log2P(wi|x)JC1=−∑i=1CP(wi|x)log2P(wi|x)
  • 平方熵 J2C=2[1−∑ci=1P2(wi|x)]JC2=2[1−∑i=1cP2(wi|x)]
  • 广义熵 JaC[P(w1|x),...,P(wc|x)]JCa[P(w1|x),...,P(wc|x)]


以上只是一个简短的概述性文章,建议根据参考文献进行扩展性阅读。


参考文献



[1] Hua Yu and JieYang, A direct LDA algorithm for high - dimensional data with application to face recognition, Pattern Recognition Volume 34, Issue 10, October 2001,pp.2067- 2070

[2] A. Hyvarinenand E. Oja. Independent Component Analysis: Algorithms and Applications. Neural Networks, 13(4- 5):411 -430, 200

[3] J. Yang, D. Zhang, A.F. Frangi , and J.Y. Yang, Two - dimensional PCA: a new approach to appearance - based face representation and recognition, IEEE Trans. on Pattern Analysis and Machine Intelligence, vol. 26, no. 1, pp. 131- 137, Jan. 2004

[4] R. H. David, S. Sandor and S.- T. John,Canonical correlation analysis: An overview with application to learning methods, Technical Report, CSD - TR- 03-02,2003

[5] B. Scholkopf , A. Smola , and K.R. Muller. Nonlinear component analysis as a kernel eigenvalue problem, Neural Computation, 10(5): 1299- 1319, 1998

[6] Mika, S., Ratsch , G., Weston, J., Scholkopf , B., Mullers, K.R., Fisher discriminantanalysis with kernels, Neural Networks for Signal Processing IX, Proceedings of the IEEE Signal Processing Society Workshop, pp. 41 – 48, 1999

[7] J. B. Tenenbaum , V. de Silva, and J. C. Langford, A global geometric framework for nonlinear dimensionality reduction, Science, 290, pp. 2319 - 2323, 2000

[8] Sam T. Roweis , and Lawrence K. Saul, Nonlinear Dimensionality Reduction by Locally Linear Embedding,Science 22 December 2000

[9] Mikhail Belkin , Partha Niyogi ,Laplacian Eigenmaps for Dimensionality Reduction and Data Representation , Computation , 200

[10] Xiaofei He, Partha Niyogi, Locality Preserving Projections, Advances in Neural Information Processing Systems 16 (NIPS 2003), Vancouver, Canada, 2003

时间: 2024-10-07 07:53:48

特征提取和特征选择的相关文章

特征提取与特征选择

特征提取和特征选择都是从原始特征中找出最有效(同类样本的不变性.不同样本的鉴别性.对噪声的鲁棒性)的特征 特征提取:将原始特征转换为一组具有明显物理意义(Gabor.几何特征[角点.不变量].纹理[LBP HOG])或者统计意义或核的特征 特征选择:从特征集合中挑选一组最具统计意义的特征,达到降维 两者作用: 1 减少数据存储和输入数据带宽 2 减少冗余 3 低纬上分类性往往会提高 4 能发现更有意义的潜在的变量,帮助对数据产生更深入的了解 线性特征提取 PCA-主成分分析 思想:寻找表示数据分

特征提取,特征选择

参考文献 特征提取是机器学习的准备工作. 一.特征大体上分几种呢 有人分:high features 和low features. high features 指比较泛的特征:low features 指相对具体的特征. 有人分:具体特征,原始特征(不加工raw),抽象特征. 总体上,Low Level 比较有针对性,单个特征覆盖面小(含有这个特征的数据不多),特征数量(维度)很大.High Level比较泛化,单个特征覆盖面大(含有这个特征的数据很多),特征数量(维度)不大.长尾样本的预测值主

scikit-learn:4.2. Feature extraction(特征提取,不是特征选择)

http://scikit-learn.org/stable/modules/feature_extraction.html 带病在网吧里. ..... 写.求支持. .. 1.首先澄清两个概念:特征提取和特征选择( Feature extraction is very different from Feature selection ). the former consists in transforming arbitrary data, such as text or images, in

sklearn学习:特征提取

http://cwiki.apachecn.org/pages/viewpage.action?pageId=10814137 该sklearn.feature_extraction模块可用于从包含文本和图像等格式的数据集中提取机器学习算法支持的格式的特征. 注意: 特征提取与特征选择非常不同:前者包括将任意数据(如文本或图像)转换为可用于机器学习的数值特征.后者是应用于这些功能的机器学习技术. 从类型的字典加载功能 该类DictVectorizer可用于将表示为标准Python dict对象列

特征提取(机器学习数据预处理)

特征提取(机器学习数据预处理) 特征提取与特征选择都是数据降维的技术,不过二者有着本质上的区别:特征选择能够保持数据的原始特征,最终得到的降维数据其实是原数据集的一个子集:而特征提取会通过数据转换或数据映射得到一个新的特征空间,尽管新的特征空间是在原特征基础上得来的,但是凭借人眼观察可能看不出新数据集与原始数据集之间的关联. 这里介绍2种常见的特征提取技术: 1)主成分分析(PCA) 2)线性判别分析(LDA) 1.主成分分析(PCA) 一种无监督的数据压缩,数据提取技术,通常用于提高计算效率,

数据挖掘步骤

一.现在我主要讲解数据挖掘的基本规范流程 数据挖掘通常需要数据收集,数据集成,数据规约,数据清理,数据变换,数据挖掘实施过程,模式评估和知识表示 1.数据收集:根据所得的数据,抽象出数据的特征信息,将收集到的信息存入数据库.选择一种合适的数据存储和管理的数据仓库类型 2.数据集成:把不同来源,格式的数据进行分类 3.数据规约:当数据量和数据的值比较大的时候,我们可以用规约技术来得到数据集的规约表示,比如(数据值-数据平均值)/数据方差,这是数据就变小了很多但接近原数据的完整性,规约后数据挖掘的结

再谈OpenCV

尽管之前写过一篇关于OpenCV的介绍(http://blog.csdn.net/carson2005/article/details/5822149),但依然有朋友对其不甚了解.所以,经常能碰到有人问我诸如以下一些问题:OpenCV能不能实现人脸识别?OpenCV有没有车辆检测的API?OpenCV有没有三维重建的函数?面对这样的问题,我也很困惑.到底该如何给他们解释,才能让它们明白,OpenCV确实很强大,但还没有他们想象中的那么强大.其实,OpenCV的全称,是Open source Co

舆情,文本挖掘

MLE,MAP,EM 和 point estimation 之间的关系是怎样的 和点估计相对应的是区间估计,这个一般入门的统计教材里都会讲.直观说,点估计一般就是要找概率密度曲线上值最大的那个点,区间估计则要寻找该曲线上满足某种条件的一个曲线段. 最大似然和最大后验是最常用的两种点估计方法.以最简单的扔硬币游戏为例,一枚硬币扔了五次,有一次是正面.用最大似然估计,就是以这五次结果为依据,判断这枚硬币每次落地时正面朝上的概率(期望值)是多少时,最有可能得到四次反面一次正面的结果.不难计算得到期望概

Deep Learning(深度学习)学习笔记整理系列之(一)

Deep Learning(深度学习)学习笔记整理系列 [email protected] http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0  2013-04-08   声明: 1)该Deep Learning的学习系列是整理自网上很大牛和机器学习专家所无私奉献的资料的.具体引用的资料请看参考文献.具体的版本声明也参考原文献. 2)本文仅供学术交流,非商用.所以每一部分具体的参考资料并没有详细对应.如果某部分不小心侵犯了大家的利益,还望海涵,并联