当前位置:   article > 正文

线性代数-MIT 18.06-6(b)_顺序主式子怎样算

顺序主式子怎样算


本文在学习《麻省理工公开课 线性代数 MIT 18.06 Linear Algebra》总结反思形成

视频链接:MITB站视频

笔记部分:总结参考子实

28.正定矩阵和最小值

正定性的判断

我们仍然从二阶说起,有矩阵 A = [ a b b d ] A=

[abbd]
A=[abbd],判断其正定性有以下方法:

  1. 矩阵的所有特征值大于零则矩阵正定: λ 1 > 0 ,   λ 2 > 0 \lambda_1>0,\ \lambda_2>0 λ1>0, λ2>0
  2. 矩阵的所有顺序主子阵(leading principal submatrix)的行列式(即顺序主子式,leading principal minor)大于零则矩阵正定: a > 0 ,   a c − b 2 > 0 a>0,\ ac-b^2>0 a>0, acb2>0
  3. 矩阵消元后主元均大于零: a > 0 ,   a c − b 2 a > 0 a>0,\ \frac{ac-b^2}{a}>0 a>0, aacb2>0
  4. x T A x > 0 x^TAx>0 xTAx>0

大多数情况下使用性质4来定义正定性,而用前三条来验证正定性。

来计算一个例子: A = [ 2 6 6 ? ] A=

[266?]
A=[266?],在 ? ? ?处填入多少才能使矩阵正定?

半正定
  1. 来试试 18 18 18,此时矩阵为 A = [ 2 6 6 18 ] A=

    [26618]
    A=[26618] det ⁡ A = 0 \det A=0 detA=0,此时的矩阵成为半正定矩阵(positive semi-definite)。矩阵奇异,其中一个特征值必为 0 0 0,从迹得知另一个特征值为 20 20 20。矩阵的主元只有一个,为 2 2 2

  2. 计算 x T A x x^TAx xTAx,得 [ x 1 x 2 ] [ 2 6 6 18 ] [ x 1 x 2 ] = 2 x 1 2 + 12 x 1 x 2 + 18 x 2 2

    [x1x2]
    [26618]
    [x1x2]
    =2x_1^2+12x_1x_2+18x_2^2 [x1x2][26618][x1x2]=2x12+12x1x2+18x22这样我们得到了一个关于 x 1 , x 2 x_1,x_2 x1,x2的函数 f ( x 1 , x 2 ) = 2 x 1 2 + 12 x 1 x 2 + 18 x 2 2 f(x_1,x_2)=2x_1^2+12x_1x_2+18x_2^2 f(x1,x2)=2x12+12x1x2+18x22,这个函数不再是线性的,在本例中这是一个纯二次型(quadratic)函数,它没有线性部分、一次部分或更高次部分( A x Ax Ax是线性的,但引入 x T x^T xT后就成为了二次型)。

  3. ? ? ? 18 18 18时,判定1、2、3都是“刚好不及格”。

非正定
  1. 我们可以先看“一定不及格”的样子,令 ? = 7 ?=7 ?=7,矩阵为 A = [ 2 6 6 7 ] A=
    [2667]
    A=[2667]
    ,二阶顺序主子式变为 − 22 -22 22,显然矩阵不是正定的,此时的函数为 f ( x 1 , x 2 ) = 2 x 1 2 + 12 x 1 x 2 + 7 x 2 2 f(x_1,x_2)=2x_1^2+12x_1x_2+7x_2^2 f(x1,x2)=2x12+12x1x2+7x22,如果取 x 1 = 1 , x 2 = − 1 x_1=1,x_2=-1 x1=1,x2=1则有 f ( 1 , − 1 ) = 2 − 12 + 7 < 0 f(1,-1)=2-12+7<0 f(1,1)=212+7<0
  2. 如果我们把 z = 2 x 2 + 12 x y + 7 y 2 z=2x^2+12xy+7y^2 z=2x2+12xy+7y2放在直角坐标系中,图像过原点 z ( 0 , 0 ) = 0 z(0,0)=0 z(0,0)=0,当 y = 0 y=0 y=0 x = 0 x=0 x=0 x = y x=y x=y时函数为开口向上的抛物线,所以函数图像在某些方向上是正值;而在某些方向上是负值,比如 x = − y x=-y x=y,所以函数图像是一个马鞍面(saddle)。
  3. ( 0 , 0 , 0 ) (0,0,0) (0,0,0)点称为鞍点(saddle point),它在某些方向上是极大值点,而在另一些方向上是极小值点。(实际上函数图像的最佳观测方向是沿着特征向量的方向。)
正定
  1. 再来看一下“一定及格”的情形,令 ? = 20 ?=20 ?=20,矩阵为 A = [ 2 6 6 20 ] A=
    [26620]
    A=[26620]
    ,行列式为 det ⁡ A = 4 \det A=4 detA=4,迹为 t r a c e ( A ) = 22 trace(A)=22 trace(A)=22,特征向量均大于零,矩阵可以通过测试。此时的函数为 f ( x 1 , x 2 ) = 2 x 1 2 + 12 x 1 x 2 + 20 x 2 2 f(x_1,x_2)=2x_1^2+12x_1x_2+20x_2^2 f(x1,x2)=2x12+12x1x2+20x22,函数在除 ( 0 , 0 ) (0,0) (0,0)外处处为正。
  2. 我们来看看 z = 2 x 2 + 12 x y + 20 y 2 z=2x^2+12xy+20y^2 z=2x2+12xy+20y2的图像,式子的平方项均非负,所以需要两个平方项之和大于中间项即可,该函数的图像为抛物面(paraboloid)。在 ( 0 , 0 ) (0,0) (0,0)点函数的一阶偏导数均为零,二阶偏导数均为正(马鞍面的一阶偏导数也为零,但二阶偏导数并不均为正,所以),函数在该点取极小值。

正定和极小值关系

在微积分中,一元函数取极小值需要一阶导数为零且二阶导数为正 d u d x = 0 , d 2 u d x 2 > 0 \frac{\mathrm{d}u}{\mathrm{d}x}=0, \frac{\mathrm{d}^2u}{\mathrm{d}x^2}>0 dxdu=0,dx2d2u>0。在线性代数中我们遇到了了多元函数 f ( x 1 , x 2 , ⋯   , x n ) f(x_1,x_2,\cdots,x_n) f(x1,x2,,xn),要取极小值需要二阶偏导数矩阵为正定矩阵。

在本例中(即二阶情形),如果能用平方和的形式来表示函数,则很容易看出函数是否恒为正,

  • 如果是上面的 ? = 18 ?=18 ?=18的情形,则有 f ( x , y ) = 2 x 2 + 12 x y + 20 y 2 = 2 ( x + 3 y ) 2 + 2 y 2 f(x,y)=2x^2+12xy+20y^2=2\left(x+3y\right)^2+2y^2 f(x,y)=2x2+12xy+20y2=2(x+3y)2+2y2
  • 如果是上面的 ? = 7 ?=7 ?=7的情形,则有 f ( x , y ) = 2 ( x + 3 y ) 2 − 11 y 2 f(x,y)=2(x+3y)^2-11y^2 f(x,y)=2(x+3y)211y2
  • 如果是 ? = 18 ?=18 ?=18的情形,则有 f ( x , y ) = 2 ( x + 3 y ) 2 f(x,y)=2(x+3y)^2 f(x,y)=2(x+3y)2

提到二阶导数矩阵,这个矩阵型为 [ f x x f x y f y x f y y ]

[fxxfxyfyxfyy]
[fxxfyxfxyfyy],显然,矩阵中的主对角线元素(纯二阶导数)必须为正,并且主对角线元素必须足够大来抵消混合导数的影响。

同时还可以看出,因为二阶导数的求导次序并不影响结果,所以矩阵必须是对称的。现在我们就可以计算 n × n n\times n n×n阶矩阵了。

正定的几何意义

如果令 z = 1 z=1 z=1,相当于使用 z = 1 z=1 z=1平面截取该函数图像,

  • 如果在 ? = 20 ?=20 ?=20的”碗“上截取曲线将得到一个椭圆曲线。
  • 如果在 ? = 7 ?=7 ?=7的马鞍面上截取曲线将得到一对双曲线。

正定配平方和LU消元关系

再来看这个矩阵的消元, [ 2 6 6 20 ] = [ 1 0 − 3 1 ] [ 2 6 0 2 ]

[26620]
=
[1031]
[2602]
[26620]=[1301][2062]

这就是 A = L U A=LU A=LU,可以发现矩阵 L L L中的项与配平方中未知数的系数有关,而主元则与两个平方项外的系数有关,这也就是为什么正数主元得到正定矩阵。

正定例题

计算一个三阶矩阵, A = [ 2 − 1 0 − 1 2 − 1 0 − 1 2 ] A=

[210121012]
A=210121012,它是正定的吗?函数 x T A x x^TAx xTAx是多少?函数在原点去最小值吗?图像是什么样的?

  • 先来计算矩阵的顺序主子式,分别为 2 , 3 , 4 2,3,4 2,3,4;再来计算主元,分别为 2 , 3 2 , 4 3 2,\frac{3}{2},\frac{4}{3} 2,23,34;计算特征值, λ 1 = 2 − 2 , λ 2 = 2 , λ 3 = 2 + 2 \lambda_1=2-\sqrt 2,\lambda_2=2,\lambda_3=2+\sqrt 2 λ1=22 ,λ2=2,λ3=2+2
  • 计算 x T A x = 2 x 1 2 + 2 x 2 2 + 2 x 3 2 − 2 x 1 x 2 − 2 x 2 x 3 x^TAx=2x_1^2+2x_2^2+2x_3^2-2x_1x_2-2x_2x_3 xTAx=2x12+2x22+2x322x1x22x2x3
  • 图像是四维的抛物面,当我们在 f ( x 1 , x 2 , x 3 ) = 1 f(x_1,x_2,x_3)=1 f(x1,x2,x3)=1处截取该面,将得到一个椭圆体。一般椭圆体有三条轴,特征值的大小决定了三条轴的长度,而特征向量的方向与三条轴的方向相同。

现在我们将矩阵 A A A分解为 A = Q Λ Q T A=Q\Lambda Q^T A=QΛQT,可以发现上面说到的各种元素都可以表示在这个分解的矩阵中,我们称之为主轴定理(principal axis theorem),即特征向量说明主轴的方向、特征值说明主轴的长度。

29.相似矩阵和若尔当形

正定矩阵复习

  • 正定矩阵的逆矩阵有什么性质?我们将正定矩阵分解为 A = S Λ S − 1 A=S\Lambda S^{-1} A=SΛS1,引入其逆矩阵 A − 1 = S Λ − 1 S − 1 A^{-1}=S\Lambda^{-1}S^{-1} A1=SΛ1S1,我们知道正定矩阵的特征值均为正值,所以其逆矩阵的特征值也必为正值(即原矩阵特征值的倒数)所以,正定矩阵的逆矩阵也是正定的。

  • 如果 A ,   B A,\ B A, B均为正定矩阵,那么 A + B A+B A+B呢?我们可以从判定 x T ( A + B ) x x^T(A+B)x xT(A+B)x入手,根据条件有 x T A x > 0 ,   x T B x > 0 x^TAx>0,\ x^TBx>0 xTAx>0, xTBx>0,将两式相加即得到 x T ( A + B ) x > 0 x^T(A+B)x>0 xT(A+B)x>0。所以正定矩阵之和也是正定矩阵。

  • 再来看有 m × n m\times n m×n矩阵 A A A,则 A T A A^TA ATA具有什么性质?我们在投影部分经常使用 A T A A^TA ATA,这个运算会得到一个对称矩阵,这个形式的运算用数字打比方就像是一个平方,用向量打比方就像是向量的长度平方,而对于矩阵,有 A T A A^TA ATA正定:在式子两边分别乘向量及其转置得到 x T A T A x x^TA^TAx xTATAx,分组得到 ( A x ) T ( A x ) (Ax)^T(Ax) (Ax)T(Ax),相当于得到了向量 A x Ax Ax的长度平方,则 ∣ A x ∣ 2 ≥ 0 |Ax|^2\geq0 Ax20

    要保证模不为零,则需要 A x Ax Ax的零空间中仅有零向量,即 A A A各列线性无关 r a n k ( A ) = n rank(A)=n rank(A)=n即可保证 ∣ A x ∣ 2 > 0 |Ax|^2>0 Ax2>0 A T A A^TA ATA正定。

  • 在矩阵数值计算中,正定矩阵消元不需要进行“行交换”操作,也不必担心主元过小或为零,正定矩阵具有良好的计算性质。

相似矩阵

定义

矩阵 A ,   B A,\ B A, B对于某矩阵 M M M满足 B = M − 1 A M B=M^{-1}AM B=M1AM时,成 A ,   B A,\ B A, B互为相似矩阵。

**例:**相似矩阵举例(对角化)

对于在对角化一讲(第二十二讲)中学过的式子 S − 1 A S = Λ S^{-1}AS=\Lambda S1AS=Λ,则有 A A A相似于 Λ \Lambda Λ

  • A = [ 2 1 1 2 ] A=

    [2112]
    A=[2112],容易通过其特征值得到相应的对角矩阵 Λ = [ 3 0 0 1 ] \Lambda=
    [3001]
    Λ=[3001]
    ,取 M = [ 1 4 0 1 ] M=
    [1401]
    M=[1041]
    ,则 B = M − 1 A M = [ 1 − 4 0 1 ] [ 2 1 1 2 ] [ 1 4 0 1 ] = [ − 2 − 15 1 6 ] B=M^{-1}AM=
    [1401]
    [2112]
    [1401]
    =
    [21516]
    B=M1AM=[1041][2112][1041]=[21156]

    我们来计算这几个矩阵的的特征值(利用迹与行列式的性质), λ Λ = 3 ,   1 \lambda_{\Lambda}=3,\ 1 λΛ=3, 1 λ A = 3 ,   1 \lambda_A=3,\ 1 λA=3, 1 λ B = 3 ,   1 \lambda_B=3,\ 1 λB=3, 1

所以,相似矩阵有相同的特征值。

  • 继续上面的例子,特征值为 3 ,   1 3,\ 1 3, 1的这一族矩阵都是相似矩阵,如 [ 3 7 0 1 ]
    [3701]
    [3071]
    [ 1 7 0 3 ]
    [1703]
    [1073]
    ,其中最特殊的就是 Λ \Lambda Λ
证明:相似矩阵特征值相等

A x = λ x ,   B = M − 1 A M Ax=\lambda x,\ B=M^{-1}AM Ax=λx, B=M1AM

第一个式子化为 A M M − 1 x = λ x AMM^{-1}x=\lambda x AMM1x=λx

接着两边同时左乘 M − 1 M^{-1} M1 M − 1 A M M − 1 x = λ M − 1 x M^{-1}AMM^{-1}x=\lambda M^{-1}x M1AMM1x=λM1x

进行适当的分组得 ( M − 1 A M ) M − 1 x = λ M − 1 x \left(M^{-1}AM\right)M^{-1}x=\lambda M^{-1}x (M1AM)M1x=λM1x B M − 1 x = λ M − 1 x BM^{-1}x=\lambda M^{-1}x BM1x=λM1x

B M − 1 = λ M − 1 x BM^{-1}=\lambda M^{-1}x BM1=λM1x可以解读成矩阵 B B B与向量 M − 1 x M^{-1}x M1x之积等于 λ \lambda λ与向量 M − 1 x M^{-1}x M1x之积,也就是 B B B的仍为 λ \lambda λ,而特征向量变为 M − 1 x M^{-1}x M1x

特征值重复情形

以上就是我们得到的一族特征值为 3 ,   1 3,\ 1 3, 1的矩阵,它们具有相同的特征值。接下来看特征值重复时的情形。

  • 特征值重复可能会导致特征向量短缺

    来看一个例子,设 λ 1 = λ 2 = 4 \lambda_1=\lambda_2=4 λ1=λ2=4,写出具有这种特征值的矩阵中的两个 [ 4 0 0 4 ]

    [4004]
    [4004] [ 4 1 0 4 ]
    [4104]
    [4014]

    具有这种特征值的矩阵可以分为两族,

    1. 第一族仅有一个矩阵 [ 4 0 0 4 ]

      [4004]
      [4004],它只与自己相似(因为 M − 1 [ 4 0 0 4 ] M = 4 M − 1 I M = 4 I = [ 4 0 0 4 ] M^{-1}
      [4004]
      M=4M^{-1}IM=4I=
      [4004]
      M1[4004]M=4M1IM=4I=[4004]
      ,所以无论 M M M如何取值该对角矩阵都只与自己相似);

    2. 另一族就是剩下的诸如 [ 4 1 0 4 ]

      [4104]
      [4014]的矩阵,它们都是相似的。在这个“大家族”中, [ 4 1 0 4 ]
      [4104]
      [4014]
      是“最好”的一个矩阵,称为若尔当形

若尔当形在过去是线性代数的核心知识,但现在不是(现在是奇异值分解),因为它并不容易计算。

  • 继续上面的例子,我们再举出几个这一族的矩阵 [ 4 1 0 4 ] ,   [ 5 1 − 1 3 ] ,   [ 4 0 17 4 ]
    [4104]
    ,\
    [5113]
    ,\
    [40174]
    [4014], [5113], [41704]
    ,我们总是可以构造出一个满足 t r a c e ( A ) = 8 ,   det ⁡ A = 16 trace(A)=8,\ \det A=16 trace(A)=8, detA=16的矩阵,这个矩阵总是在这一个“家族”中。

若尔当形

若尔当理解

再来看一个更加“糟糕”的矩阵:

  • 矩阵 [ 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 ]

    [0100001000000000]
    0000100001000000,其特征值为四个零。很明显矩阵的秩为 2 2 2,所以其零空间的维数为 4 − 2 = 2 4-2=2 42=2,即该矩阵有两个特征向量。可以发现该矩阵在主对角线的上方有两个 1 1 1,在对角线上每增加一个 1 1 1,特征向量个个数就减少一个。

  • 另一个例子, [ 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 ]

    [0100000000010000]
    0000100000000010,从特征向量的数目看来这两个矩阵是相似的,其实不然。

    若尔当认为第一个矩阵是由一个 3 × 3 3\times 3 3×3的块与一个 1 × 1 1\times 1 1×1的块组成的
    [ 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 ] \left[

    0100000000010000
    \right] 0000100000000010
    而第二个矩阵是由两个 2 × 2 2\times 2 2×2矩阵组成的,这些分块被称为若尔当块。
    [ 0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 ] \left[
    0100000000010000
    \right]
    0000100000000010

若尔当形式

若尔当块的定义型为 J i = [ λ i 1 ⋯ λ i 1 ⋯ λ i ⋯ ⋮ ⋮ ⋮ ⋱ λ i ] J_i=

[λi1λi1λiλi]
Ji=λi1λi1λiλi

它的对角线上只为同一个数,仅有一个特征向量。

所以有,每一个矩阵 A A A都相似于一个若尔当矩阵,型为 J = [ J 1 J 2 ⋱ J d ] J=\left[

J1J2Jd
\right] J=J1J2Jd

注意,对角线上方还有 1 1 1。若尔当块的个数即为矩阵特征值的个数。

在矩阵为“好矩阵”的情况下, n n n阶矩阵将有 n n n个不同的特征值,那么它可以对角化,所以它的若尔当矩阵就是 Λ \Lambda Λ,共 n n n个特征向量,有 n n n个若尔当块。

30.奇异值分解

本讲我们介绍将一个矩阵写为 A = U Σ V T A=U\varSigma V^T A=UΣVT,分解的因子分别为正交矩阵、对角矩阵、正交矩阵,与前面几讲的分解不同的是,这两个正交矩阵通常是不同的,而且这个式子可以对任意矩阵使用,不仅限于方阵、可对角化的方阵等。

分解归纳

  • 在正定一讲中(第二十八讲)我们知道一个正定矩阵可以分解为 A = Q Λ Q T A=Q\Lambda Q^T A=QΛQT的形式,由于 A A A对称性其特征向量是正交的,且其 Λ \Lambda Λ矩阵中的元素皆为正,这就是正定矩阵的奇异值分解。在这种特殊的分解中,我们只需要一个正交矩阵 Q Q Q就可以使等式成立。
  • 在对角化一讲中(第二十二讲),我们知道可对角化的矩阵能够分解为 A = S Λ S T A=S\Lambda S^T A=SΛST的形式,其中 S S S的列向量由 A A A的特征向量组成,但 S S S并不是正交矩阵,所以这不是我们希望得到的奇异值分解。

SVD分解目的

目标:我们现在要做的是,在 A A A列空间中找到一组特殊的正交基 v 1 , v 2 , ⋯   , v r v_1,v_2,\cdots,v_r v1,v2,,vr,这组基在 A A A的作用下可以转换为 A A A行空间中的一组正交基 u 1 , u 2 , ⋯   , u r u_1,u_2,\cdots,u_r u1,u2,,ur

用矩阵语言描述为
A [ v 1   v 2   ⋯   v r ] = [ σ 1 u 1   σ 2 u 2   ⋯   σ r u r ] = [ u 1   u 2   ⋯   u r ] [ σ 1 σ 2 ⋱ σ n ] A\Bigg[v_1\ v_2\ \cdots\ v_r\Bigg]=\Bigg[\sigma_1u_1\ \sigma_2u_2\ \cdots\ \sigma_ru_r\Bigg]=\Bigg[u_1\ u_2\ \cdots\ u_r\Bigg]

[σ1σ2σn]
A[v1 v2  vr]=[σ1u1 σ2u2  σrur]=[u1 u2  ur]σ1σ2σn

A v 1 = σ 1 u 1 ,   A v 2 = σ 2 u 2 , ⋯   , A v r = σ r u r Av_1=\sigma_1u_1,\ Av_2=\sigma_2u_2,\cdots,Av_r=\sigma_ru_r Av1=σ1u1, Av2=σ2u2,,Avr=σrur,这些 σ \sigma σ是缩放因子,表示在转换过程中有拉伸或压缩。

A A A的左零空间和零空间将体现在 σ \sigma σ的零值中。

另外,如果算上左零、零空间,我们同样可以对左零、零空间取标准正交基,然后写为
A [ v 1   v 2   ⋯   v r   v r + 1   ⋯   v m ] = [ u 1   u 2   ⋯   u r   u r + 1   ⋯   u n ] [ σ 1 ⋱ σ r [ 0 ] ] A\Bigg[v_1\ v_2\ \cdots\ v_r\ v_{r+1}\ \cdots\ v_m\Bigg]=\Bigg[u_1\ u_2\ \cdots\ u_r\ u_{r+1}\ \cdots \ u_n\Bigg]\left[

σ1σr[0]
\right] A[v1 v2  vr vr+1  vm]=[u1 u2  ur ur+1  un]σ1σr[0]
此时 U U U m × m m\times m m×m正交矩阵, Σ \varSigma Σ m × n m\times n m×n对角矩阵, V T V^T VT n × n n\times n n×n正交矩阵。

最终可以写为
A V = U Σ AV=U\varSigma AV=UΣ

可以看出这十分类似对角化的公式,矩阵 A A A被转化为对角矩阵 Σ \varSigma Σ,我们也注意到 U ,   V U,\ V U, V是两组不同的正交基。

(在正定的情况下, U ,   V U,\ V U, V都变成了 Q Q Q。)。进一步可以写作 A = U Σ V − 1 A=U\varSigma V^{-1} A=UΣV1,因为 V V V是标准正交矩阵所以可以写为 A = U Σ V T A=U\varSigma V^T A=UΣVT

SVD分解计算实例

计算一个案例, A = [ 4 4 − 3 3 ] A=

[4433]
A=[4343],我们需要找到:

  • 行空间 R 2 \mathbb{R}^2 R2的标准正交基 v 1 , v 2 v_1,v_2 v1,v2
  • 列空间 R 2 \mathbb{R}^2 R2的标准正交基 u 1 , u 2 u_1,u_2 u1,u2
  • σ 1 > 0 , σ 2 > 0 \sigma_1>0, \sigma_2>0 σ1>0,σ2>0

A = U Σ V T A=U\varSigma V^T A=UΣVT中有两个标准正交矩阵需要求解,我们希望一次只解一个,如何先将 U U U消去来求 V V V

求解技巧 A T A A^TA ATA A A T AA^T AAT
技巧原理
  • 这个技巧会经常出现在长方形矩阵中:求 A T A A^TA ATA消掉 U U U

A T A A^TA ATA是一个对称正定矩阵(至少是半正定矩阵),于是有 A T A = V Σ T U T U Σ V T A^TA=V\varSigma^TU^TU\varSigma V^T ATA=VΣTUTUΣVT,由于 U U U是标准正交矩阵,所以 U T U = I U^TU=I UTU=I,而 Σ T Σ \varSigma^T\varSigma ΣTΣ是对角线元素为 σ 2 \sigma^2 σ2的对角矩阵。

现在有(通过 A T A A^TA ATA求解 V V V
A T A = V [ σ 1 σ 2 ⋱ σ n ] V T A^TA=V

[σ1σ2σn]
V^T ATA=Vσ1σ2σnVT
这个式子中 V V V即是 A T A A^TA ATA的特征向量矩阵而 Σ 2 \varSigma^2 Σ2是其特征值矩阵。

  • 同理,我们只想求 U U U时,用 A A T AA^T AAT消掉 V V V即可。
计算步骤

例1:

  1. 我们来计算 A T A = [ 4 − 3 4 3 ] [ 4 4 − 3 3 ] = [ 25 7 7 25 ] A^TA=
    [4343]
    [4433]
    =
    [257725]
    ATA=[4433][4343]=[257725]
    ,对于简单的矩阵可以直接观察得到特征向量 A T A [ 1 1 ] = 32 [ 1 1 ] ,   A T A [ 1 − 1 ] = 18 [ 1 − 1 ] A^TA
    [11]
    =32
    [11]
    ,\ A^TA
    [11]
    =18
    [11]
    ATA[11]=32[11], ATA[11]=18[11]
    ,化为单位向量有 σ 1 = 32 ,   v 1 = [ 1 2 1 2 ] ,   σ 2 = 18 ,   v 2 = [ 1 2 − 1 2 ] \sigma_1=32,\ v_1=
    [1212]
    ,\ \sigma_2=18,\ v_2=
    [1212]
    σ1=32, v1=[2 12 1], σ2=18, v2=[2 12 1]

到目前为止,我们得到 [ 4 4 − 3 3 ] = [ u ? u ? u ? u ? ] [ 32 0 0 18 ] [ 1 2 1 2 1 2 − 1 2 ]

[4433]
=
[u?u?u?u?]
[320018]
[12121212]
[4343]=[u?u?u?u?][32 0018 ][2 12 12 12 1],接下来继续求解 U U U

  1. A A T = U Σ V T V Σ T U T = U Σ 2 U T AA^T=U\varSigma V^TV\varSigma^TU^T=U\varSigma^2U^T AAT=UΣVTVΣTUT=UΣ2UT,求出 A A T AA^T AAT的特征向量即可得到 U U U [ 4 4 − 3 3 ] [ 4 − 3 4 3 ] = [ 32 0 0 18 ]

    [4433]
    [4343]
    =
    [320018]
    [4343][4433]=[320018],观察得 A A T [ 1 0 ] = 32 [ 1 0 ] ,   A A T [ 0 1 ] = 18 [ 0 1 ] AA^T
    [10]
    =32
    [10]
    ,\ AA^T
    [01]
    =18
    [01]
    AAT[10]=32[10], AAT[01]=18[01]

    但是我们不能直接使用这一组特征向量,因为式子 A V = U Σ AV=U\varSigma AV=UΣ明确告诉我们,一旦 V V V确定下来, U U U也必须取能够满足该式的向量,

    所以此处 A v 2 = [ 0 − 18 ] = u 2 σ 2 = [ 0 − 1 ] 18 Av_2=

    [018]
    =u_2\sigma_2=
    [01]
    \sqrt{18} Av2=[018 ]=u2σ2=[01]18 ,则 u 1 = [ 1 0 ] ,   u 2 = [ 0 − 1 ] u_1=
    [10]
    ,\ u_2=
    [01]
    u1=[10], u2=[01]

该问题在本讲的官方笔记中有详细说明。

  1. 最终,我们得到 [ 4 4 − 3 3 ] = [ 1 0 0 − 1 ] [ 32 0 0 18 ] [ 1 2 1 2 1 2 − 1 2 ]
    [4433]
    =
    [1001]
    [320018]
    [12121212]
    [4343]=[1001][32 0018 ][2 12 12 12 1]

例2:

A = [ 4 3 8 6 ] A=

[4386]
A=[4836],这是个秩一矩阵,有零空间。 A A A的行空间为 [ 4 3 ]
[43]
[43]
的倍数, A A A的列空间为 [ 4 8 ]
[48]
[48]
的倍数。

  • 标准化向量得 v 1 = [ 0.8 0.6 ] ,   u 1 = 1 5 [ 1 2 ] v_1=
    [0.80.6]
    ,\ u_1=\frac{1}{\sqrt{5}}
    [12]
    v1=[0.80.6], u1=5 1[12]
  • A T A = [ 4 8 3 6 ] [ 4 3 8 6 ] = [ 80 60 60 45 ] A^TA=
    [4836]
    [4386]
    =
    [80606045]
    ATA=[4386][4836]=[80606045]
    ,由于 A A A是秩一矩阵,则 A T A A^TA ATA也不满秩,所以必有特征值 0 0 0,则另特征值一个由迹可知为 125 125 125
  • 继续求零空间的特征向量,有 v 2 = [ 0.6 − 0 , 8 ] ,   u 1 = 1 5 [ 2 − 1 ] v_2=
    [0.60,8]
    ,\ u_1=\frac{1}{\sqrt{5}}
    [21]
    v2=[0.60,8], u1=5 1[21]

最终得到 [ 4 3 8 6 ] = [ 1 2 ‾ 2 − 1 ‾ ] [ 125 0 0 0 ‾ ] [ 0.8 0.6 0.6 ‾ − 0.8 ‾ ]

[4386]
=
[12_21_]
[125000_]
[0.80.60.6_0.8_]
[4836]=[1221][125 000][0.80.60.60.8],其中下划线部分都是与零空间相关的部分。

补充结论

补充: A B AB AB的特征值与 B A BA BA的特征值相同

证明来自Are the eigenvalues of AB equal to the eigenvalues of BA? (Citation needed!)

λ ≠ 0 \lambda\neq 0 λ=0 v v v A B AB AB在特征值取 λ \lambda λ时的的特征向量,则有 B v ≠ 0 Bv\neq 0 Bv=0,并有 λ B v = B ( λ v ) = B ( A B v ) = ( B A ) B v \lambda Bv=B(\lambda v)=B(ABv)=(BA)Bv λBv=B(λv)=B(ABv)=(BA)Bv,所以 B v Bv Bv B A BA BA在特征值取同一个 λ \lambda λ时的特征向量。

再取 A B AB AB的特征值 λ = 0 \lambda=0 λ=0,则 0 = det ⁡ A B = det ⁡ A det ⁡ B = det ⁡ B A 0=\det{AB}=\det{A}\det{B}=\det{BA} 0=detAB=detAdetB=detBA,所以 λ = 0 \lambda=0 λ=0也是 B A BA BA的特征值,得证。

SVD分解总结

A = U Σ V T A=U\varSigma V^T A=UΣVT

  • v 1 ,   ⋯   ,   v r v_1,\ \cdots,\ v_r v1, , vr是行空间的标准正交基;
  • u 1 ,   ⋯   ,   u r u_1,\ \cdots,\ u_r u1, , ur是列空间的标准正交基;
  • v r + 1 ,   ⋯   ,   v n v_{r+1},\ \cdots,\ v_n vr+1, , vn是零空间的标准正交基;
  • u r + 1 ,   ⋯   ,   u m u_{r+1},\ \cdots,\ u_m ur+1, , um是左零空间的标准正交基。

ab-equal-to-the-eigenvalues-of-ba-citation-needed)

λ ≠ 0 \lambda\neq 0 λ=0 v v v A B AB AB在特征值取 λ \lambda λ时的的特征向量,则有 B v ≠ 0 Bv\neq 0 Bv=0,并有 λ B v = B ( λ v ) = B ( A B v ) = ( B A ) B v \lambda Bv=B(\lambda v)=B(ABv)=(BA)Bv λBv=B(λv)=B(ABv)=(BA)Bv,所以 B v Bv Bv B A BA BA在特征值取同一个 λ \lambda λ时的特征向量。

再取 A B AB AB的特征值 λ = 0 \lambda=0 λ=0,则 0 = det ⁡ A B = det ⁡ A det ⁡ B = det ⁡ B A 0=\det{AB}=\det{A}\det{B}=\det{BA} 0=detAB=detAdetB=detBA,所以 λ = 0 \lambda=0 λ=0也是 B A BA BA的特征值,得证。

SVD分解总结

A = U Σ V T A=U\varSigma V^T A=UΣVT

  • v 1 ,   ⋯   ,   v r v_1,\ \cdots,\ v_r v1, , vr是行空间的标准正交基;
  • u 1 ,   ⋯   ,   u r u_1,\ \cdots,\ u_r u1, , ur是列空间的标准正交基;
  • v r + 1 ,   ⋯   ,   v n v_{r+1},\ \cdots,\ v_n vr+1, , vn是零空间的标准正交基;
  • u r + 1 ,   ⋯   ,   u m u_{r+1},\ \cdots,\ u_m ur+1, , um是左零空间的标准正交基。

通过将矩阵写为 A v i = σ i u i Av_i=\sigma_iu_i Avi=σiui形式,将矩阵对角化,向量 u ,   v u,\ v u, v之间没有耦合, A A A乘以每个 v v v都能得到一个相应的 u u u

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/767764
推荐阅读
相关标签
  

闽ICP备14008679号