我有以下问题:我正在计算频域中的样本协方差矩阵(是时域的 FFT符号矢量信号,基本上是模拟的接收信号)如下:
好吧,我算法的下一步是解决优化过程,作为其中的重要部分,我需要通过执行 SVD、幂法等来计算特征值......在 MATLAB 中的以下等式:
不要涉及太多细节,因为我相信我的问题来自一个数值问题,并且不需要对实际算法/上下文的许多见解。让我们假设,只是我计算的预定义矩阵。
真正的问题现在出现是因为正如 MATLAB 告诉我的那样,是病态的。因此,逆过程似乎失败了,并且由于这个问题,我获得的特征值非常小(实际上我只得到 1 个不同于零的特征值)。的尺寸通常很大(因为它们被压缩取决于我使用的实际压缩比,但假设例如)。
我发现解决这个问题的一种方法是使用对角线加载:
这似乎正在解决问题,由于这种背景“噪音”,特征值现在被缩放。我的问题是如何获得真正缩放好的特征值,因为稍后在我的算法中,这些特征值将用作权重,因为我将它们视为实际的功率估计。
注意:我一直在使用cond()
MATLAB 中的函数, cond(R+sigma*I)= 2
, 我相信这还不错。
随时询问有关该问题的更多问题。但我认为我的问题与涉及特征值和协方差矩阵的纯数值问题有关。