1. 矩阵乘法
如果矩阵 BBB 的列为 b1,b2,b3b_1, b_2, b_3b1,b2,b3,那么 EBEBEB 的列就是 Eb1,Eb2,Eb3Eb_1, Eb_2, Eb_3Eb1,Eb2,Eb3。
EB=E[b1b2b3]=[Eb1Eb2Eb3]\boldsymbol{EB = E[b_1 \quad b_2 \quad b_3] = [Eb_1 \quad Eb_2 \quad Eb_3]}EB=E[b1b2b3]=[Eb1Eb2Eb3]
E (B的第 j 列)=EB 的第 j 列E\space(B 的第\space j \space列) =EB \space的第 \space j \space列E (B的第 j 列)=EB 的第 j 列
- 置换矩阵(permutation matrix)
在消元的过程中,如果遇到了某一行主元的位置为 0,而其下面一行对应的位置不为 0,我们就可以通过行交换来继续进行消元。
如下的矩阵 P23P_{23}P23 可以实现将向量或者矩阵的第 2 、 3 行进行交换。
P23=[100001010]P_{23} = \begin{bmatrix} 1&0&0 \\ 0&0&1\\0&1&0\end{bmatrix}P23=⎣⎡100001010⎦⎤
[100001010][135]=[153]\begin{bmatrix} 1&0&0 \\ 0&0&1\\0&1&0\end{bmatrix} \begin{bmatrix} 1 \\ \boldsymbol 3\\\boldsymbol 5\end{bmatrix} = \begin{bmatrix} 1 \\ \boldsymbol 5\\\boldsymbol 3\end{bmatrix}⎣⎡100001010⎦⎤⎣⎡135⎦⎤=⎣⎡153⎦⎤
[100001010][241003065]=[241065003]\begin{bmatrix} 1&0&0 \\ 0&0&1\\0&1&0\end{bmatrix} \begin{bmatrix} 2&4&1 \\ \boldsymbol0&\boldsymbol0&\boldsymbol3\\0&6&5 \end{bmatrix} = \begin{bmatrix} 2&4&1 \\0&6&5 \\\boldsymbol0&\boldsymbol0&\boldsymbol3\end{bmatrix}⎣⎡100001010⎦⎤⎣⎡200406135⎦⎤=⎣⎡200460153⎦⎤
置换矩阵 PijP_{ij}Pij 就是将单位矩阵的第 iii 行和第 jjj 行进行互换,当交换矩阵乘以另一个矩阵时,它的作用就是交换那个矩阵的第 iii 行和第 jjj 行。
- 增广矩阵(augmented matrix)
在消元的过程中,方程两边的系数 AAA 和 bbb 都要进行同样的变换,这样,我们可以把 bbb 作为矩阵 AAA 的额外的一列,然后,就可以用消元矩阵 EEE 乘以这个增广的矩阵一次性完成左右两边的变换。
E[A b]=[EA Eb]E[A \space \boldsymbol b] = [EA \space E \boldsymbol b] E[A b]=[EA Eb]
[100−210001][24−2249−38−2−3710]=[24−220114−2−3710]\begin{bmatrix} 1&0&0 \\ -2&1&0\\0&0&1\end{bmatrix} \begin{bmatrix} 2&4&-2&\boldsymbol 2 \\ 4&9&-3&\boldsymbol 8 \\-2&-3&7&\boldsymbol 10 \end{bmatrix} = \begin{bmatrix} 2&4&-2&\boldsymbol 2 \\ 0&1&1&\boldsymbol 4 \\-2&-3&7&\boldsymbol 10 \end{bmatrix}⎣⎡1−20010001⎦⎤⎣⎡24−249−3−2−372810⎦⎤=⎣⎡20−241−3−2172410⎦⎤
- 矩阵乘法的四种理解
如果矩阵 AAA 有 nnn 列, BBB 有nnn 行,那么我们可以进行矩阵乘法 ABABAB。
假设矩阵 AAA 有 mmm 行 nnn 列,矩阵 BBB 有 nnn 行 ppp 列,那么 ABABAB 是 mmm 行 ppp 列的。
(m×n)(n×p)(m×p)[m 行n 列][n 行p 列][m 行p 列](m×n)(n×p)(m×p) \quad \begin{bmatrix} \boldsymbol{m \space 行} \\{n \space 列} \end{bmatrix} \begin{bmatrix} n \space 行 \\\boldsymbol{p \space 列} \end{bmatrix} \begin{bmatrix} \boldsymbol{m \space 行} \\\boldsymbol{p \space 列}\end{bmatrix}(m×n)(n×p)(m×p)[m 行n 列][n 行p 列][m 行p 列]
矩阵乘法的第一种理解方式就是一个一个求取矩阵 ABABAB 位于 (i,j)(i, j)(i,j) 处的元素
(AB)ij=A 的第 i 行与 B 的第 j 列的内积=∑aikbkj(AB)_{ij} = A \space 的第 \space i \space 行与\space B \space的第\space j \space 列的内积 = \sum a_{ik}b_{kj}(AB)ij=A 的第 i 行与 B 的第 j 列的内积=∑aikbkj
第二种理解,矩阵 ABABAB 的列是 AAA 的列的线性组合
AB=A[b1b2⋯bp]=[Ab1Ab2⋯Abp]{AB = A[b_1 \quad b_2 \cdots b_p] = [Ab_1 \quad Ab_2 \cdots Ab_p]}AB=A[b1b2⋯bp]=[Ab1Ab2⋯Abp]
第三种理解,矩阵 ABABAB 的行是 BBB 的行的线性组合
AB=[a1a2⋮am]B=[a1Ba2B⋮amB]AB = \begin{bmatrix}a_1 \\ a_2 \\ \vdots \\a_m\end{bmatrix}B = \begin{bmatrix}a_1 B \\ a_2B \\ \vdots \\a_m B\end{bmatrix}AB=⎣⎢⎢⎢⎡a1a2⋮am⎦⎥⎥⎥⎤B=⎣⎢⎢⎢⎡a1Ba2B⋮amB⎦⎥⎥⎥⎤
第四种理解,矩阵 ABABAB 是所有 AAA 的列与 BBB 的行的乘积的和
AB=[a1a2⋯an][b1b2⋮bn]=∑i=1naibiAB = [a_1 \quad a_2 \cdots a_n] \begin{bmatrix}b_1 \\ b_2 \\ \vdots \\b_n\end{bmatrix} = \sum_{i=1}^{n} a_i b_iAB=[a1a2⋯an]⎣⎢⎢⎢⎡b1b2⋮bn⎦⎥⎥⎥⎤=i=1∑naibi
其中,一列乘以一行称为外积(outer product),(n×1)(1×n)=(n, n),结果为一个 n×n 的矩阵。
[273849][1600]=[234][16]+[789][00]=[212318424]\begin{bmatrix}2&7 \\ 3&8 \\ 4&9\end{bmatrix} \begin{bmatrix}1&6 \\ 0&0\end{bmatrix} = \begin{bmatrix}2 \\ 3 \\ 4\end{bmatrix}[1 \quad 6] + \begin{bmatrix}7 \\ 8 \\ 9\end{bmatrix}[0 \quad 0] = \begin{bmatrix}2&12 \\ 3&18 \\ 4&24\end{bmatrix}⎣⎡234789⎦⎤[1060]=⎣⎡234⎦⎤[16]+⎣⎡789⎦⎤[00]=⎣⎡234121824⎦⎤
- 矩阵乘法的性质
结合律:A(BC)=(AB)C\boldsymbol{A(BC) = (AB)C}A(BC)=(AB)C
交换律:(A+B)C=AC+BC\boldsymbol{(A+B)C = AC+BC}(A+B)C=AC+BC
交换律:A(B+C)=AB+AC\boldsymbol{A(B+C) = AB+AC}A(B+C)=AB+AC
Ap=AA⋯A⎵p 个A^p = \underbrace{AA\cdots A}_{\text{p 个}}Ap=p 个AA⋯A
ApAq=A(p+q)A^pA^q = A^{(p+q)}ApAq=A(p+q)
(Ap)q=Apq(A^p)^q = A^{pq}(Ap)q=Apq
A0=IA^0=IA0=I
- 分块矩阵
矩阵还可以被划分为小块,其中每个小块都是一个更小的矩阵。
如果对矩阵 AAA 的列的划分和对矩阵 BBB 的行的划分正好匹配,那么每个块之间就可以进行矩阵乘法。
一种特殊的划分就是矩阵 AAA 的每个小块都是 AAA 的一列,矩阵 BBB 的每个小块都是 BBB 的一行,这种情况就是我们上面说的矩阵相乘的第四种理解。
同样地,在消元的时候,我们也可以按块对系数矩阵进行消元。
2. 矩阵的逆
假设 AAA 是一个方阵,如果存在一个矩阵 A−1A^{-1}A−1,使得
A−1A=I并且AA−1=IA^{-1}A = I \quad 并且 \quad AA^{-1} = I A−1A=I并且AA−1=I
那么,矩阵 AAA 就是可逆的,A−1A^{-1}A−1 称为 AAA 的逆矩阵。
逆矩阵的逆就是进行和原矩阵相反的操作。消元矩阵 E21E_{21}E21 的作用是第二个方程减去第一个方程的 2 倍。
E21=[100−210001]E_{21} = \begin{bmatrix} 1&0&0 \\ -2&1&0\\0&0&1\end{bmatrix}E21=⎣⎡1−20010001⎦⎤
其逆矩阵 E21−1E_{21}^{-1}E21−1 的作用则是第二个方程加上第一个方程的 2 倍。
E21−1=[100210001]E_{21}^{-1} = \begin{bmatrix} 1&0&0 \\ 2&1&0\\0&0&1\end{bmatrix}E21−1=⎣⎡120010001⎦⎤
-
当且仅当在消元过程中产生 nnn 个主元的时候(允许行交换),矩阵 AAA 的逆才存在。
-
矩阵 AAA 不可能有两个不同的逆矩阵,左逆等于右逆。假设 BA=IBA=IBA=I, AC=IAC=IAC=I,那么一定有 B=CB=CB=C。
B(AC)=(BA)C→BI=IC→B=C B(AC) = (BA)C \to BI = IC \to B=CB(AC)=(BA)C→BI=IC→B=C -
如果矩阵 AAA 是可逆的,那么 Ax=bAx=bAx=b 有唯一解 x=A−1bx=A^{-1}bx=A−1b。
-
如果存在一个非零向量 xxx 使得 Ax=0Ax= \boldsymbol 0Ax=0,那么 AAA 不可逆,因为没有矩阵可以将零向量变成一个非零向量。
若 A−1 存在,则 x=A−10=0若 \space A^{-1} \space 存在,则\space x = A^{-1} \boldsymbol 0 = \boldsymbol 0若 A−1 存在,则 x=A−10=0
- 一个 2×2 的矩阵是可逆的,当且仅当 ad−bcad-bcad−bc 非零。
- 一个对角化矩阵如果其对角线上元素非零,那么其有逆矩阵。
如果矩阵 AAA 和矩阵 BBB 都是可逆的,那么它们的乘积 ABABAB 也是可逆的。
(AB)−1=B−1A−1(AB)^{-1} = B^{-1}A^{-1}(AB)−1=B−1A−1
(AB)−1AB=B−1A−1AB=B−1IB=I(AB)^{-1}AB = B^{-1}A^{-1}AB = B^{-1}IB = I(AB)−1AB=B−1A−1AB=B−1IB=I
同样地,针对三个或更多矩阵的乘积,有
(ABC)−1=C−1B−1A−1(ABC)^{-1} = C^{-1}B^{-1}A^{-1}(ABC)−1=C−1B−1A−1
3. 高斯-若尔当消元法(Gauss-Jordan Elimination)求矩阵的逆
我们可以通过消元法来求解矩阵 AAA 的逆矩阵。思路是这样的,假设 AAA 是一个 3×3 的矩阵,那么我们可以建立三个方程来分别求出 A−1A^{-1}A−1 的三列。
AA−1=A[x1x2x3]=[e1e2e3]=[100010001]AA^{-1} = A[x_1 \quad x_2 \quad x_3] = [e_1 \quad e_2 \quad e_3]=\begin{bmatrix} 1&0&0 \\ 0&1&0\\0&0&1\end{bmatrix}AA−1=A[x1x2x3]=[e1e2e3]=⎣⎡100010001⎦⎤
Ax1=e1Ax2=e2Ax3=e3\begin{alignedat}{2} Ax_1 = e_1 \\ Ax_2 = e_2\\ Ax_3 = e_3 \end{alignedat}Ax1=e1Ax2=e2Ax3=e3
而高斯-若尔当消元法则是一次性求解出这些方程,之前我们求解一个方程的时候,将 bbb 作为 AAA 的一列组成增广矩阵,而现在我们则是把 e1、e2、e3e_1、e_2、e_3e1、e2、e3 三列一起放入 AAA 中形成一个增广矩阵,然后进行消元。
到这里,我们已经得到了一个下三角矩阵 UUU,高斯就会停在这里然后用回带法求出方程的解,但若尔当将会继续进行消元,直到得到简化阶梯形式(reduced echelon form)。
最后,我们将每行都除以主元得到新的主元都为 1,此时,增广矩阵的前一半矩阵就是 III,而后一半矩阵就是 A−1A^{-1}A−1。
我们用分块矩阵就可以很容易地理解高斯-若尔当消元法,消元的过程就相当于乘以了一个 A−1A^{-1}A−1 将 AAA 变成了 III,将 III 变成了 A−1A^{-1}A−1。
A−1[AI]=[IA−1]A^{-1}[A \quad I] = [I \quad A^{-1}]A−1[AI]=[IA−1]
获取更多精彩,请关注「seniusen」!