伍德伯里矩阵恒等式(Woodbury matrix identity)
宜言饮酒,与子偕老。琴瑟在御,莫不静好。
更多精彩内容请关注微信公众号 “优化与算法”
在数学(特别是线性代数)中,Woodbury矩阵恒等式是以Max A.Woodbury命名的,它 可以通过对原矩阵的逆进行秩k校正来计算某个矩阵的秩k校正的逆。这个公式的另一个名字是矩阵逆引理,谢尔曼-莫里森-伍德伯里(Sherman–Morrison–Woodbury formula)公式或只是伍德伯里公式。然而,在伍德伯里发现之前,这一等式出现在其他文献中。
1. 伍德伯里矩阵恒等式
\[\displaystyle \left(A+UCV\right)^{-1}=A^{-1}-A^{-1}U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}\]
其中\(A\)、\(U\)、\(C\) 和 \(V\)都表示适形尺寸的矩阵。具体来说,\(A\) 的大小为 \(n×n\),\(U\) 为 \(n×k\),\(C\) 为 \(k×k\),\(V\) 为 \(k×n\)。
2. 扩展
不失一般性,可用单位矩阵替换矩阵A和C:
\[\displaystyle \left(I+UV\right)^{-1}=I-U\left(I+VU\right)^{-1}V\]
这里\(\displaystyle U=A^{-1}X\), \(\displaystyle V=CY\)。
这个等式本身可以看作是两个简单等式的组合,即等式
\[\displaystyle (I+P)^{-1}=I-(I+P)^{-1}P=I-P(I+P)^{-1}\]
和所谓的 push-through 等式
\[\displaystyle (I+UV)^{-1}U=U(I+VU)^{-1}\]的结合。
3. 特殊情况
当 \(\displaystyle V,U\) 是向量时,伍德伯里恒等式退化为谢尔曼-莫里森公式,在标量情况下,它(简化版)只是:
\[\displaystyle {\frac {1}{1+uv}}=1-{\frac {uv}{1+uv}}\]
如果 \(p=q\) 和 \(U=V=I_p\) 是单位矩阵,那么
\[ \left({A}+{B}\right)^{-1} =A^{-1}-A^{-1}(B^{-1}+A^{-1})^{-1}A^{-1}\]
\[={A}^{-1}-{A}^{-1}\left({I}+{B}{A}^{-1}\right)^{-1}{B}{A}^{-1}.\]
继续合并上述方程最右边的项,就可以得到一下恒等式:
\[\displaystyle \left({A}+{B}\right)^{-1}={A}^{-1}-\left({A}+{A}{B}^{-1}{A}\right)^{-1}\]
此等式的另一个有用的形式是:
\[\displaystyle \left({A}-{B}\right)^{-1}={A}^{-1}+{A}^{-1}{B}\left({A}-{B}\right)^{-1}\]
它有一个递归结构:
\[\displaystyle \left({A}-{B}\right)^{-1}=\sum _{k=0}^{\infty }\left({A}^{-1}{B}\right)^{k}{A}^{-1}\]
这种形式可用于微扰展开式,其中 \(B\) 是 \(A\) 的微扰。
4. 推广
二项式逆定理(Binomial Inverse Theorem)
如果 \(A\),\(U\),\(B\),\(V\) 分别是 \(p×p\),\(p×q\),\(q×q\),\(q×p\)的矩阵,那么:
\[\displaystyle \left(A+UBV\right)^{-1}=A^{-1}-A^{-1}UB\left(B+BVA^{-1}UB\right)^{-1}BVA^{-1}\]
前提是 \(A\) 和 \(B+BVA-1UB\) 是非奇异的。后者的非奇异性要求 \(B^{-1}\) 存在,因为它等于 \(B(I+VA=1ub)\),并且后者的秩不能超过 \(B\) 的秩。由于 \(B\) 是可逆的,所以在右手边的附加量逆的两边的两个 \(B\) 项可以被 \((B^{-1})^{-1}\) 替换,从而得到原始的Woodbury恒等式:
\[\displaystyle (A+UBV)^{-1}=A^{-1}-A^{-1}U(I+BVA^{-1}U)^{-1}BVA^{-1}\]
在某些情况下,\(A\) 是有可能是奇异的。
5. 延伸
公式可以通过检查 \(A+UCV\) 乘以伍德伯里恒等式右侧的所谓逆得到恒等式矩阵来证明:
\(\left(A+UCV\right)\left[A^{-1}-A^{-1}U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}\right]\)
\(={}\left\{I-U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}\right\}+\left\{UCVA^{-1}-UCVA^{-1}U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}\right\}={}\)
\(\left\{I+UCVA^{-1}\right\}-\left\{U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}+UCVA^{-1}U\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}\right\}=\)
\(+UCVA^{-1}-\left(U+UCVA^{-1}U\right)\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}=\)
\(+UCVA^{-1}-UC\left(C^{-1}+VA^{-1}U\right)\left(C^{-1}+VA^{-1}U\right)^{-1}VA^{-1}+UCVA^{-1}-UCVA^{-1}\left({A}+{B}\right)^{-1}\) \(=A^{-1}-A^{-1}(B^{-1}+A^{-1})^{-1}A^{-1}\)$
\[={A}^{-1}-{A}^{-1}\left({I}+{B}{A}^{-1}\right)^{-1}{B}{A}^{-1}.\].
参考文献
https://en.wikipedia.org/wiki/Woodbury_matrix_identity
更多精彩内容请关注微信公众号 “优化与算法”

伍德伯里矩阵恒等式(Woodbury matrix identity)的更多相关文章
- Woodbury matrix identity
		
woodbury matrix identity 2014/6/20 [转载请注明出处]http://www.cnblogs.com/mashiqi http://en.wikipedia.org/w ...
 - 程序员能力矩阵 Programmer Competency Matrix
		
[译文]程序员能力矩阵 Programmer Competency Matrix [译文]程序员能力矩阵 Programmer Competency Matrix 注意:每个层次的知识都是渐增的,位于 ...
 - [转]Numpy中矩阵对象(matrix)
		
numpy模块中的矩阵对象为numpy.matrix,包括矩阵数据的处理,矩阵的计算,以及基本的统计功能,转置,可逆性等等,包括对复数的处理,均在matrix对象中. class numpy.matr ...
 - 拉普拉斯矩阵(Laplace Matrix)与瑞利熵(Rayleigh quotient)
		
作者:桂. 时间:2017-04-13 07:43:03 链接:http://www.cnblogs.com/xingshansi/p/6702188.html 声明:欢迎被转载,不过记得注明出处哦 ...
 - 图形学思考 - 聊聊透视图投射矩阵perspective projective matrix
		
from:版权声明:本文作者靖心,靖空间地址:http://blog.csdn.net/kenden23/,未经本作者允许不得转载. 什么是透视图投射矩阵perspective projective ...
 - 学习的矩阵微积分The matrix calculus you need for deep learning
		
学习的矩阵微积分The matrix calculus you need for deep learning https://explained.ai/matrix-calculus/index.ht ...
 - [矩阵乘法] PKU3233 Matrix Power Series
		
[ 矩 阵 乘 法 ] M a t r i x P o w e r S e r i e s [矩阵乘法]Matrix Power Series [矩阵乘法]MatrixPowerSeries Desc ...
 - 反射矩阵(reflection matrix)推导
		
设平面为(nx,ny,nz,d),则以此平面为镜面的列主序反射矩阵如下: 推导如下: 一,平面的表示: 如图所示,过点p,法向量为n的平面,可表示为: np+d=0 其中d为平面到原点的有向距离.如果 ...
 - 实用矩阵类(Matrix)(带测试)
		
引言: 无意间看到国外一个网站写的Matrix类,实现了加减乘除基本运算以及各自的const版本等等,功能还算比较完善,,于是记录下来,以备后用: #ifndef MATRIX_H #define M ...
 
随机推荐
- 利用 Python django 框架 输入汉字,数字,字符,等。。转成二维码!
			
利用 Python django 框架 输入汉字,数字,字符,等..转成二维码! 模块必备:Python环境 + pillow + qrcode 模块 核心代码import qrcode qr = ...
 - CentOS7.x安装nginx
			
1.安装先决条件 yum install yum-utils 2.设置yum存储库和创建/etc/yum.repos.d/nginx.repo 使用以下内容命名的文件 :稳定版 [nginx-stab ...
 - Yum三方仓库——EPEL
			
参考:什么是EPEL 及 Centos上安装EPEL 参考:How to Enable EPEL Repository for RHEL/CentOS 7.x/6.x/5.x 前言 RHEL以及他的衍 ...
 - webpack中如何编写一个plugin
			
loader和plugin有什么区别呢?什么是loader,什么是plugin. 当我们在源代码里面去引入一个新的js文件或者一个其他格式的文件的时候,这个时候,我们可以借助loader去帮我们处理引 ...
 - MyBatis3-topic04,05 -接口式编程
			
笔记要点 /**接口式编程: * 1. 原生: Dao 接口-->Dao接口的实现类 * mybatis: Mapper --> 有一个与之对应的 XXMapper.xml * 2. Sq ...
 - linux 用户,密码,用户组
			
linux 用户,密码,用户组 在root登陆的情况下: 用户密码: useradd <username> passwd <username> <提示输入密码>: ...
 - 03 Spring对Bean的管理
			
Spring创建bean的三种方式 1.第一种方式:使用默认构造函数创建 bean.xml <?xml version="1.0" encoding="UTF-8& ...
 - [NOI2005]月下柠檬树
			
题意 F.A.Qs Home Discuss ProblemSet Status Ranklist Contest 入门OJ ModifyUser autoint Logout 捐赠本站 Probl ...
 - cvte2018春招前端开发实习面试分享
			
编程题问题描述: 返回整数数组中出现次数第n多的数字(返回值可能有多个) 最近在找实习,面试二面最后出了一道这样的编程题,当时有思路但语法有错误,而且很紧张,最后没有运行出来,导致凉凉,回来重新思考了 ...
 - Mybatis配置文件中#{ }和${ }的区别
			
#{ }和${ }都可以从map中取到相对应的值, 但是 #{ }采取的是预编译的方式(PreparedStatement)来执行sql语句,有效防止了sql注入问题 select * from bo ...