解读矩阵协议: 第四 生成空间-经典方式LU

183 阅读4分钟

写在前面

对我来说,家不是一个地方,而是一个人,我们分开后,终于又回家了。
        --- 安娜的法式吻 anna french kiss
       

两个人相遇就像两种化学物质接触,如果有任何反应,两者都发生变化。

5 概念和几个例子

以下为已知的常见矩阵分解方式,以生成不同的

A = LU,  A=PLU, A = QR, S = Q ^ Q^t 
A = U*ΣV^t,  A = CR

而使用列元素乘以行,是积木式地创建新矩阵。

   A = LU  
   (L是英文中L的意思,U是upper的意思。 lower triangular matrix 和 upper triangular matrix)
  

例1:

		2x + 3y = 7     2x + 3y = 7    x  = 2 
		4x + 7y = 15          y = 1 

所以有

	A = ( 2 3    =  LU = (1  02  3 
	      4 7)            2  1)      0  1)

    PA = LU  (行交换)
    * 下三角 也就是L 可以通过先计算得到 矩阵A的最简形U,然后配合原矩阵 逆向求值。
      

例2: 通过初等变换,获得上/下三角阵 A = LU, LU分解 有4x4矩阵如下:

         A = ( 2   4  3  5
             -4   -7 -5 -8
              6    8  2  9
              4    9  -2 14)
              

我们将转换特征矩阵到 下三角矩阵 也就是L,
以下为初等变换过程,将原矩阵 A 分解为 L 和 U

   A = LU = ( 1  0  0  0      (2  4  3  5  
                   0  1  0  0   *  -4  -7 -5 -8
                   0  0  1  0       6  8  2  9
                   0  0  0  1)      4  9 -2 14)

计算第一列: L 第二行首位为 -2,因为原矩阵A,行变换 第二行 减去了 第一行 -2 倍

           = ( 1  0  0  0      (2  4  3  5  I
              -2  1  0  0   *   0  1  1  2  II - (-2)*I
               3  0  1  0       0 -4 -7 -6   III - 3*I
               2  0  0  1)      0  1 -8  4)  IV - (2)*I
       

计算第二列:

           = ( 1  0  0  0      (2  4  3  5  I
              -2  1  0  0   *   0  1  1  2   II 
               3 -4  1  0       0  0 -3  2  III - (-4)*II
               2  1  0  1)      0  0 -9  2)  IV - II
                 

计算第三列:

            A =     L     *      U
            = ( 1  0  0  0      (2  4  3  5  I
               -2  1  0  0   *   0  1  1  2   II 
                3 -4  1  0       0  0 -3  2  III 
                2  1  3  1)      0  0 -9  2)  IV - (3)*III

5.1 行列式为多少

矩阵A的分解阵,L 和 U 的行列式分别为多少?

        det(L) = 1
        det(U) = 2 *  1 * -3 * 2 = -12

计算过程证明:

        U =   (2  4  3  5  I 
               0  1  1  2   II 
               0  0 -3  2  III 
               0  0  0 -4)  IV            
    

该上三角阵的行列式 等于 a 乘以它的余子式(a 去掉所在行和所在列,剩下的矩阵)

第一行首元乘以其余子式 第二行首元乘以其余子式 ... 其他零项 乘以余子式

        det(U) = 2| 1  1  2 |      -     0| 4   3   5  |  ...  
                  | 0 -3  2 |             | 0  -3   2  |
                  | 0  0 -4 |             | 0   0  -4  |
                
                = 2* 1*| -3  2 |
                       |  0 -4 |
                = 2* 1* -3* |-4|
                = 24

PLU分解是在LU分解的基础上,记录了 行变换的过程
	p1->2p3->4LU
            

5.3 生成矩阵的特征

从下图,可以看到以上子矩阵与零矩阵的关系,R^n的两个子空间,和R^m 的两个子空间。

从行空间到列空间,A是可逆的,这让整个矩阵分裂为两块。 (MIT)

bpic_row_to_cloumn.png

矩阵A 在左乘某向量 ->x, 将得到右侧的结果,比如A乘某向量 ->v, 将得到列的线性组合。

A*->x 等于矩阵A中列向量的线性组合。
(1) 行空间 正交于零空间          
(2) 列向量空间正交于 A的转置矩阵 零空间

A*->x = 0 所以 ( row1     * (      =   (0
                  ...          x         0
                  rown )        )        0

x 与 A的每一行正交相乘,在零空间中,A的每个x是与A的行空间正交。

同时A的转置 A^t 的零空间每个y 与 A的列空间正交。

两个正交子空间,空间维度添加到 n 和 m,列的任何线性组合使得 A->x = 0.

行点乘向量列 ->x 为零,那么在 n 维空间与这些行是正交的,即垂直于列x。

那么就是寻找一个垂直于全部A的行的向量 ->x。

小节 总结

也许将来会有更多内容和新的方式,但是这个是第一步。 下一节我们将继续学习和讨论其他的方式。 请关注,感谢万分。