文章目录
- 一、现象
- 二、解决方案
一、现象
在做模型建模做降维的时候,时常回想起PCA(主成分分析)和SVD(奇异值分解),但两者有什么区别,时而会弄混,所以整理一下
二、解决方案
PCA(主成分分析)和SVD(奇异值分解)都是数据降维的常用技术,但它们有一些关键的区别:
-
PCA:
- 是一种统计方法,通过正交变换将数据转换到新的坐标系统中,使得新坐标轴(主成分)按照方差的大小排序。
- 目的是减少数据集的维度,同时尽可能保留原始数据的变异性。
- PCA是无监督学习,不考虑数据的标签。
- 适用于数据集中变量间线性相关性较强时。
-
SVD:
- 是一种矩阵分解技术,可以将任意形状的矩阵分解为三个特定的矩阵:左奇异向量、奇异值和右奇异向量的转置。
- 可以用于数据降维、数据压缩、推荐系统等。
- SVD可以看作是PCA的一种实现方式,但SVD本身不直接关注数据降维,它更多是作为一种数学工具。
在降维方面,PCA通过选择最大的几个特征值对应的特征向量来实现,而SVD通过选择最大的几个奇异值对应的奇异向量来实现。PCA通常用于探索性数据分析,而SVD除了降维,还可以用于推荐系统等其他领域。
总结来说,PCA是一种降维技术,侧重于数据的方差和特征的重要性;而SVD是一种矩阵分解技术,侧重于矩阵的内在结构,可以用于多种不同的应用场景。