我正在编写一个程序,需要我多次找到复杂的 21*21 对称矩阵的逆矩阵(大约 3500 万次)。我最初使用 scipy.linalg 中的 inv() 来完成此操作。有用。现在我需要减少所需的时间。
网上查了方法,发现可以用LU分解。当我尝试比较 scipy inv 和 LU 方法所花费的时间时。我发现 scipy.inv 即使仅与因式分解部分相比也花费更少的时间。现在我有多个问题-->
在此输入图片描述
如果要求逆的矩阵只是前一个矩阵的“秩一”更新,您可以使用 Sherman Morrison 公式。 “秩一”更新意味着将秩为1的矩阵添加到原始矩阵中。
u
v
这在本文中进行了解释。