首先证明Sherman-Morrison公式:
(A+uvT)−1=A−1−A−1u(1+vTA−1u)−1vTA−1 (1)
其中,A∈Rn×n非奇异,即A-1存在,u∈Rn,v∈Rn。SM公式看似复杂,但可以通过求解以下线性方程组来推导出来:
(A+uvT)x=b (2)
式(2)两边同时乘以A-1,令 A-1u=z 和 A-1b=y,则有:
x+zvTx=y (3)
注意到vTx是标量,令α=vTx。式(3)两边同时乘以vT,得:
α+vTzα=vTy (4)
由于式(4)中vTz和vTy都是标量,从而由式(4)可解得:
α=vTy1+vTz (5)
由式(3)和y、z、α的定义可得:
x=y−αz=A−1b−A−1u(1+vTA−1u)−1vTA−1b=[A−1−A−1u(1+vTA−1u)−1vTA−1]b (6)
由(2)和(6)即可得Sherman-Morrison公式,即(1)。
由Sherman-Morrison公式,并令U∈Rn×k,V∈Rn×k ,可得:
(A+UVT)−1=A−1−A−1U(I+VTA−1U)−1VTA−1 (7)
上式即为Sherman-Morrison-Woodbury公式。可以看到,Sherman-Morrison公式是Sherman-Morrison-Woodbury公式在k=1时的特殊情形。
如何证明Sherman-Morrison-Woodbury公式?式(7)两边同时乘以(A+UVT),并证明两边均等于单位矩阵I即可。