这篇博文主要讲解关于线性代数中矩阵的逆的那些事。
首先,方阵(n*n)才有单位矩阵和逆的概念。所以下面提到的都会是矩阵都指方阵。
单位矩阵
矩阵的逆与单位矩阵的概念息息相关。
如单位长度,单位1,等等这些前缀是单位的概念们一样,矩阵里的单位矩阵同样特殊。
简而言之,任何矩阵 A 乘以单位矩阵 I 等于它自身。即
A
I
=
A
A I =A
AI=A
下面的便是一个三乘三的单位矩阵:
1 0 0 0 1 0 0 0 1 \begin{matrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 1 \end{matrix} \ 100010001
有兴趣的小伙伴可以试试矩阵乘法,将单位矩阵与其他同样大小的方阵相乘,看是不是会得到同一个方阵。
总结,单位矩阵即为正对角线上元素为1,其余元素为0的方阵。
矩阵的逆
矩阵的逆的概念为,如果
A
B
=
I
(
单位矩阵
)
AB=I(单位矩阵)
AB=I(单位矩阵)
那么,矩阵B是矩阵A的逆。说实话,看到这个概念第一个想到的是倒数(ab=1),虽然书上没写。
有一个特殊的点是矩阵与其逆满足交换律,矩阵乘逆等于单位矩阵,逆乘矩阵也等于单位矩阵。
判断矩阵是否有逆
1
2
3
6
\begin{matrix} 1 & 2 \\ 3 & 6 \end{matrix}
1326
如何快速知道这个矩阵是否有逆呢?
法一 瞪眼 观察法
我们知道,矩阵右乘即为矩阵的列的线性组合。
那么,在一些特殊情况下,我们很明显就能看出这个矩阵的列的线性组合能否得到单位矩阵。
比如上面的矩阵,很明显,因为两列成倍数,或者说在同一条直线上(这一点值得细品),他们的线性组合不能覆盖整个空间,而单位矩阵也不在他们所在的直线上,所以没有逆。
这个方法写在这里与其说是用来判断逆,不如说是为了更好帮助你理解线性组合这一概念,并引出了矩阵可能在图像上的这种思路,我想我们后面一定会用到的。
法二 利用单位矩阵
A
B
=
I
(
单位矩阵
)
AB=I(单位矩阵)
AB=I(单位矩阵)
首先,矩阵有逆说明存在矩阵B,能使A满足这个关系式。
那么,我们可以推出这个结论:
如果存在 A X = 0 , X 不为非零矩阵 , 那么矩阵 A 没有逆 如果存在AX=0,X不为非零矩阵,那么矩阵A没有逆 如果存在AX=0,X不为非零矩阵,那么矩阵A没有逆
推导逻辑如下:
A X = 0 , 两边同时乘 B → A B X = 0 → I X = 0 → X = 0 AX=0, \\两边同时乘B\rightarrow ABX=0\rightarrow IX=0\rightarrow X=0 AX=0,两边同时乘B→ABX=0→IX=0→X=0
可以看到,矩阵A存在逆和AX=0这两个命题矛盾,因此如果能找到矩阵X使AX=0便能证明矩阵A没有逆。
求解矩阵的逆——高斯-若尔单消元法
1 3 2 7 \begin{matrix} 1 & 3 \\ 2 & 7 \end{matrix} 1237
矩阵A如上。
已知矩阵A有逆,要求矩阵的逆,我们第一次想到的应该是如下方法:
[ 1 3 2 7 ] [ a b c d ] = [ 1 0 0 1 ] (1) \left[ \begin{matrix} 1 & 3 \\ 2 & 7 \end{matrix} \right] \left[ \begin{matrix} a & b \\ c & d \end{matrix} \right] = \left[\begin{matrix} 1 & 0 \\ 0 & 1 \end{matrix} \right] \tag{1} [1237][acbd]=[1001](1)
简言之,解方程,根据这个等式能知道如下方程,原理讲解见矩阵乘法。
a + 3 c = 1 2 a + 7 c = 0 b + 3 d = 0 2 b + 7 d = 1 a+3c=1\\2a+7c=0\\b+3d=0\\2b+7d=1 a+3c=12a+7c=0b+3d=02b+7d=1
然而,这种解法的确有些繁琐。于是,我们便引入上篇文章所提的矩阵消元法:
先将方程写为如下增广炬阵:
∣ 1 3 1 0 2 7 0 1 ∣ \left| \begin{array}{lc|cc} {1}&{3}&{1}&{0}\\ {2}&{7}&{0}&{1} \end{array} \right| 12371001
进行消元处理后得到如下矩阵:
∣ 1 3 1 0 0 1 − 2 1 ∣ \left| \begin{array}{lc|cc} {1}&{3}&{1}&{0}\\ {0}&{1}&{-2}&{1} \end{array} \right| 10311−201
这时,高斯停下了脚步,在这里开始进行消元,回到解方程组的步骤。
然而,后来出现了个名为若尔丹的数学家,说,这里还可以再进一步:
若尔单在高斯停下脚步上的矩阵继续操作,对第一行也进行消元,得到如下矩阵:
∣ 1 0 7 − 3 0 1 − 2 1 ∣ \left| \begin{array}{lc|cc} {1}&{0}&{7}&{-3}\\ {0}&{1}&{-2}&{1} \end{array} \right| 10017−2−31
这时,右边的矩阵就变成了我们所求的矩阵A的逆。
脑袋是不是没转过来?有兴趣的小伙伴可以将这个矩阵乘乘上原矩阵A看是否等于单位矩阵看看。
经验证,我们发现右边的矩阵的确是单位矩阵,下面我们来分析为什么。
根据上篇博文对消元矩阵的解释,消元操作等同于矩阵乘一个矩阵E1,再进行一次消元矩阵将左边部分变为单位矩阵,写成等式如下:
A E 1 E 2 = I A E_1E_2=I AE1E2=I
同样的,因为增广炬阵右边进行了同样的操作,可得:
I E 1 E 2 = E 1 E 2 IE_1E_2=E_1E_2 IE1E2=E1E2
此时,观察这两个等式,我想,不难发现,E1E2即为矩阵的逆。这就是高斯-若尔单消元法。