赞
踩
PCA算法的原理以及c++实现(Eigen库实现)源码
(我的代码基本都来自与这个,只不过改了改输入输出和加了点注释)
1、主成分分析(PCA)原理详解
2、从零开始实现主成分分析(PCA)算法
3、(还有很多,基本上看了CSDN的所有pca讲解,就不继续列出了。。。)
1、对所有样本进行中心化(去均值操作);
2、计算样本的协方差矩阵;
3、对协方差矩阵做特征值分解;
4、取最大的特征值所对应的特征向量;
5、将原样本矩阵与投影矩阵相乘: X*V即为降维后数据集X’ ;
6、输出:降维后的数据集X’
7、还原降维压缩的矩阵:Y = X’ * V^T
8、输出还原矩阵Y
数据集:input.txt pca的数据集
源代码:c++ 实现 pca算法 详细注释
Eigen库:c++ 的eigen库:eigen-3.3.7
1、你也可以自己输出各种中间结果
2、如果想把数据压缩成你想要的维度,直接修改k值
控制台:
文本:
1、如果有什么安装使用的问题欢迎提问。
2、我在遇到求特征值之前自己写的求数据矩阵的协方差矩阵代码:c++ 求输入的矩阵的协方差矩阵
(如果不会求协方差矩阵的推荐看一看)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。