1 / 38

主成分分析 Principal Component Analysis

主成分分析 Principal Component Analysis. 廖钧. 大纲. 背景 应用 实例 理论基础 结合 R 语言 总结. 问题. 拿到描述汽车的样本,既有“千米 / 小时”,又有“英里 / 小时”来表征最大速度(冗余) 拿到数学系期末成绩统计单,包含三列。一 列是对数学的兴趣程度,一列是复习时间,还有一列是考试成绩 。(相关). 简单例子. 输入: 假定我们掌握了一个开源社区的所有 bug 数据,比如每个 bug 的严重程度,所属系统,提交者,当前状态等等许多描述 bug 的信息。 任务:

etoile
Download Presentation

主成分分析 Principal Component Analysis

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 主成分分析Principal Component Analysis 廖钧

  2. 大纲 • 背景 • 应用实例 • 理论基础 • 结合R语言 • 总结

  3. 问题 • 拿到描述汽车的样本,既有“千米/小时”,又有“英里/小时”来表征最大速度(冗余) • 拿到数学系期末成绩统计单,包含三列。一列是对数学的兴趣程度,一列是复习时间,还有一列是考试成绩。(相关)

  4. 简单例子 • 输入: • 假定我们掌握了一个开源社区的所有bug数据,比如每个bug的严重程度,所属系统,提交者,当前状态等等许多描述bug的信息。 • 任务: • 介绍社区的bug状况,难道我们直接将这些数据“原封不动”地摆出去? • Of course not! • 方法: • 用几个指标简单明了地表示清楚

  5. 抽象 • 多维数据(multidimensional statistics) • 多个变量来描述事物 • 多维矩阵(N个事物,每个事物由K个变量来描述) • 变量之间有许多是相关的 • 主成分分析( Principal Component Analysis ) • 降低数据维度 • 减少数据相关 • 减少冗余 • 便于描述与理解 • PCA的思想是将n维特征映射到k维上(k<n)

  6. 大纲 • 背景 • 简单实例 • 理论基础 • 结合R语言 • 总结

  7. 成绩数据 • 学生的成绩数据,包含数学,物理,化学,语文,历史,英语

  8. 提出问题 • 如何缩减变量个数 • 缩减后的变量(主成分)包含有多少原来的信息 • 进一步的描述与解释数据

  9. 降维-1 • 从最简单的开始 • 假设数据只有二维,数据形成椭圆形状的点阵

  10. 降维-2 • 长轴:数据的主要变化 • 短轴:数据的次要变化 • 寻找新变量,通过变换使得新变量与椭圆长短轴平行 • 如果长轴变量代表数据包含的大部分信息,就用该变量代表原先的两个变量,完成降维。 • 多维与二维情况类似

  11. 主成分的选取 • 降维到几个变量,就有几个主成分 • 一般经验选取的主成分的主轴总长度占所有主轴长度的大约80%

  12. 数学知识-1——模型 • 主成分分析模型: • 假定有N个样本,每个样本由P个变量描述,这样构成一个N*P的矩阵(主成分分析的输入) • 其中

  13. 数学知识-2——变换 • 作,,的线性组合,记新的变量指标为,,则 • 变换原则: • 1) • 2)不相关 • 3)是,,的线性组合中方差最大者,是,,的线性组合中方差最大者,以此类推。

  14. 数学知识-3——衡量信息 • 3)中“方差”的计算方法 • 计算变量的协方差矩阵: • 计算R的特征值及相应的特征向量 • 按照特征值从大到小排序,相应的特征向量组成主成分的系数:

  15. 回到例子——特征值的贡献-1 • 根据特征值大小进行主成分的选取 • 前两个成分的特征值累积占了81%,后面特征值贡献越来越小。

  16. 特征值的贡献-2 • 通过碎石图可以直观看出特征值的贡献

  17. 解释与描述数据——线性组合 • 每一列代表一个主成分作为原来变量线性组合的系数。 • 这些系数也叫主成分的载荷(loading),表示主成分与原变量的相关系数 • 相关系数越大,代表性越大。

  18. 解释与描述数据——载荷图 • 左边是数学、物理、化学,右边是语文、历史、外语

  19. 小结(主成分分析的步骤) • 输入:多维矩阵(N*P) • 输出:降维后的矩阵(N*M)(M<<P) • 步骤: • 数据标准化(option) • 计算变量相关系数矩阵及其特征值与特征向量(对变量进行变换) • 根据辅助工具找出主成分,进一步分析

  20. 大纲 • 背景 • 应用实例 • 理论基础 • 结合R语言 • 总结

  21. 最大方差理论-1 • 在信号处理中认为信号具有较大的方差,噪声有较小的方差。 • 最好的k维特征是将n维样本点转换为k维后,每一维上的样本方差都很大。

  22. 最大方差理论-2 • 例子:5个样本点

  23. 最大方差理论-3 • 投影:将样本投影到某一维上,用一条过原点的直线表示 • 左图方差大

  24. 最大方差理论-4 • 从投影到协方差

  25. 最大方差理论-5 • 中间那部分就是协方差矩阵

  26. 大纲 • 背景 • 应用实例 • 理论基础 • 结合R语言 • 总结

  27. 数据输入 • d=read.table(“clipboard”) # 从剪贴板读取数据

  28. 标准化 • sd=scale(data) #对数据进行标准化

  29. 主成分分析 • pca=princomp(sd,cor=T) #主成分分析函数 • screeplot(pca,type=“line”,main=“碎石图”,lwd=2) #画出碎石图

  30. 衡量贡献 • dcor=cor(d) • deig=eigen(dcor) #求矩阵的特征值和特征向量 • deig$values #输出特征值 • 5.60041166 1.11405614 0.52667116 0.28361049 • 0.20295832 0.16194133 0.06755969 0.04279121

  31. 解释数据-1 • pca$loadings[,1:2] #输出前2个主成分的载荷系数 • 第一个主成分对V3,V4,V6,V7,V8载荷系数较大 • 第二个主成分对V1,V2,V5载荷系数较大

  32. 解释数据-2 • 计算综合得分: C=(b1*C1+b2*C2)/(b1+b2)=0.834 C1+0.166 C2 • s=pca$scores[,1:2] #输出前2个主成分的得分 • c=s[1:31,1]*0.834+s[1:31,2]*0.166 #计算最终得分 • cbind(s,c) 输出综合得分信息

  33. 解释数据-3 • V1 V2 V3 V4 V5 V6 V7 V8 • 第一主成分(3,4,6,7,8)可以看做日常消费(精神消费) • 第二主成分(1,2,5)可以看做衣食与医疗消费(基础消费) • 消费差异明显

  34. 大纲 • 背景 • 应用实例 • 理论基础 • 结合R语言 • 总结

  35. 总结 • 主成分分析面向的问题 • 主成分分析的原理及简单例子 • R语言实现方法

  36. 待解决的问题 • 主成分分析有两种,使用协方差矩阵与相关系数矩阵,有什么不同

  37. 参考资料 • R语言PCA分析 • http://www.cnblogs.com/bigshuai/archive/2012/06/18/2553808.html

  38. 谢谢!

More Related