问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

(十)PCA降维算法

发布网友 发布时间:2022-09-06 17:12

我来回答

1个回答

热心网友 时间:2024-04-02 07:55

主成分分析(Principal components analysis,以下简称PCA)是最重要的降维方法之一。在数据压缩消除冗余和数据噪音消除等领域都有广泛的应用。它可以通过线性变换将原始数据变换为一组各维度线性无关的表示,以此来提取数据的主要线性分量。需要注意的是,PCA一般只用于线性数据降维,对于非线性数据一般采用KPCA。

降维就是找出数据里最主要的方面,用数据里最主要的方面来代替原始数据,并且希望损失尽可能的小。首先看几张图,有一个直观的认识。
这里面,把椭圆看成是数据:

基于这个知识,如果我们想对数据进行降维的话,比如图1的两个维度的数据降成一维,我们可以选择保留X1这个维度的数据,因为在这个维度上蕴含的信息量更多。同理,图2就可以保留x2这个维度的数据。但是,问题来了,图3应该保留哪个维度的数据呢?答案是保留哪个维度都不好,都会丢失较大的信息量。但是,如果我们把图3的坐标轴旋转一下

比较容易看出,图3在新的坐标轴下就能进行降维了。
所以,第一,变换正确的坐标轴(基);第二,保留方差最大的几个轴作为主成分,这样的做法就是PCA的核心思想。

从前文可以看出,理想的坐标轴是要求数据投在新坐标轴后,尽可能的分散,也就是数据的方差最大。然后每次选择方差最大的轴作为主成分。
将前文2维降1维的例子扩展到更高维度,还有一个问题需要解决,考虑三维降到二维问题。与之前相同,首先我们希望找到一个方向使得投影后方差最大,这样就完成了第一个方向的选择,继而我们选择第二个投影方向。如果我们还是单纯只选择方差最大的方向,很明显,这个方向与第一个方向应该是“几乎重合在一起”,显然这样的维度是没有用的,因为发生了大量的信息重复,起不到降维的作用,因此,应该有其他约束条件——就是正交。PCA要求轴与轴之间是正交的,也就是不同维度的信息相关性为0。

在表示相关性中,相关系数与协方差是等价的,这里为了方便计算,使用协方差。下面是协方差公式,当协方差为0时,表示两个特征a,b线性不相关。

可以发现,当a=b时,协方差公式就变成了方差公式,方差是特殊的协方差。如果运气更好,特征a与b的平均数都为0,那么公式会进一步简化,得到:

所以说,为了计算方便,PCA降维前,一般都要求将所有特征属性中心化,即平均数为0。

因为PCA要求,同一轴内方差最大,不同轴协方差为0,如何把它们放在一块呢?这里就引入了协方差矩阵的概念:
假设有m个样本,每个样本特征维度是2,每个特征都经过中心化处理:

我们发现协方差矩阵的对角线是方差,而且是对称矩阵。方差和协方差都放在了一个矩阵里面,只需对这个矩阵优化,使它除了对角线的其余元素都为0,就可以了,美滋滋。

我们知道矩阵乘法,本质上就是一种线性变换的过程。而正交基矩阵的乘法,则是坐标系变换的过程。设原空间的数据为X,协方差矩阵为C,经过正交基矩阵P,得到了新坐标系下的数据Y,即Y=PX。那么新坐标系下的协方差矩阵D是怎样的呢?

我们发现,新旧空间的协方差矩阵是有关系的,而且都和变换矩阵P有关系。问题就转化成了,能不能找到一个矩阵P,使得新空间下的协方差矩阵的非对角线元素都为0.

首先,原始数据矩阵X的协方差矩阵C是一个实对称矩阵,它有特殊的数学性质:

也就是说,P就是是协方差矩阵的特征向量单位化后按行排列出的矩阵,其中每一行都是C的一个特征向量。如果设P按照中特征值的从大到小,将特征向量从上到下排列,则用P的前K行组成的矩阵乘以原始数据矩阵X,就得到了我们需要的降维后的数据矩阵Y
其实,经过数学上的推导的,我们就可以知道,特征值对应的特征向量就是理想中想取得正确的坐标轴,而特征值就等于数据在旋转之后的坐标上对应维度上的方差。

由于协方差矩阵的维度和特征相同,所以在进行特征值分解时,得到的特征值数目不会超过特征的数目。

在学习线性代数时,我们都会学矩阵的特征值分解,我们知道一个方阵A经过特征值分解后就得到特征向量特征值了。那么,这个所谓的特征值和特征向量到底是什么东西呢?
很多人都会说是那个经典的式子:

首先给出概念上的一种解释。所谓的特征值和特征向量,最重要的是理解“特征”这两个字,特征向量翻译为eigen vector, eigen这个单词来自德语,本义是在“本身固有的,本质的”。纯数学的定义下,并不能很明白地理解到底为什么叫做特征值和特征向量。但是举一个应用例子,可能就容易理解多了。

在图像处理中,有一种方法就是特征值分解。我们都知道图像其实就是一个像素值组成的矩阵,假设有一个100x100的图像,对这个图像矩阵做特征值分解,其实是在提取这个图像中的特征,这些提取出来的特征是一个个的向量,即对应着特征向量。而这些特征在图像中到底有多重要,这个重要性则通过特征值来表示。比如这个100x100的图像矩阵A分解之后,会得到一个100x100的特征向量组成的矩阵Q,以及一个100x100的只有对角线上的元素不为0的矩阵E,这个矩阵E对角线上的元素就是特征值,而且还是按照从大到小排列的(取模,对于单个数来说,其实就是取绝对值),也就是说这个图像A提取出来了100个特征,这100个特征的重要性由100个数字来表示,这100个数字存放在对角矩阵E中。在实际中我们发现,提取出来的这100个特征从他们的特征值大小来看,大部分只有前20(这个20不一定,有的是10,有的是30或者更多)个特征对应的特征值很大,后面的就都是接近0了,也就是说后面的那些特征对图像的贡献几乎可以忽略不计。

我们知道,图像矩阵A特征值分解后可以得到矩阵P和矩阵E(特征值对角矩阵):

我们可以看到,在只取前20个特征值和特征向量对图像进行恢复的时候,基本上已经可以看到图像的大体轮廓了,而取到前50的时候,几乎已经和原图像无异了。明白了吧,这就是所谓的矩阵的特征向量和特征值的作用。

所以归根结底,特征向量其实反应的是矩阵A本身固有的一些特征,本来一个矩阵就是一个线性变换,当把这个矩阵作用于一个向量的时候,通常情况绝大部分向量都会被这个矩阵A变换得“面目全非”,但是偏偏刚好存在这么一些向量,被矩阵A变换之后居然还能保持原来的样子,于是这些向量就可以作为矩阵的核心代表了。于是我们可以说:一个变换(即一个矩阵)可以由其特征值和特征向量完全表述,这是因为从数学上看,这个矩阵所有的特征向量组成了这个向量空间的一组基底。而矩阵作为变换的本质其实不就把一个基底下的东西变换到另一个基底表示的空间中么?

参考:
https://blog.csdn.net/hjq376247328/article/details/80640544
https://blog.csdn.net/hustqb/article/details/78394058
https://blog.csdn.net/woainishifu/article/details/76418176

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
宁波社保卡办理需要什么材料 宁波社保卡如何申领 有什么高性价比的隔离霜可以推荐? 防晒效果好的隔离霜有哪些值得入手? 下雨天经常爬在房子墙上的那种软体动物,不是蜗牛没壳的,可以在墙上把身... 原来是美男啊里面插曲、主题曲都有哪些? 请问下各位大虾,我在外地用外地农行卡网上转账到本地邮政卡星期六转账的... 为什么用支付宝买东西明明我余额足够,付款时却说我余额不足?2个... 萍乡烛式过滤器品牌 衡水烛式过滤器品牌推荐 LDA和PCA降维总结 第十五章 降维 降维算法之PCA(主成分分析)--无监督 常用降维方法之PCA 和 LDA ...3月9日维也纳能源会议谈判失败为什么买原油有负数的价格呢 君子兰的养护以及方法 试管移囊胚后吃什么水果比较快着床 胚胎着床后多吃什么 LOL8.8女警用什么符文 s8uziadc的符文怎么配最好 关于男人出轨经典语录 自制芝麻核桃粉可以常温保存吗?在学校住,没有条件冷藏。 吃饭啦,吃完了要去睡觉是什么儿歌的歌词 三星笔记本NP-RF511-S02CN 触摸屏变得不好用了 三星笔记本触屏没反应怎么办 项目经理的职责描述 我前年所以废弛句中停顿 糖醋蒜吃了有什么好处 沙漠瓜有籽吗 沙地南瓜 昼夜温差大吗 iphone6怎么换屏幕总成 哪里有iclone的3DMAX插件下载 ...呼叫将以短信通知对方,那对方手机现在是什么状态啊 “您拨打的电话以呼转至中国移动来电提醒服务”,那么对方的手机现在是一... ...请挂机。这一般是手机在什么状态下有这个提醒? 三两淀粉是多少克 可可西里的美丽传说是想说明什么意旨? 可可西里的美丽传说是什么 3两分成十份等于多少克? 很深奥的人生感悟语录 可可西里美丽传说,百度云谁有? 二手手机怎么注销账号? 二手机找不到原机主,账号怎么注销 台积电开始加速,联手日本冲刺2nm芯片,比三星3nm更先进 芯片制程是什么意思 台积电和三星代工芯片哪个强 江西洛莎曼化妆品有限公司怎么样? 江西御美化妆品有限公司怎么样? 为什么宝宝在洗完澡后睡不着 我是男的,一个人在家刚洗澡完为什么睡不着?