数据压缩第二次作业-PCA入门

数据压缩第二次作业-PCA入门

1.主成分分析:步骤、应用及代码实现。代码可以用任何你熟悉的编程语言。
2.藉由主成分分析这个问题,大家复习概率论与数理统计中的协方差矩阵等基本统计特征、特征值及特征向量等线性代数中的基本问题。

一、主成分分析的基本概念

主成分分析,Principal Components Analysis,以下简称PCA,是一种将多指标信息简化处理的手段。
当我们处理的问题相对复杂,其含有的变量较多,之间相互依赖,存在很大的相关性。我们会想能否将其变量尽可能少的简化,且尽可能相互独立,而又不丢失问题的主要信息。

二、主成分分析的直观想法

下面是一个许多资料讲述PCA时的入门例子
如图,在平面中分布着这些密密麻麻的红点,如果我们要用数学工具准确度量这些红点的位置,那么我们应当选定原点,建立二维坐标系,这样每个红点都可以相应的用其坐标(x1,x2)描述它的位置。
但是,如果细心观察,我们会发现,图中所示红点大都分布在直角坐标系的一三象限角平分线附近,它们的区别主要是沿着此角平分线到原点的距离不同,而在与其垂直的方向上距离大致相似,所以我们完全可以如图中蓝线一样建立一维坐标,用红点在蓝线的投影到原点的距离(y)作为红点的坐标。将本来需要两个变量的问题简化为一个变量。提取复杂问题的主要特征,忽略次要特征,从而将复杂问题简单化,这就是PCA的基本思想。
在这里插入图片描述

三、主成分分析的数学表示

b 2 − 4 a c   \sqrt {{b^2} - 4ac} \, b24ac

四、主成分分析的代码实现

1.在matlab中实现主成分分析

在matlab中,可以很轻松的实现对数据的主成分分析,具体只需要掌握以下两个函数:
R=corrcoef(X)
[pc,latent,explained]=pcacov(R )
其中输入和输出的具体意义为
X是待处理的数据矩阵
R是X的相关系数矩阵
pc是由特征向量组成的矩阵
latent是特征值
explianed是因子贡献率

2.一个实例

下面我们通过一道小的练习题目来熟悉并理解上述代码

为了研究杨树叶的形状,某小组测定了20片杨树叶的4个变量,变量名称和测量值如下,试求表示叶片长和宽的主分量。

叶长2/3处宽1/3处宽1/2处宽
10895118110
9095117110
13095140125
11485113108
11387121110
12090122114
87679788
94668886
11584118106
907510396
117608476
1347310492
1507311096
140649587
126759690
118435952
136558975
145639784
1616411294
1556010083
%将上述数据复制到excel中,命名为leaf.xlsx,和m文件保存在同意路径下
clear all;clc;close all;
xls=xlsread('leaf.xlsx');
R=corrcoef(xls);
[pc,latent,explained]=pcacov(R);

保存并运行,查看R,pc,latent,explained等输出值,结果如下

R
1-0.3354551953902380.0143244496072770-0.173315089632803
-0.33545519539023810.8866240188061030.957688254086229
0.01432444960727700.88662401880610310.970714895509975
-0.1733150896328030.9576882540862290.9707148955099751
pc
-0.1485221298275380.9544109427837610.2515280330200490.0614375931427178
0.573489399716009-0.09840791450832560.773446323537859-0.251409179190543
0.5576781017199580.269500419135760-0.558548657150497-0.551713745109771
0.5814174233946610.0823720750156525-0.1629043609183330.792862403084241
latent
2.919983102529161.023674883412280.04891831382621800.00742370023234820
explained
72.999577563228925.59187208530701.222957845655450.185592505808705
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值