文章目录
本文在学习《麻省理工公开课 线性代数 MIT 18.06 Linear Algebra》总结反思形成。
视频链接: MIT-B站视频
1.方程组的几何解释
[ 2 − 1 − 1 2 ] [ x y ] = [ 0 3 ] \left[\begin{array}{cc} 2 & -1 \\ -1 & 2 \end{array}\right] \left[\begin{array}{l} x \\ y \end{array}\right]=\left[\begin{array}{l} 0 \\ 3 \end{array}\right] [2−1−12][xy]=[03]
教授的角度是从行图像和列图像进行阐述。
所谓行图像,就是点乘
[
2
−
1
−
1
2
]
[
x
y
]
=
[
2
x
−
y
−
x
+
2
y
]
\begin{bmatrix}2&-1\\-1&2\end{bmatrix}\begin{bmatrix}x\\y\end{bmatrix}=\begin{bmatrix}2x-y\\-x+2y\end{bmatrix}
[2−1−12][xy]=[2x−y−x+2y]
它的几何意义就是直线(面)的交点
所谓列图像,就是向量的线性组合
[
2
−
1
−
1
2
]
[
x
y
]
=
x
[
2
−
1
]
+
y
[
−
1
2
]
\begin{bmatrix}2&-1\\-1&2\end{bmatrix}\begin{bmatrix}x\\y\end{bmatrix}=x\begin{bmatrix}2\\-1\end{bmatrix}+y\begin{bmatrix}-1\\2\end{bmatrix}
[2−1−12][xy]=x[2−1]+y[−12]
它的几何意义就是向量的加减法,(或者说矩阵列的线性组合)
教授推荐第二种理解,这里是我比较大的收获,在通信后续MIMO学习中信道和天线关系确实是站在列图像理解接收的。
2.矩阵消元
矩阵向量乘法关系
在第1讲方程组的几何解释中,解释了矩阵乘向量的含义,那么向量乘矩阵会发生什么呢?
[
x
y
]
[
2
−
1
−
1
2
]
\begin{bmatrix}x\\y\end{bmatrix}\begin{bmatrix}2&-1\\-1&2\end{bmatrix}
[xy][2−1−12]
这里教授没有再从行、列图像的角度进行阐述,但是我觉得类比可得点乘理解和向量理解。
点乘理解
[
x
y
]
[
2
−
1
−
1
2
]
=
[
2
x
−
y
−
x
+
2
y
]
\begin{bmatrix}x\\y\end{bmatrix}\begin{bmatrix}2&-1\\-1&2\end{bmatrix}=\begin{bmatrix}2x-y&-x+2y\end{bmatrix}
[xy][2−1−12]=[2x−y−x+2y]
向量理解
[
x
y
]
[
2
−
1
−
1
2
]
=
x
[
2
−
1
]
+
y
[
−
1
2
]
\begin{bmatrix}x\\y\end{bmatrix}\begin{bmatrix}2&-1\\-1&2\end{bmatrix}=x\begin{bmatrix}2&-1\end{bmatrix}+y\begin{bmatrix}-1&2\end{bmatrix}
[xy][2−1−12]=x[2−1]+y[−12]
它的几何意义是矩阵行的线性组合,这是很重要的,因为下面的高斯消元需要进行行的线性组合进行消元!
小结
有三个列向量的矩阵右乘以另一个向量,按列的线性组合可以写作 [ v 1 v 2 v 3 ] [ 3 4 5 ] = 3 v 1 + 4 v 2 + 5 v 3 \Bigg[v_1\ v_2\ v_3\Bigg]\begin{bmatrix}3\\4\\5\end{bmatrix}=3v_1+4v_2+5v_3 [v1 v2 v3]⎣⎡345⎦⎤=3v1+4v2+5v3。
有三个行向量的矩阵左乘以另一个向量,按行的线性组合可以写作 [ 1 2 7 ] [ r o w 1 r o w 2 r o w 3 ] = 1 r o w 1 + 2 r o w 2 + 7 r o w 3 \begin{bmatrix}1&2&7\end{bmatrix}\begin{bmatrix}&row_1&\\&row_2&\\&row_3&\end{bmatrix}=1row_1+2row_2+7row_3 [127]⎣⎡row1row2row3⎦⎤=1row1+2row2+7row3。
高斯消元
高斯消元法的操作主要分为消元和回代两部分,这部分非常熟悉,略过;
高斯消元的矩阵描述
最大的收获在于高斯消元法的矩阵描述,如何用矩阵描述高斯消元呢?
E 32 ( E 21 A ) = U E_{32}(E_{21}A)=U E32(E21A)=U
这里的 E 32 E 21 E_{32}E_{21} E32E21可以通过矩阵行的线性组合这层物理含义的直接写出来。
3.乘法和逆矩阵
矩阵乘法的5种理解
矩阵乘法有视频中有5种理解方式,可以说是对第1,2章节的提炼和加深。
- 行列内积:元素 c i j c_{ij} cij角度
c i j = r o w i ⋅ c o l u m n j = ∑ k = i n a i k b k j c_{ij}=row_i\cdot column_j=\sum_{k=i}^na_{ik}b_{kj} cij=rowi⋅columnj=k=i∑naikbkj
其中 a i k a_{ik} aik是 A A A矩阵的第 i i i行第 k k k列元素, b k j b_{kj} bkj是 B B B矩阵的第 k k k行第 j j j列元素。
c i j c_{ij} cij其实是 A A A矩阵第 i i i行点乘 B B B矩阵第 j j j列 [ ⋮ r o w i ⋮ ] [ ⋯ c o l u m n j ⋯ ] = [ ⋮ ⋯ c i j ⋯ ⋮ ] \begin{bmatrix}&\vdots&\\&row_i&\\&\vdots&\end{bmatrix}\begin{bmatrix}&&\\\cdots&column_j&\cdots\\&&\end{bmatrix}=\begin{bmatrix}&\vdots&\\\cdots&c_{ij}&\cdots\\&\vdots&\end{bmatrix} ⎣⎢⎢⎡⋮rowi⋮⎦⎥⎥⎤⎣⎡⋯columnj⋯⎦⎤=⎣⎢⎢⎡⋯⋮cij⋮⋯⎦⎥⎥⎤
- 整列相乘: C C C的第 j j j列是 A A A的列向量的线性组合(!!)
[ A c o l 1 A c o l 2 ⋯ A c o l n ] [ ⋯ b 1 j ⋯ ⋯ b 2 j ⋯ ⋯ ⋮ ⋯ ⋯ b n j ⋯ ] = [ ⋯ ( b 1 j A c o l 1 + b 2 j A c o l 2 + ⋯ + b n j A c o l n ) ⋯ ] \begin{bmatrix}&&\\A_{col1}&A_{col2}&\cdots&A_{coln}\\&&\end{bmatrix}\begin{bmatrix}\cdots&b_{1j}&\cdots\\\cdots&b_{2j}&\cdots\\\cdots&\vdots&\cdots\\\cdots&b_{nj}&\cdots\\\end{bmatrix}=\begin{bmatrix}&&\\\cdots&\left(b_{1j}A_{col1}+b_{2j}A_{col2}+\cdots+b_{nj}A_{coln}\right)&\cdots\\&&\end{bmatrix} ⎣⎡Acol1Acol2⋯Acoln⎦⎤⎣⎢⎢⎢⎡⋯⋯⋯⋯b1jb2j⋮bnj⋯⋯⋯⋯⎦⎥⎥⎥⎤=⎣⎡⋯(b1jAcol1+b2jAcol2+⋯+bnjAcoln)⋯⎦⎤
B B B的第 j j j个列向量右乘矩阵 A A A,求得的结果就是 C C C矩阵的第 j j j列,
C j = b 1 j A c o l 1 + b 2 j A c o l 2 + ⋯ + b n j A c o l n C_j=b_{1j}A_{col1}+b_{2j}A_{col2}+\cdots+b_{nj}A_{coln} Cj=b1jAcol1+b2jAcol2+⋯+bnjAcoln。
- 整行相乘: C C C的第 i i i行是 B B B的行向量的线性组合(!!)
[ ⋮ ⋮ ⋮ ⋮ a i 1 a i 2 ⋯ a i n ⋮ ⋮ ⋮ ⋮ ] [ B r o w 1 B r o w 2 ⋮ B r o w n ] = [ ⋮ ( a i 1 B r o w 1 + a i 2 B r o w 2 + ⋯ + a i n B r o w n ) ⋮ ] \begin{bmatrix}\vdots&\vdots&\vdots&\vdots\\a_{i1}&a_{i2}&\cdots&a_{in}\\\vdots&\vdots&\vdots&\vdots\end{bmatrix}\begin{bmatrix}&B_{row1}&\\&B_{row2}&\\&\vdots&\\&B_{rown}&\end{bmatrix}=\begin{bmatrix}\vdots\\\left(a_{i1}B_{row1}+a_{i2}B_{row2}+\cdots+a_{in}B_{rown}\right)\\\vdots\end{bmatrix} ⎣⎢⎢⎡⋮ai1⋮⋮ai2⋮⋮⋯⋮⋮ain⋮⎦⎥⎥⎤⎣⎢⎢⎢⎡Brow1Brow2⋮Brown⎦⎥⎥⎥⎤=⎣⎢⎢⎡⋮(ai1Brow1+ai2Brow2+⋯+ainBrown)⋮⎦⎥⎥⎤
A A A的第 i i i个行向量左乘矩阵 B B B,求得的结果就是 C C C矩阵的第 i i i行,
C i = a i 1 B r o w 1 + a i 2 B r o w 2 + ⋯ + a i n B r o w n C_i=a_{i1}B_{row1}+a_{i2}B_{row2}+\cdots+a_{in}B_{rown} Ci=ai1Brow1+ai2Brow2+⋯+ainBrown。
4.列乘以行: A c o l i B r o w i A_{coli}B_{rowi} AcoliBrowi,得到的矩阵相加即可
[ A c o l 1 A c o l 2 ⋯ A c o l n ] [ B r o w 1 B r o w 2 ⋮ B r o w n ] = A c o l 1 B r o w 1 + A c o l 2 B r o w 2 + ⋯ + A c o l n B r o w n \begin{bmatrix}&&\\A_{col1}&A_{col2}&\cdots&A_{coln}\\&&\end{bmatrix}\begin{bmatrix}&B_{row1}&\\&B_{row2}&\\&\vdots&\\&B_{rown}&\end{bmatrix}=A_{col1}B_{row1}+A_{col2}B_{row2}+\cdots+A_{coln}B_{rown} ⎣⎡Acol1Acol2⋯Acoln⎦⎤⎣⎢⎢⎢⎡Brow1Brow2⋮Brown⎦⎥⎥⎥⎤=Acol1Brow1+Acol2Brow2+⋯+AcolnBrown
A c o l i B r o w i A_{coli}B_{rowi} AcoliBrowi是一个 m × 1 m\times 1 m×1向量乘以一个 1 × p 1\times p 1×p向量,其结果是一个 m × p m\times p m×p矩阵,
而所有的 m × p m\times p m×p矩阵之和就是计算结果。
- 分块乘法:
[ 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 1 B 2 + A 2 B 4 A 3 B 1 + A 4 B 3 A 3 B 2 + A 4 B 4 ] \left[\begin{array}{c|c}A_1&A_2\\\hline A_3&A_4\end{array}\right]\left[\begin{array}{c|c}B_1&B_2\\\hline B_3&B_4\end{array}\right]=\left[\begin{array}{c|c}A_1B_1+A_2B_3&A_1B_2+A_2B_4\\\hline A_3B_1+A_4B_3&A_3B_2+A_4B_4\end{array}\right] [A1A3A2A4][B1B3B2B4]=[A1B1+A2B3A3B1+A4B3A1B2+A2B4A3B2+A4B4]
逆矩阵
高斯-若尔当(Gauss-Jordan)方法
高斯-若尔当方法是同时处理两个方程组,对高斯消元法的一种改进,就是说高斯消元法只是变成上三角形矩阵,高斯-若尔当则进一步改进,将上三角形矩阵回代消元化为 I I I
将矩阵从 [ A I ] \left[\begin{array}{c|c}A&I\end{array}\right] [AI]变为 [ I A − 1 ] \left[\begin{array}{c|c}I&A^{-1}\end{array}\right] [IA−1]
4.A的LU分解
首先介绍两个计算法则:
A
B
AB
AB的逆矩阵:
A
⋅
A
−
1
=
I
=
A
−
1
⋅
A
(
A
B
)
⋅
(
B
−
1
A
−
1
)
=
I
则
A
B
的逆矩阵为
B
−
1
A
−
1
\begin{aligned} A \cdot A^{-1} = I & = A^{-1} \cdot A\\ (AB) \cdot (B^{-1}A^{-1}) & = I\\ \textrm{则} AB \textrm{的逆矩阵为} & B^{-1}A^{-1} \end{aligned}
A⋅A−1=I(AB)⋅(B−1A−1)则AB的逆矩阵为=A−1⋅A=IB−1A−1
A
T
A^{T}
AT的逆矩阵:
(
A
⋅
A
−
1
)
T
=
I
T
(
A
−
1
)
T
⋅
A
T
=
I
则
A
T
的逆矩阵为
(
A
−
1
)
T
\begin{aligned} (A \cdot A^{-1})^{T} & = I^{T}\\ (A^{-1})^{T} \cdot A^{T} & = I\\ \textrm{则} A^{T} \textrm{的逆矩阵为} & (A^{-1})^{T} \end{aligned}
(A⋅A−1)T(A−1)T⋅AT则AT的逆矩阵为=IT=I(A−1)T
LU分解
E
32
E
31
E
21
A
=
U
(
n
o
r
o
w
e
x
c
h
a
n
g
e
s
)
A
=
E
21
−
1
E
31
−
1
E
32
−
1
A
=
L
U
E_{32}E_{31}E_{21}A=U(no \quad row\quad exchanges)\\ A=E^{-1}_{21}E^{-1}_{31}E^{-1}_{32}\\ A=LU
E32E31E21A=U(norowexchanges)A=E21−1E31−1E32−1A=LU
A A A 变换为 L U LU LU 的总运算量应为 O ( n 2 + ( n − 1 ) 2 + ⋯ + 2 2 + 1 2 ) O(n^2+(n-1)^2+\cdots+2^2+1^2) O(n2+(n−1)2+⋯+22+12),即 1 3 O ( n 3 ) \frac{1}{3}O(n^3) 31O(n3)。
置换矩阵(实现行的交换你)
3阶方阵的置换矩阵有6个:
[
1
0
0
0
1
0
0
0
1
]
[
0
1
0
1
0
0
0
0
1
]
[
0
0
1
0
1
0
1
0
0
]
[
1
0
0
0
0
1
0
1
0
]
[
0
1
0
0
0
1
1
0
0
]
[
0
0
1
1
0
0
0
1
0
]
\begin{bmatrix} 1 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 1 \\ \end{bmatrix} \begin{bmatrix} 0 & 1 & 0 \\ 1 & 0 & 0 \\ 0 & 0 & 1 \\ \end{bmatrix} \begin{bmatrix} 0 & 0 & 1 \\ 0 & 1 & 0 \\ 1 & 0 & 0 \\ \end{bmatrix} \begin{bmatrix} 1 & 0 & 0 \\ 0 & 0 & 1 \\ 0 & 1 & 0 \\ \end{bmatrix} \begin{bmatrix} 0 & 1 & 0 \\ 0 & 0 & 1 \\ 1 & 0 & 0 \\ \end{bmatrix} \begin{bmatrix} 0 & 0 & 1 \\ 1 & 0 & 0 \\ 0 & 1 & 0 \\ \end{bmatrix}
⎣⎡100010001⎦⎤⎣⎡010100001⎦⎤⎣⎡001010100⎦⎤⎣⎡100001010⎦⎤⎣⎡001100010⎦⎤⎣⎡010001100⎦⎤
n n n阶方阵的置换矩阵有 n ! n! n!个。
在这个置换矩阵群中, P − 1 = P T P^{-1}=P^{T} P−1=PT
5.矩阵小结、向量空间R
置换矩阵(Permutation Matrix)
P P P为置换矩阵,对任意可逆矩阵 A A A有:
P A = L U PA=LU PA=LU
n n n阶方阵的置换矩阵 P P P有 = n ! =n! =n!个
对置换矩阵 P P P,有 P T P = I P^TP = I PTP=I
即 P T = P − 1 P^T = P^{-1} PT=P−1
转置矩阵(Transpose Matrix)
( A T ) i j = ( A ) j i (A^T)_{ij} = (A)_{ji} (AT)ij=(A)ji
对称矩阵(Symmetric Matrix)
A T A^T AT = A A A
对任意矩阵 R R R有 R T R R^TR RTR为对称矩阵:
( R T R ) T = ( R ) T ( R T ) T = R T R 即 ( R T R ) T = R T R (R^TR)^T = (R)^T(R^T)^T = R^TR\\ \textrm{即}(R^TR)^T = R^TR (RTR)T=(R)T(RT)T=RTR即(RTR)T=RTR
向量空间(Vector Space)
所有向量空间都必须包含原点(Origin);向量空间中任意向量的数乘、求和运算得到的向量也在该空间中,即向量空间要满足加法封闭和数乘封闭。
这里比较有意思和加深理解的点在于教授举例了向量空间和子空间和非向量空间。
对于R2,它的向量空间和子空间有
- R2
- 过原点的线(L)
- 原点(Z)
对于R3,它的向量空间和子空间有
- R3
- 过原点的面
- 过原点的线
- 原点
那么对于一个矩阵如何构建向量空间呢?
A = [ 1 4 2 5 3 6 ] A=\begin{bmatrix} 1 & 4 \\ 2 & 5 \\ 3 & 6\\ \end{bmatrix} A=⎣⎡123456⎦⎤
一种构造方法:列空间 C ( A ) C(A) C(A):列向量的线性组合,那么它的可视化其实是R3里面的一个面,完美逻辑闭环!