本文主要是介绍Sherman-Morrison-Woodbury formula 证明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 1. 公式
- 2. 证明
1. 公式
M = I − u v T ⇒ M − 1 = I + u v T 1 − v T u (1) M=I-uv^T\Rightarrow M^{-1}=I+\frac{uv^T}{1-v^Tu}\tag{1} M=I−uvT⇒M−1=I+1−vTuuvT(1)
2. 证明
- 定义矩阵E表示如下:
E = [ I u v T 1 ] , D = 1 − v T u (2) E=\begin{bmatrix}I&&u\\\\v^T&&1\end{bmatrix},D=1-v^Tu\tag{2} E= IvTu1 ,D=1−vTu(2)
我们想求 E − 1 E^{-1} E−1,可以通过增广矩阵,进行行变换得到, - 第一种方法是:将第一行乘以 v T v^T vT后加到第二行中.
[ I 0 − v T 1 ] E = [ I u 0 D ] (3) \begin{bmatrix}I&&0\\\\-v^T&&1\end{bmatrix}E=\begin{bmatrix}I&&u\\\\0&&D\end{bmatrix}\tag{3} I−vT01 E= I0uD (3)
E − 1 = [ I u 0 D ] − 1 [ I 0 − v T 1 ] = [ I + u D − 1 v T − u D − 1 − D − 1 v T D − 1 ] (4) E^{-1}=\begin{bmatrix}I&&u\\\\0&&D\end{bmatrix}^{-1}\begin{bmatrix}I&&0\\\\-v^T&&1\end{bmatrix}=\begin{bmatrix}I+uD^{-1}v^T&&-uD^{-1}\\\\-D^{-1}v^T&&D^{-1}\end{bmatrix}\tag{4} E−1= I0uD −1 I−vT01 = I+uD−1vT−D−1vT−uD−1D−1 (4) - 第二种方法是:将第二行乘以 u u u后加到第一行中.
[ I − u 0 1 ] E = [ I − u v T 0 v T 1 ] (5) \begin{bmatrix}I&&-u\\\\0&&1\end{bmatrix}E=\begin{bmatrix}I-uv^T&&0\\\\v^T&&1\end{bmatrix}\tag{5} I0−u1 E= I−uvTvT01 (5)
E − 1 = [ I − u v T 0 v T 1 ] − 1 [ I − u 0 1 ] = [ M − 1 − M − 1 u − v T M − 1 1 + v T M − 1 u ] (6) E^{-1}=\begin{bmatrix}I-uv^T&&0\\\\v^T&&1\end{bmatrix}^{-1}\begin{bmatrix}I&&-u\\\\0&&1\end{bmatrix}=\begin{bmatrix}M^{-1}&&-M^{-1}u\\\\-v^TM^{-1}&&1+v^TM^{-1}u\end{bmatrix}\tag{6} E−1= I−uvTvT01 −1 I0−u1 = M−1−vTM−1−M−1u1+vTM−1u (6) - 由公式4,6 可得,两个 E − 1 E^{-1} E−1相等, M = I − u v T M=I-uv^T M=I−uvT
[ I + u D − 1 v T − u D − 1 − D − 1 v T D − 1 ] = [ M − 1 − M − 1 u − v T M − 1 1 + v T M − 1 u ] (7) \begin{bmatrix}I+uD^{-1}v^T&&-uD^{-1}\\\\-D^{-1}v^T&&D^{-1}\end{bmatrix}=\begin{bmatrix}M^{-1}&&-M^{-1}u\\\\-v^TM^{-1}&&1+v^TM^{-1}u\end{bmatrix}\tag{7} I+uD−1vT−D−1vT−uD−1D−1 = M−1−vTM−1−M−1u1+vTM−1u (7) - 由第一个行,第一列可得如下
M − 1 = I + u D − 1 v T = I + u v T 1 − v T u (8) M^{-1}=I+uD^{-1}v^T=I+\frac{uv^T}{1-v^Tu}\tag{8} M−1=I+uD−1vT=I+1−vTuuvT(8) - 结论:
M = I − u v T ⇒ M − 1 = I + u v T 1 − v T u (9) M=I-uv^T\Rightarrow M^{-1}=I+\frac{uv^T}{1-v^Tu}\tag{9} M=I−uvT⇒M−1=I+1−vTuuvT(9)
这篇关于Sherman-Morrison-Woodbury formula 证明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!