PCA中的数据矩阵的一个备忘

本文探讨了在使用PCA进行数据降维时遇到的内存溢出问题,并通过理解PCA公式中矩阵X的不同应用解释了问题所在。进一步解析了维基百科关于PCA中矩阵X的描述,揭示了其在降维过程中的正确应用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近自以为学习了很多识别算法,想来仿真一下,不仿真不知道,一仿真问题出来了。

在PCA中是对数据矩阵X(m*n)来做的降维,我事先是把m作为一个图片的全部维度,n代表样本,于是按照XX'来找特征向量等,由于一个图片最少也有1000+的像素,但是1000+的方阵在matlab中只要以计算就会是内存溢出,我正纳闷之际,看了别人的matlab源代码发现都是用X'来做的也就是X'X来计算协方差矩阵的。

最开始以为这个问题是在人脸识别中才会出现的,但是根据之前会议老板讲过的PCA觉得还是对于一个样本点来说的啊,纳闷的很,在群里请教了大牛,大牛直接给我找到了维基百科中对PCA中这个X的描述,竟然是这么描述的:


好了问题解决了,也就是说在PCA中行数代表的是样本点数,列数是维度。我们求出来的特征向量的维度肯定都是样本点数,那么找到一个特征向量就是对列数进行了降维!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值