概述
(模式识别)特征降维问题
降维的必要性
- 多重共线性--预测变量之间相互关联。多重共线性会导致解空间的不稳定,从而可能导致结果的不连贯。
- 高维空间本身具有稀疏性。一维正态分布有68%的值落于正负标准差之间,而在十维空间只有0.02%。
- 过多的变量会妨碍查找规律的建立。
- 仅在变量层面上分析可能会忽略变量之间的潜在联系。
降维的目的:
- 减少预测变量的个数
- 确保这些变量是相互独立的
- 提供一个框架来解释结果
1.主成分分析算法(PCA)
主成分分析法是一种数据压缩的常用方法。主要是基于正交变换的思想,保留有显著贡献的特征向量。任取一个特征向量,如果它所对应的特征值在数据集上代表一个显著的方差值,则它称之为这个数据集的一个主成分。(其中,每一个特征向量和一个方差对应,而这个方差又由对应的特征值表示)
主成分分析算法存在的缺点:
- 主成分法是基于原始特征的一种线性变换。若原始数据中存在非线性属性,在用主成分法留下的显著主成分可能不再反应这种非线性属性。
- 对于整体方差的贡献可忽略的主成分,却有可能在样本分类方面有至关重要的决定作用。一旦丢弃这些主成分,无意中将对我们要进行的分类以及回归性能产生破坏作用。
- 通常很难给主成分赋予语义意义,然而,原始特征中却提供了这种语义意义,且它们在解决分类和回归问题方面往往是有用的。
尽管在应用主成分分析法时存在着许多缺点,然而,由于它给设计者提供了一种从原始数据得到理想数据的方法,所以还是被人们所应用。
Matlab PCA实现
Matlab中已经包含了实现了的PCA算法,可以通过princomp函数调用。其形式为:
[COEFF,SCORE, latent]=princomp(X);
其中,参数的含义如下:
- X为原始的数据
- COEFF为主成份分量
- SCORE为主成份
- latent为一个包含着样本协方差矩阵本征值的向量
Matlab算法如下所示:
X=[2,8,1;7,5,4;10,8,3;9,2,7];
[COEFF,SCORE,latent]=princomp(X);
COEFF
SCORE
latent
cumsum(latent)./sum(latent)
pareto(latent)
2.线性判别分析(LDA)
3.局部线性嵌入(LLE)
4.拉普拉斯特征映射(Laplacian Eigenmaps)
最后
以上就是纯情画笔为你收集整理的(模式识别)特征降维问题(模式识别)特征降维问题的全部内容,希望文章能够帮你解决(模式识别)特征降维问题(模式识别)特征降维问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复