对矩阵施加可逆性

计算科学 线性代数 矩阵 条件数 数字
2021-12-04 00:44:36

我有一个对称的半正定协方差矩阵,它被近似计算为二次回归的输出。然后我需要反转,但它通常接近单数。我通过使用缩放来减少问题。也就是说,我创建了一个对角矩阵,其元素然后AADDii=1/Aii

A1=D(DAD)1D

其中的条件数低于不幸的是,在某些迭代中,这还不够。的大小非常小,比如最大DADAA50×50

的倒数,因为我必须在长时间计算中使用它,其中诸如之类的术语出现很多时间。另外:表示协方差矩阵,因此它必须是对称且正定的。AxTA1xA1BA1

有没有更好的方法使可逆?A

2个回答

将对角线元素乘以因子但接近 1。它通常可以完成这项工作。(我会首先尝试,但可以尝试使用此表达式中的零数;例如,将用于非常嘈杂的数据。)这在某些条件下是合理的,因为它是正则化的一种特定形式. 有关正则化的更多信息,请参阅我的教程http://mat.univie.ac.at/~neum/ms/regtutorial.pdfq>1q=1.0001q=1.01

一个重要的例外是当某些对角元素很小或为负时,在这种情况下,您的数据不足以进行尝试估计。

要问的问题是为什么需要反转矩阵。如果一个矩阵是近奇异的,那么您确实可以以某种稳定的方式定义类似伪逆的东西,但是对于近奇异矩阵,以任何方式求解线性系统都不太可能产生任何有用的结果,因为结果非常依赖于右手边的微小变化。