商业数据分析·SVD.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
商业数据分析·SVD

商业数据分析 2016·11·24 线性降维 线性降维 2 1 PCA Principal Component Analysis 主成分分析法 线性降维 2 PCA 主成分分析(PCA)的方法可以解决数据降维和解相关性的问题。 PCA的思想是: 将p维的样本线性映射到k维空间上(kp)。而且,这k个维度是相互正交(不相关)的。 这k个方向就是主成分,并且是重新构造出来的,而不是简单地从原来p维中去除p-k维。 用数学语言来描述映射 线性降维 2 原始数据点是蓝色的六个点,我们要把它从一个 垂直正交二维空间投影到一条直线(一维空间)上。 假设这条黄色的直线,和原来的横轴角度为θ,我们定义一个投影矩阵P: 用原来的点的坐标构成的矩阵去乘以矩阵P,就完成了映射: 继续回到PCA 2 步骤: 1、每维数据都中心化。即每一列的数据都减去该列的均值:X——Xc 2、计算Xc的协方差矩阵S: 3、计算协方差矩阵S的特征向量和特征值; 求每个特征值lj 求aj构成的特征向量 线性降维 4、将特征值从大到小排列,选取前k个大的特征值对应的特征向量,也就是选出这p个特征中最重要的k个特征对应的特征向量。 5、将Xc映射到第4步计算出来的特征向量上,即Xc乘以这个特征向量,得到新的数据集Z。 这个新的数据集Z就是我们通过PCA处理原始数据后的结果啦! 那么问题来了? 2 K是多少? 线性降维 画个图,告诉你k是多少 2 理论上来讲,选的前K个特征值的总和,应该至少在全部特征值总和的70%以上,才能在降维的同时,保证数据没有丢失过多的有用信息。 线性降维 碎石图(scree plot) 2 刚才已经把特征值从大到小排列了, 假设有a个特征值,那么横轴就是从1到a递增,纵轴就是特征值的数值,如下图,就可以看到特征值刚开始变化很陡峭,之后慢慢就平坦了,用数学语言来讲,就是斜率逐渐减小。这张图的“拐点”位置对应的横坐标,就是我们要取的k。 线性降维 拐点 为什么叫碎石图呢? 就好像小石头从山顶上滚下来,刚开始很陡,小石头连滚带爬的往下滑,后来就到了平地,大家都挨在了一起,而K的值就是:山脚下进入平地的那个点的值。 P.s 具体K的选择还是要看实际应用的情况,如果是为了画图,那么直接选择K=2或者K=3就可以了。 MATLAB实例(Example 2.2) 2 我们对酵母细胞周期数据集(yeast.mat)进行主成分分析。对酵母细胞,我们针对384个基因在17个时间点进行验测获得数据。即:384个样本,17个特征。 下面打开matlab我们进行PCA实战! 线性降维 PCA的总结 2 假设我们想要将原本p维的特征映射到k(kp)维新的特征上,我们认为,最好的k个维度应该具有这样的性质:将p维特征样本点转换为k维特征样本点后,仅利用这k维特征仍然能够很好的区分样本点,即,映射后,原来数据之间的差异性仍然要尽可能大的保存,也就是说在k维特征上的每一维,样本方差都很大。 PCA(Principal Component Analysis)不仅仅是对高维数据进行降维,更重要的是经过降维去除了噪声,发现了数据中的模式。 PCA把原先的p个特征用数目更少的k个特征取代,新特征是旧特征的线性组合,这些线性组合最大化样本方差,尽量使新的k个特征互不相关。 线性降维 线性降维 2 2 SVD Singular Value Decomposition 奇异值分解 回顾PCA 2 步骤: 1、每列中心化:X——Xc 2、计算Xc的协方差矩阵S; 3、计算协方差矩阵S的特征向量和特征值; 4、将特征值从大到小排列,选取前k个大的特征值对应的特征向量; 5、将Xc映射到第4步计算出来的特征向量上。 线性降维 Singular Value Decomposition 奇异值分解 SVD什么鬼 2 线性降维 任何一个矩阵都可以表达为: 这就叫做把矩阵X进行奇异值分解。 假设X是n×p的矩阵,那么U是一个n×n 的矩阵,而D是一个n×p对角矩阵(对角线上才会有非零元素),而V是一个p×p的矩阵。 而U和V各自的列向量都是单位正交向量。 因此 X = UDVT XTX = VDTUTUDVT = VDTDVT VT XTXV=DTD SVD什么鬼 2 线性降维 因此,SVD分解后得到的V就是XTX的特征向量,而DTD对角上的元素就是XTX的特征值。 XTX = VDTUTUDVT = VDTDVT VT XTXV=DTD SVD是什么 2 线性降维 任何一个矩阵都可以表达为: 这就叫做把矩阵X进行奇异值分解。 X = UDVT 新的PCA步骤: 1、每列中心化:X——X

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档