1)本征分解实际上并没有太大帮助。它在数值上肯定比Cholesky因式分解更稳定,如果您的矩阵病残/几乎单数/条件编号高,这将很有帮助。因此,您可以使用特征分解,这将为您提供解决问题的方法。但是,几乎不能保证这将是正确的解决方案。老实说,一旦您明确反转,损坏就已经完成了。形成只会使事情变得更糟。本征分解将帮助您赢得战斗,但战争无疑会失败。X Ť Σ - 1 XΣXTΣ−1X
2)在不知道您的问题具体细节的情况下,我会这样做。首先,在执行Cholesky因式分解使得。然后对执行QR分解,使。请务必计算使用前向代- DO NOT明确反转。这样便得到:
从这里,您可以求解所需的任何右侧。但是再说一次Σ = 大号大号Ť 大号- 1 X 大号- 1 X = Q - [R 大号- 1 X 大号X Ť Σ - 1 X = X Ť(大号大号Ť )- 1 XΣΣ=LLTL−1XL−1X=QRL−1XL
XTΣ−1X======XT(LLT)−1XXTL−TL−1X(L−1X)T(L−1X)(QR)TQRRTQTQTRTR
R(或)。根据需要使用向前和向后替换。
RTR
顺便说一句,我很好奇您方程式的右边。你写它的。您确定不是吗?因为如果是这样,您可以在右侧使用类似的技巧:
然后就可以递送致命的一击,当你去解决:
XTΣYXTΣ−1Y β X Ť Σ - 1 X β = X Ť Σ - 1 Ÿ ř Ť - [R β = - [R Ť Q Ť 大号- 1 Ÿ - [R β = Q Ť 大号- 1 Ÿ β = - [R - 1 Q T L − 1 Y R
XTΣ−1Y=====XT(LLT)−1YXTL−TL−1Y(L−1X)TL−1Y(QR)TL−1YRTQTL−1Y
βXTΣ−1XβRTRβRββ====XTΣ−1YRTQTL−1YQTL−1YR−1QTL−1Y
R最后一步吧?那只是向后的替代。:-)