svd算法matlab代码主成分分析(PCA)实验
主成分分析(PCA)非常有用,并且是统计和机器学习中常用的算法之一。
该工具被广泛用于各种应用中,例如用于可视化和分析的降维,压缩,离群值检测和图像处理。
PCA是我最喜欢用于各种任务的工具之一,通常用于可视化目的。
但是,我意识到,一直以来,我一直只是将其用作黑匣子,对它的概念只有很浅的了解。
因此,这激发了我使用PCA的自定义实现创建此存储库的动力。
请注意,此存储库无意描述有关PCA的完整详细信息。
仅显示一些python代码以帮助更好地了解其计算方式。
为了获得更好,更全面的资料,我发现“主成分分析教程”
[1]非常有用。
关于PCA
简而言之,该方法对角化输入数据的协方差矩阵。
对角矩阵的属性是所有值都是零,除了对角线上的值必须为非零。
该方法假定输入数据的变量之间存在线性关系,并且删除了它们之间的关系。
有几种计算PCA的方法:
通过协方差矩阵-当特征数比记录数下这是非常有用的。
而且更容易解释这种方法。
通过标产品矩阵-当特征数比记录数较高,这是有用的。
通过奇异值分解(SVD)
-这种方法在实践中使用最多(Scikit
2021-11-07 22:31:44
103KB
系统开源
1