【发布时间】:2012-01-03 19:21:08
【问题描述】:
如果我理解正确的话,PCA的原理很简单:
- 计算数据向量的协方差矩阵C。
- 求解det(C - e***I) = 0,求矩阵**C的特征值e。
- 计算矩阵C的特征向量(根据这些特征值)。
FIRST:这个描述正确吗?
SECOND: 任何用于机器求解多项式方程 det(C - e***I) = 0 的算法? 我知道这是一个一般数学问题(求 **n 次多项式的根)。
第三:是否有任何简单在 C/C++ 中的 PCA 实现
非常感谢。
【问题讨论】:
-
您的三个问题中有两个超出了本网站的范围。您可能希望考虑在其他地方提出前两个问题,并将这个问题限制在 PCA 实现中。
-
不要通过求特征方程求根来求解特征值。随着您的问题变得更大,这将不起作用。使用专为这项工作设计的特征值求解器。