宜言饮酒,与子偕老。琴瑟在御,莫不静好。

更多精彩内容请关注微信公众号 “优化与算法

在数学(特别是线性代数)中,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)的更多相关文章

  1. Woodbury matrix identity

    woodbury matrix identity 2014/6/20 [转载请注明出处]http://www.cnblogs.com/mashiqi http://en.wikipedia.org/w ...

  2. 程序员能力矩阵 Programmer Competency Matrix

    [译文]程序员能力矩阵 Programmer Competency Matrix [译文]程序员能力矩阵 Programmer Competency Matrix 注意:每个层次的知识都是渐增的,位于 ...

  3. [转]Numpy中矩阵对象(matrix)

    numpy模块中的矩阵对象为numpy.matrix,包括矩阵数据的处理,矩阵的计算,以及基本的统计功能,转置,可逆性等等,包括对复数的处理,均在matrix对象中. class numpy.matr ...

  4. 拉普拉斯矩阵(Laplace Matrix)与瑞利熵(Rayleigh quotient)

    作者:桂. 时间:2017-04-13  07:43:03 链接:http://www.cnblogs.com/xingshansi/p/6702188.html 声明:欢迎被转载,不过记得注明出处哦 ...

  5. 图形学思考 - 聊聊透视图投射矩阵perspective projective matrix

    from:版权声明:本文作者靖心,靖空间地址:http://blog.csdn.net/kenden23/,未经本作者允许不得转载. 什么是透视图投射矩阵perspective projective ...

  6. 学习的矩阵微积分The matrix calculus you need for deep learning

    学习的矩阵微积分The matrix calculus you need for deep learning https://explained.ai/matrix-calculus/index.ht ...

  7. [矩阵乘法] 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 ...

  8. 反射矩阵(reflection matrix)推导

    设平面为(nx,ny,nz,d),则以此平面为镜面的列主序反射矩阵如下: 推导如下: 一,平面的表示: 如图所示,过点p,法向量为n的平面,可表示为: np+d=0 其中d为平面到原点的有向距离.如果 ...

  9. 实用矩阵类(Matrix)(带测试)

    引言: 无意间看到国外一个网站写的Matrix类,实现了加减乘除基本运算以及各自的const版本等等,功能还算比较完善,,于是记录下来,以备后用: #ifndef MATRIX_H #define M ...

随机推荐

  1. 【SpringMVC】参数绑定

    一.概述 1.3 参数绑定过程 1.2 @RequestParam 二.自定义绑定使用属性编辑器 2.1 使用WebDataBinder(了解) 2.2 使用WebBindingInitializer ...

  2. 详解介绍Selenium常用API的使用--Java语言(完整版)

    参考:http://www.testclass.net/selenium_java/ 一共分为二十个部分:环境安装之Java.环境安装之IntelliJ IDEA.环境安装之selenium.sele ...

  3. Python基础Day5

    一.字典 ①字典是python的基础数据类型之一 ②字典可以存储大量的数据,关系型数据 ③字典也是python中唯一的映射类的数据类型 字典是以键值对的形式存在的,{键:值} 字典的键必须是不可变的数 ...

  4. 解决服务器openssh漏洞

    解决服务器openssh漏洞 发表于 2019 年 11 月 27 日   1. 检查升级 下载7.4p1 ,链接如下 http://www.openssh.com/portable.html 2.安 ...

  5. 十年种树----小白的起点save

    大家好,给大家介绍一下我自己.各平台通用ID:琴鬼白羊,男,一个24岁学习采矿工程的在读研究僧,一个24岁还在想学习计算机的小白. 非洲经济学家Dambisa Moyo在他的<dead aid& ...

  6. 双端循环列表实现栈(python)

    # -*- coding: utf-8 -*- from collections import deque class Node(object): def __init__(self, value=N ...

  7. js基础知识1

    本博客转自某不知名程序员 1. JavaScript基础分为三个部分: ECMAScript:JavaScript的语法标准.包括变量.表达式.运算符.函数.if语句.for语句等. DOM:操作网页 ...

  8. 《ABCD组》实验十一 团队作业7:团队项目设计完善&编码

    <ABCD组>实验十一 团队作业7:团队项目设计完善&编码 项目 内容 这个作业属于哪个课程 http://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在 ...

  9. vscode源码编译疑难问题

    最近把原来老的源码merge到了新的1.15版本源码,以前的依赖问题会导致各种错误,Loading "gc-signals" failed啦,Error: %1 is not a ...

  10. js中event.preventDefault()和 event.stopPropagation( ) 方法详解

    event.preventDefault() 1.首先event.preventDefault()是通知浏览器不要执行与事件关联的默认动作,例如:  这里a标签的默认事件是跳转,这里我们告诉浏览器取消 ...