夜雨聆风学习资料网

ARTICLE · 1012853

高代习题选解|SVD分解,Sherman-Morrison公式和矩阵行列式引理

高代习题选解|SVD分解,Sherman-Morrison公式和矩阵行列式引理

高代习题选解|SVD分解,Sherman-Morrison公式和矩阵行列式引理

再更几道高代习题吧

预告一下,本学期在四门数学课的高强度轰炸下我会大量产出一些关于优化和数值计算的文章

例1:SVD分解的计算

Example (Exercise 1)
Determine SVDs of the following matrices:
(a) , (b) , (c) , (d) , (e) .

分析 首先,什么是SVD分解?

SVD,即singular value decomposion, 奇异值分解,对任意矩阵都存在酉矩阵和满足

其中满足

为的奇异值。

有些资料还会规定

这里也采用这种排序后的对角阵排列。

作为习题选解,这篇文章对知识本身的motivation无法做到深入,后面要是有空就写,can't make any promise

如何求给定矩阵的SVD?

关于SVD我会再单开一些专题细讲,这里直接放答案(要不然这周更新就写不完了[哭])

算法:

Input: A (given matrix)
Step 1: 计算 A^TA 和AA^T
Step 2: 计算 A^TA 和AA^T 的特征值,顺便对非零特征值\lambda_1, ... \lambda_r 排序
Step 3: 
Output: 酉矩阵U, V, 对角阵\Sigma

参考:奇异值分解(SVD)的定义、证明和求法[1]

Sherman-Morrison 公式

Example (Exercise 2)
Show that if  is nonsingular, then

分析 这个结构里出现了,所以先思考:对可逆,是否有可逆?

这里虽然不一定同型(完全可能一个是一个是),但其实地位上是对称的,换句话说如果任意可逆也应该有可逆,所以不妨猜

只需证明

记,则

即

展开上式右边得

容易计算得出,故可逆

进一步地可以计算得出

解答 记,则

即,从而

也容易计算得出,故可逆,记,同样的处理方式可得

即

命题得证。

注 事实上这道题的背景是上周文章写过的Sherman-Morrison-Woodbury 公式

矩阵行列式引理

Example (Exercise 3)
Suppose that  is nonsingular and . Show that with  and , it follows from the Sherman-Morrison formula that

分析 这个故事告诉我们一个道理,当且仅当非零参数时

由于可逆,故

只需证明奇异当且仅当或奇异当且仅当

OK那么问题来了,选择哪个?

因为给出的的形式中出现了,所以直观感受上,选更make sense

考察线性方程组,容易知道等价于线性方程组有非零解,而令可知

当且仅当即时上式对恒成立,也即此时线性方程组有非零解,从而命题得证。

当然也可以用矩阵行列式引理,对可逆矩阵有

证明见附录(感谢DS)

解答 (法1)

考察线性方程组,容易知道等价于线性方程组有非零解,而令可知

当且仅当即时上式对恒成立,也即此时线性方程组有非零解。由于可逆,故

从而命题得证。

(法2)由矩阵行列式引理,

从而

从而命题得证!

附录

矩阵行列式引理的证明

这部分感谢DeepSeek

矩阵行列式引理(Matrix Determinant Lemma)最常用的形式是:对于可逆矩阵  和列向量 ,有

方法一:从特征值角度证明(最直观)

证明目标:证明 。

步骤 1:分析矩阵  的特征值
设  和  是  维非零列向量。矩阵  是一个  的矩阵,且它的秩为 1(因为它的每一列都是  的倍数)。

  • • 对于秩为 1 的矩阵,它有  个特征值为 。
  • • 剩下的那个非零特征值等于它的迹(Trace)。
  • • 计算  的迹:。由于  是一个标量,所以 。
  • • 因此, 的特征值为:,。

步骤 2:推导  的特征值
如果  是矩阵  的特征值,那么  就是矩阵  的特征值。
所以,矩阵  的特征值为:

  • • 
  • • 

步骤 3:利用行列式等于特征值之积
矩阵的行列式等于其所有特征值的乘积(考虑代数重数)。

证毕。

(注:这个证明即使当  时也成立,此时  是幂零矩阵,所有特征值为 0,行列式为 1。)


方法二:构造分块矩阵(最严谨的代数证明)

证明目标:证明 。

步骤 1:构造一个巧妙的分块矩阵
构造一个  的分块矩阵 :

其中  是  的标量,  是  的行向量, 是  的列向量, 是  的单位矩阵。

步骤 2:用两种不同的方式计算 

方式 A:利用分块矩阵的行列式公式(舒尔补)
对于分块矩阵 ,如果  可逆,其行列式为 。
在这里,(可逆),,,。
代入公式:

所以,方式 A 得到的结果是 。

方式 B:对分块矩阵进行初等行变换
我们对  做分块初等行变换:将第一行的  倍加到第二行上(即 )。

这是一个分块上三角矩阵,它的行列式等于对角线分块矩阵行列式的乘积:

由于左乘的矩阵  是分块下三角矩阵,其行列式为 ,所以变换后的行列式等于原矩阵的行列式。这也印证了 方式 A 得到的结果。

方式 C:直接用分块矩阵的行列式展开(另一种视角)
我们也可以对  进行另一种分块消元,把右下角变成单位矩阵。
利用列变换:(这里稍微抽象一点,可以直接用分块高斯消元)。
考虑对  做分块列变换:

对这个下三角分块矩阵取行列式,得到 。这依然回到相同的式子。
更简单的方法是直接对  用另一个舒尔补公式:

。

步骤 3:联立结果
由方式 A 和方式 C(或者方式 B 配合另一种展开)可知:

证毕。


推广到一般形式

如果你需要证明一般形式 ,只需利用  可逆的性质:

两边取行列式:

令 ,利用上面证明的特殊形式:

代回即得:

创作规范声明

本文包含AI辅助创作,具体在文中已标明。

引用链接

[1] 奇异值分解(SVD)的定义、证明和求法: https://zhuanlan.zhihu.com/p/399547902

相关学习资料