主成分分析与应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PCA求解:特征根分解 求解: 求解
寻找一组正交基组成的矩阵P,有 Y=PX,使得 是对 角阵。则P的行向量(也就是一组正交基),就是数据X的主 元向量。对Cy进行推导: 定义 ,则A是一个对称阵。对 A进行对角化求取特征向量得:
则D是一个对角阵,而E则是对称阵 A的特征向量排成的矩阵。
求出特征向量矩阵后我们取 线形代数可知矩阵P有性质
基变换
Q?
关 键 假 设
如何寻找到另一组正交基,它们是标准正交基的 线性组合,而且能够最好的表示数据集 ? 线性
数据被限制在一个向量空间中,能被一组基表示; 隐含的假设了数据之间的连续性关系。
PX = Y
(1)
X表示原始数据集。X是一个m*n的矩阵,它的每一个 列向量都表示一个时间采样点上的数据X,在上面的 例子中,m=6,n=120000。 Y表示转换以后新的数据集。P是他们之间的线性转换。
总结和讨论
PCA技术的一大好处是对数据进行降维的处理。我们可 以对新求出的“主元”向量的重要性进行排序,根据需要取 前面最重要的部分,将后面的维数省去,可以达到降维从而 简化模型或是对数据进行压缩的效果。同时最大程度的保持 了原有数据的信息。 PCA的特点:主成分是原变量的线性组合;各个主成 分之间互不相关;主成分按照方差从大到小依次排列,第一 主成分对应最大的方差(特征值);每个主成分的均值为0、 其方差为协方差阵对应的特征值;不同的主成分轴(载荷轴) 之间相互正交;如果原来有p个变量,则最多可以选取p个主 成分,这p个主成分的变化可以完全反映原来全部p个变量的 变化;如果选取的主成分少于p个,则这些主成分的变化应 尽可能多地反映原来全部p个变量的变化。
目的
压缩变量个数
用较少的变量去解释原始数据中的大部分变量,剔除冗 余信息。即将许多相关性很高的变量转化成个数较少、能解 释大部分原始数据方差且彼此互相独立的几个新变量,也就 是所谓的主成分。 这样就可以消除原始变量间存在的共线性,克服由此造 成的运算不稳定、矩阵病态等问题。
PCA广泛用于化学实验数据的统计分析,进行数据降维、 变量提取与压缩、确定化学组分数、分类和聚类以及与其 他方法连用进行数据处理。 主成分计算方法有非线性偏最小二乘(NIPALS) 、乘幂法 ( POWER) 、奇异值分解(SVD) 和特征值分解( EVD) 等。 它们的原理基本上是基于特征值问题, 计算结果也基本相 同.
一个简单的模型 Question:
大量的变量代表可能变化的因素
光谱 限制因素
观测手段
电压
速度
实验环境
复杂、混乱、冗余
How
分析变量背后的关系? 一个简单的物理模型
这是一个理想弹簧运动规律的测定实验。假设球是连接在 一个无质量无摩擦的弹簧之上,从平衡位置沿 轴拉开一定 的距离然后释放。
[( x A , y A ), ( xB , y B ), ( xC , yC )]
200HZ
沿着某个x 轴的运动
(x0,y0,z0)
标准正交基
xA y A xB x= yB xC yC
200hz拍摄10分钟,将有 10x60x200=120000
(xA, yA)
在线性代数中,这 组基本正交基表示 为行列向量线性无 关的单位矩阵
b1 b 1 0 K 0 2 . 0 1 K 0 =I B= = . M M O M . 0 0 K 1 bm
2
冗余
1)该变量对结果没有影响;
不必要的变量
2)该变量可以用其它变量表示,从而造成数据冗余。 低冗余,相互独 立 二者高度 相关,冗 余
图表 3:可能冗余数据的频谱图表示。r1和r2分别是两个不同的观测变量。 (比如例子中的xa,yb)。最佳拟合线r2=kr1 用虚线表示。
σ
2 AB
∑ =
n
i =1
谢谢!!谢谢老师和同学指导! 赫赫~~
定义协方差矩阵
Cx是一个m*m的平方对称矩阵。 Cx对角线上的元素是对应的观测变量的方差。 非对角线上的元素是对应的观测变量之间的协方差。
1 T CX = XX n 1
在对角线上的元素越大,表明信号越强,变量的重要性越 高;元素越小则表明可能是存在的噪音或是次要变量。 在非对角线上的元素大小则对应于相关观测变量对之间冗 余程度的大小。 一般情况下,初始数据的协方差矩阵总是不太好的,表现 为信噪比不高且变量间相关度大。PCA的目标就是通过基 变换对协方差矩阵进行优化,找到相关“主元”。 那么,如何进行优化?矩阵的那些性质是需要注意的呢?
有如下定义: pi表示P的行向量。 xi表示X的列向量(或者X)。 yi表示Y的列向量。 公式(1)表示不同基之间的转换,在线性代数中, 它有如下的含义: P是从X到Y的转换矩阵。 几何上来说,P对X进行旋转和拉伸得到Y 。 P的行向量,{p1,…pm} 是一组新的基,而Y 是原数据X在这组新的基表示下得到的重新表示。
协方差矩阵的对角化
主元分析以及协方差矩阵优化的原则是: 1)最小化变量冗余,对应于协方差矩阵的非对角元素要 尽量小; 2)最大化信号,对应于要使协方差矩阵的对角线上的元 素尽可能的大。 因为协方差矩阵的每一项都是正值,最小值为0,所 以优化的目标矩阵Cy的非对角元素应该都是0,对应于冗 余最小。所以优化的目标矩阵Cy应该是一个对角阵。即只 有对角线上的元素可能是非零值。同时,PCA假设P所对应 的一组变换基{p1,p2,….pm}必须是标准正交的,而优化矩 阵Cy对角线上的元素越大,就说明信号的成分越大,换句 话就是对应于越重要的“主元”。
问题
怎样才能最好的表示数据X? P的基怎样选择才是最好的?
p1 PX = M [x1 L xn ] 体现数据特征 what? how? pm p1 x1 L p1 xn Y = M O M pm x1 L pm xn
Y的列向量
?
pi xi yi = M p m xm
,则
,由
,从而进行如下计算:
可知此时的P就是我们需要求得变 换基。至此我们可以得到PCA的结果: X的主元即是 的特征向量,也 就是矩阵P的行向量。 矩阵Cy对角线上第i个元素是数据X 在方向pi的方差。 我们可以得到PCA求解的一般步骤: 1)采集数据形成m*n的矩阵。m为 观测变量个数,n为采样点个数。 2)在每个观测变量(矩阵行向量) 上减去该观测变量的平均值得到矩阵 X。 3)对 进行特征分解,求取 特征向量以及所对应的特征根。
计算机视学领域的应用
PCA方法是一个具有很高普适性的方法,被广泛应用于 多个领域。这里要特别介绍的是它在计算机视觉领域的应用, 包括如何对图像进行处理以及在人脸识别方面的特别作用 。 A. 数据表示
如果要将PCA方法应用于视觉领域,最基本的 问题就是图像的表达。如果是一幅N*N大小的图像, 它的数据将被表达为一个 维的向量: 在这里图像的结构将被打乱,每一个像素点被 看作是一维,最直接的方法就是将图像的像素一行 行的头尾相接成一个一维向量。还必须要注意的是, 每一维上的数据对应于对应像素的亮度、灰度或是 色彩值,但是需要划归到同一纬度上。
B.
模式识别
假设数据源是一系列的20幅图像,每幅图像都是N*N大 小,那么它们都可以表示为一个 维的向量。将它们排成Biblioteka Baidu一个矩阵:
然后对它们进行PCA处理,找出主元。
为什么这样做呢?据人脸识别的例子来说,数据源是 20幅不同的人脸图像,PCA方法的实质是寻找这些图像中 的相似的维度,因为人脸的结构有极大的相似性(特别是 同一个人的人脸图像),则使用PCA方法就可以很容易的 提取出人脸的内在结构,也及时所谓“模式”,如果有新 的图像需要与原有图像比较,就可以在变换后的主元维度 上进行比较,则可衡量新图与原有数据集的相似度如何。 对这样的一组人脸图像进行处理,提取其中最重要的主元, 即可大致描述人脸的结构信息,称作“特 脸”(EigenFace)。 这就是人脸识别中的重要方法“特征脸方法”的理论 根据。近些年来,基于对一般PCA方法的改进,结合ICA、 kernel-PCA等方法,在主元分析中加入关于人脸图像的先 验知识,则能得到更好的效果。
旋转P的方法类似:
(1)在m维空间中进行遍历,找到一个方差最大的向量,令作P1。 (2)在与P1垂直的向量空间中进行遍历,找出次大的方差对应的向 量,记作p2。 (3)对以上过程循环,直到找出全部m的向量。它们生成的顺序也 就是“主元”的排序。
转换基是一组标准正交基。
特性
可以同时得到新的基向量所对应的“主元排序”,
(ai a )(bi b) n 1
协方差矩阵
A、B分别表示不同的观测变量 所记录的一组值。
将A,B写成向量的形 式:A=[a1,a2,…..an] B=[b1,b2,….bn] 协方差可以表示为:
σ
2 AB
1 = ABT n 1
那么,对于一组具有m个观测变量,n个采样时间点的采样数据X, 将每个观测变量的值写为行向量,可以得到一个m*n的矩阵
主成分分析(PCA)
袁丁 天津大学神经工程与康复实验室 http://tunerl.tju.edu.cn/
目录
什么是PCA 一个简单的模型引出的PCA PCA的代数原理 PCA求解 总结和讨论 应用领域
PCA
PCA(Principal component analysis),主元分析。 它是一种对数据进行分析的技术,最重要的应用是对原 有数据进行简化。 正如它的名字:主元分析,这种方法可以有效的找 出数据中最 “主要”的元素和结构,去除噪音和冗余, 将原有的复杂数据降维,揭示隐藏在复杂数据背后的简 单结构。 它的优点是简单,而且无参数限制,可以方便的应 用与各 个场合。
xi 与 p
中对应列的点积, 也就是相当于在对 应向量上的投影
方差和目标
混乱数据
噪音 旋转 冗余 A 噪音和旋转
B 冗余
C 协方差矩阵
D 协方差矩阵对角化
噪音和旋转
噪音对数据的影响是巨大的,如果不能对噪音进行区分,就不可能 抽取数据中有用的信息。噪音的衡量有多种方式,最常见的定义是信 噪比SNR(signal-to-noise ratio),或是方差比 σ 2 :
C.
图像信息压缩
使用PCA方法进行图像压缩,又被称为Hotelling算法, 或者Karhunen and Leove(KL)变换。这是视觉领域内图像处 理的经典算法之一。具体算法与上述过程相同,使用PCA方 法处理一个图像序列,提取其中的主元。然后根据主元的排 序去除其中次要的分量,然后变换回原空间,则图像序列因 为维数降低得到很大的压缩。例如上例中取出次要的5个维 度,则图像就被压缩了1/4。但是这种有损的压缩方法同时 又保持了其中最“重要”的信息,是一种非常重要且有效的 算法。
2 σ signal SNR = 2 σ noise
σ2 =
( xi x) 2 ∑i =1
n
n 1
σ (a)摄像机A的采集数据。图中黑色垂直直线表示一组正交基的方向。 signal 2 是采样点云在长线方向上分布的方差,而 σ noise 是数据点在短线方向上分布的方差。 (b)对 P的基向量进行旋转使SNR和方差最大。