矩阵乘法
回顾一下
C
=
A
B
C=AB
C=AB 中单个元素的求法:
c
i
,
j
=
(
row i of
A
)
⋅
(
column j of
B
)
c_{i,j}=(\text{row i of }A)\cdot(\text{column j of }B)
ci,j=(row i of A)⋅(column j of B)
矩阵相乘不一定是方阵,
A
m
×
n
B
n
×
p
=
C
m
×
p
A_{m\times n}B_{n\times p}=C_{m\times p}
Am×nBn×p=Cm×p .
让我们用行和列的方式去思考 A B = C AB=C AB=C :
把矩阵 C C C 想成是 p p p 个列向量, A A A 乘 B B B 的第一列得到 C C C 的第一列, 以此类推. 回想一下我们的big picture, 矩阵 A A A 乘一个列向量代表了 A A A 中列向量的线性组合, 也就是说矩阵 C C C 中的每一列都是 A A A 中列向量的线性组合. 这就是矩阵乘法的第二种方法.
而矩阵乘法的第三种方法也就是, 矩阵 C C C 中的每一行都是 B B B 中行向量的线性组合.
矩阵乘法的第四种方法: A B = Sum of ( column of A ) × ( row of B ) AB=\text{Sum of }(\text{column of }A)\times(\text{row of }B) AB=Sum of (column of A)×(row of B)
A
A
A 中的列乘
B
B
B 中的行将会得到一个
m
×
p
m\times p
m×p 矩阵. 这个矩阵中的每一行都是
B
B
B 中的行的倍数, 每一列都是
A
A
A 中的列的倍数:
[
2
3
4
]
[
1
6
]
=
[
2
12
3
18
4
24
]
\begin{bmatrix}2\\3\\4\end{bmatrix}\begin{bmatrix}1&6\end{bmatrix}=\begin{bmatrix}2&12\\3&18\\4&24\end{bmatrix}
⎣⎡234⎦⎤[16]=⎣⎡234121824⎦⎤
这个矩阵的行空间(行所有可能的线性组合)是一个直线, 列空间也是一个直线.
矩阵乘法也可以是将矩阵分块, 再对分块之后的矩阵做乘法:
[
A
1
A
2
A
3
A
4
]
[
B
1
B
2
B
3
B
4
]
=
[
A
1
B
1
+
A
2
B
3
−
−
−
]
A
B
=
C
\begin{aligned}\begin{bmatrix}A_1&A_2\\A_3&A_4\end{bmatrix}\begin{bmatrix}B_1&B_2\\B_3&B_4\end{bmatrix}&=\begin{bmatrix}A_1B_1+A_2B_3&-\\-&-\end{bmatrix}\\A\qquad\qquad\ B\qquad&=\qquad\qquad\ C\end{aligned}
[A1A3A2A4][B1B3B2B4]A B=[A1B1+A2B3−−−]= C
对块做乘法和基础的矩阵乘法很相似.
逆矩阵
A − 1 A = I = A A − 1 A^{-1}A=I=AA^{-1} A−1A=I=AA−1 if A is invertable or non-singular.
考虑Singular case(奇异矩阵, 也就是不可逆矩阵):
[
1
3
2
6
]
\begin{bmatrix}1&3\\2&6\end{bmatrix}
[1236]
其行列式为0. 事实上用
A
A
A 去乘某个矩阵, 结果中的列都来自
A
A
A 中的列, 也就是都会是
A
A
A 中列的倍数, 不可能得到
1
0
\begin{matrix} 1\\0 \end{matrix}
10 .
方阵 A A A 没有逆. 假设存在非零向量 x \mathbf{x} x 使得 A x = 0 A\mathbf{x}=\mathbf{0} Ax=0 . 事实上, 我们假设 A − 1 A^{-1} A−1 存在, A x = 0 A\mathbf{x}=\mathbf{0} Ax=0 两边乘上 A − 1 A^{-1} A−1 , 得到 x = 0 \mathbf{x}=\mathbf{0} x=0 , 矛盾.
也就是说, 奇异矩阵的列向量可以通过线性组合得到 0 \mathbf{0} 0 .
考虑可逆矩阵
A
=
[
1
3
2
7
]
A=\begin{bmatrix} 1&3\\2&7 \end{bmatrix}
A=[1237] , 其列向量指向不同的方向, 其组合可以得到任何向量. 如何求其逆矩阵?
[
1
3
2
7
]
[
a
c
b
d
]
=
[
1
0
0
1
]
A
A
−
1
=
I
\begin{aligned}\begin{bmatrix}1&3\\2&7\end{bmatrix}\begin{bmatrix}a&c\\b&d\end{bmatrix}&=\begin{bmatrix}1&0\\0&1\end{bmatrix}\\A\ \ \qquad A^{-1}\ \ \ &=\quad\,\ I\end{aligned}
[1237][abcd]A A−1 =[1001]= I
可以得到方程组
A
[
a
b
]
=
[
1
0
]
A \begin{bmatrix} a\\b \end{bmatrix}= \begin{bmatrix} 1\\0 \end{bmatrix}
A[ab]=[10] 和
A
[
c
d
]
=
[
0
1
]
A \begin{bmatrix} c\\d \end{bmatrix}= \begin{bmatrix} 0\\1 \end{bmatrix}
A[cd]=[01] . 求
A
A
A 的逆和解这两个方程组是一回事.
Gauss-Jordan消元法: 一次解出两个方程组, 使用增广矩阵:
[
1
3
1
0
2
7
0
1
]
⟶
[
1
3
1
0
0
1
−
2
1
]
⟶
[
1
0
7
−
3
0
1
−
2
1
]
A
I
I
A
−
1
\left[\begin{array}{cc:cc}1&3&1&0\\2&7&0&1\end{array}\right]\longrightarrow\left[\begin{array}{cc:cc}1&3&1&0\\0&1&-2&1\end{array}\right]\longrightarrow\left[\begin{array}{cc:cc}1&0&7&-3\\0&1&-2&1\end{array}\right]\\A\qquad\quad I\qquad\qquad\qquad\qquad\qquad\qquad\qquad\qquad I\qquad\quad A^{-1}
[12371001]⟶[10311−201]⟶[10017−2−31]AIIA−1
为什么我们可以得到
A
−
1
A^{-1}
A−1 ? 因为我们对
A
A
A 和
I
I
I 左乘了相同的初等矩阵, 当
A
A
A 变成
I
I
I , 原来的
I
I
I 也就变成了
A
−
1
A^{-1}
A−1 .