0

在这里,我有一个矩阵,例如,A,其中 A=[1 0.9 0.5;0.9 1 0.9;0.5 0.9 1],如何计算其最接近的半正定矩阵?有什么命令或算法吗?

4

2 回答 2

1

使用极分解得到最接近的半正定矩阵。如果使用 SVD 或直接迭代方法计算此分解的速度更快,则尚无定论。

于 2014-01-27T13:24:51.997 回答
0

在什么意义上最接近?

通常,考虑这一点的最佳方法是在特征空间中。如果您对特征值没有任何限制,我不确定是否有任何方法可以理解您的问题。当然,还有其他半正定矩阵;但是在什么意义上它们仍然与您的原始矩阵相关?

但如果你拥有所有真正的特征值,事情就会变得更加有形。例如,您可以通过添加到对角线来沿实轴平移特征值。

此外,在实践中,通常处理的矩阵是 SPD 的行/列缩放;发现缩放不应该太难(如果存在);但是这种缩放通常应该可以从周围的代码中获得。(各种质量矩阵)。

于 2014-01-24T13:46:21.877 回答