MIT 线性代数 Linear Algebra 30:线性变换和其矩阵形式
在这一节的开始,让我们先短暂忘记矩阵,研究什么是线性变换。实际上,线性变换是比矩阵更 general 的定义。只不过在 linear algebra 中我们用矩阵来分析线性变换。
线性变换
满足以下两个条件的变换
T
T
T 我们称为线性变换
T
(
v
+
w
)
=
T
(
v
)
+
T
(
W
)
T(v+w)=T(v)+T(W)
T(v+w)=T(v)+T(W)
T ( c v ) = c T ( v ) T(cv)=cT(v) T(cv)=cT(v)
可以看到,线性变换实际上就是一个线性函数:输入线性组合的输出等于输出的线性组合。
Fact 1: T ( 0 ) = 0 T(0) = 0 T(0)=0.
Example 1 (Projection): 投影是一种线性变换,比如我们考虑把空间中任意一个向量投影到地平线上,这个变换是线性的。
Example 2 (Rotation): 旋转也是一个线性变换,毕竟叠加后旋转还是旋转后叠加,效果是一样的。
Non-example 3 (Shifting the whole plane): 平移整个平面 (即把所有vector加一个constant vector
d
\bm{d}
d) 并不是线性变换.
下图很清晰可以看出,而且
T
(
0
)
=
0
T(0) = 0
T(0)=0 首先就不满足。
Non-example 4 (length): 取一个向量的长度
T
(
v
)
=
∥
v
∥
T(\bm{v})=\|\bm{v}\|
T(v)=∥v∥ 并不是线性变换。
这个变换 T : R n → R T:\mathbb{R}^n\to\mathbb{R} T:Rn→R, 但显然他不是线性变换因为 T ( − v ) ≠ − T ( v ) T(-\bm{v})\neq -T(\bm{v}) T(−v)=−T(v).
Fact 2: Matrix A \bm{A} A 是一种线性变换.
A ( c v + d w ) = c A v + d A w \bm{A}(c\bm{v}+d\bm{w})=c\bm{A}\bm{v}+d\bm{A}\bm{w} A(cv+dw)=cAv+dAw
Fact 3: 对于任意一个线性变换 T T T, 如果我们选取了一组基 v 1 , v 2 , . . . , v n v_1,v_2,...,v_n v1,v2,...,vn 来表示任意的输入,选取一组基 w 1 , w 2 , . . . , w m w_1,w_2,...,w_m w1,w2,...,wm 来表示任意的输出,那么线性变换 T T T 总能写成在这两组基下的矩阵形式。
线性变换的矩阵表示
如果输入基 v 1 , v 2 , . . . , v n \bm{v_1},\bm{v_2},...,\bm{v_n} v1,v2,...,vn,输出基 w 1 , w 2 , . . . , w m \bm{w_1},\bm{w_2},...,\bm{w_m} w1,w2,...,wm 均已选取。我们怎么确定线性组合的矩阵形式尼?
其实很简单,我们只需要选取基变换坐标作为矩阵的每个entry即可,请看
T
(
v
1
)
=
a
11
w
1
+
a
21
w
2
+
.
.
.
+
a
m
1
w
m
T(\bm{v_1})=a_{11} \bm{w_1} + a_{21}\bm{ w_2} + ... + a_{m1} \bm{w_m}
T(v1)=a11w1+a21w2+...+am1wm
T ( v 2 ) = a 12 w 1 + a 22 w 2 + . . . + a m 2 w m T(\bm{v_2})=a_{12}\bm{ w_1} + a_{22} \bm{w_2} + ... + a_{m2} \bm{w_m} T(v2)=a12w1+a22w2+...+am2wm
. . . ... ...
T ( v m ) = a 1 n w 1 + a 2 n w 2 + . . . + a m n w m T(\bm{v_m})=a_{1n} \bm{w_1} + a_{2n} \bm{w_2} + ... + a_{mn} \bm{w_m} T(vm)=a1nw1+a2nw2+...+amnwm
其中 a m n a_{mn} amn 即为基变换坐标的每个 entry。对于任意一个输入 v \bm{v} v,它在 { v 1 , v 2 , . . . , v n } \{\bm{v_1},\bm{v_2},...,\bm{v_n}\} {v1,v2,...,vn} 有一个坐标,如果我们把矩阵写成基的坐标,那么他经过线性变换后得到的刚刚好是输出 T ( v ) T(\bm{v}) T(v) 在 { w 1 , w 2 , . . . , w m } \{\bm{w_1},\bm{w_2},...,\bm{w_m}\} {w1,w2,...,wm} 下的坐标。矩阵形式可以写为
T ( V ) = W A T(\bm{V})=\bm{WA} T(V)=WA
Remark:
- 一般我们默认的极坐标是 单位阵的各个column,但实际上我们可以选取任意线性独立的vector在做基。关于这一点,我们下面给出一个例子。
- 我们考虑的不一定是向量空间,也有可能是函数空间,换句话说, v 1 , v 2 , . . . , v n v_1,v_2,...,v_n v1,v2,...,vn, w 1 , w 2 , . . . , w m w_1,w_2,...,w_m w1,w2,...,wm 可以不是向量,而可以是一些基础函数。在本文的末尾,我们会给出一个相应的例子。
Example 5 (Projection): 考虑线性变换 T : R 2 → R 2 T: \mathbb{R}^2\to\mathbb{R}^2 T:R2→R2 把平面上任意向量投影到 y = x y=x y=x 这条直线上,求 T \bm{T} T 的矩阵形式。
求矩阵型知识浅,我们得先确定一组基。
1)首先,我们选取 basis
v
1
=
w
1
=
[
1
,
0
]
⊤
v_1=w_1=[1,0]^\top
v1=w1=[1,0]⊤,
v
2
=
w
2
=
[
0
,
1
]
⊤
v_2=w_2=[0,1]^\top
v2=w2=[0,1]⊤. 这是一组最方便的basis。此时,我们有
T
(
v
1
)
=
[
1
2
,
1
2
]
⊤
=
1
2
w
1
+
1
2
w
2
T(v_1)=\left[\frac{1}{2},~\frac{1}{2}\right]^\top=\frac{1}{2}w_1+\frac{1}{2}w_2
T(v1)=[21, 21]⊤=21w1+21w2
T ( v 2 ) = [ 1 2 , 1 2 ] ⊤ = 1 2 w 1 + 1 2 w 2 T(v_2)=\left[\frac{1}{2},~\frac{1}{2}\right]^\top=\frac{1}{2}w_1+\frac{1}{2}w_2 T(v2)=[21, 21]⊤=21w1+21w2
因此
T
T
T 在选取的 basis 下的矩阵为
A
=
[
1
2
1
2
1
2
1
2
]
\bm{A}=\begin{bmatrix} \frac{1}{2} & \frac{1}{2} \\ \frac{1}{2} & \frac{1}{2} \\ \end{bmatrix}
A=[21212121]
2)我们也可以选取 basis
v
1
=
w
1
=
[
1
2
,
1
2
]
⊤
v_1=w_1=[\frac{1}{2},\frac{1}{2}]^\top
v1=w1=[21,21]⊤,
v
2
=
w
2
=
[
−
1
2
,
1
2
]
⊤
v_2=w_2=[-\frac{1}{2},\frac{1}{2}]^\top
v2=w2=[−21,21]⊤. 即,”顺着
y
=
x
y=x
y=x 的方向“ 和 ”与
y
=
x
y=x
y=x 垂直的方向“。此时,我们有
T
(
v
1
)
=
[
1
2
,
1
2
]
⊤
=
w
1
+
0
w
2
T(v_1)=\left[\frac{1}{2},~\frac{1}{2}\right]^\top= w_1+0w_2
T(v1)=[21, 21]⊤=w1+0w2
T ( v 2 ) = [ − 1 2 , 1 2 ] ⊤ = 0 w 1 + 0 w 2 T(v_2)=\left[-\frac{1}{2},~\frac{1}{2}\right]^\top=0w_1+0w_2 T(v2)=[−21, 21]⊤=0w1+0w2
因此
T
T
T 在选取的 basis 下的矩阵为
A
=
[
1
0
0
0
]
\bm{A}=\begin{bmatrix} 1 & 0 \\ 0 & 0 \\ \end{bmatrix}
A=[1000]
实际上,如果我们把第一组基下得到的
A
\bm{A}
A 特征值分解
A
=
[
1
2
1
2
1
2
1
2
]
=
1
2
[
1
−
1
1
1
]
[
1
0
0
0
]
1
2
[
1
1
−
1
1
]
\bm{A}=\begin{bmatrix} \frac{1}{2} & \frac{1}{2} \\ \frac{1}{2} & \frac{1}{2} \\ \end{bmatrix}=\frac{1}{\sqrt{2}}\begin{bmatrix} 1 & -1 \\ 1 & 1 \\ \end{bmatrix} \begin{bmatrix} 1 & 0 \\ 0 & 0 \\ \end{bmatrix}\frac{1}{\sqrt{2}}\begin{bmatrix} 1 & 1 \\ -1 & 1 \\ \end{bmatrix}
A=[21212121]=2
1[11−11][1000]2
1[1−111]
可以看到,实际上我们第二组基选取的就是特征值的方向,此时得到的矩阵是对角阵,其实就是特征值分解的结果。
Example 6 (basis of function): 好,最后我们再看一个以函数作为basis的例子。考虑变换
T
(
f
(
x
)
)
=
d
f
d
x
T(f(x))=\frac{df}{dx}
T(f(x))=dxdf, 求导实际上是一个线性变换,只要我们有了一些基本函数的求导公式,就能把这些函数作为基,把他们线性组合的导求出来。比如,我们把输入的 basis 选为
{
1
,
x
,
x
2
}
\{1,x,x^2\}
{1,x,x2},输出的 basis 选为
{
1
,
x
}
\{1,x\}
{1,x},那么,给定输入
[
c
1
,
c
2
,
c
3
]
⊤
=
c
1
+
c
2
x
+
c
3
x
2
[c_1,c_2,c_3]^\top=c_1 +c_2x+c_3x^2
[c1,c2,c3]⊤=c1+c2x+c3x2
我们可以得到输出
T
(
c
1
+
c
2
x
+
c
3
x
2
)
=
c
2
+
2
c
3
x
=
[
c
2
,
2
c
3
]
⊤
T(c_1 +c_2x+c_3x^2)=c_2 + 2c_3 x=[c_2,2c_3]^\top
T(c1+c2x+c3x2)=c2+2c3x=[c2,2c3]⊤
因此,
T
T
T 的矩阵形式可以写为
A
=
[
0
1
0
0
0
2
]
\bm{A}=\begin{bmatrix} 0 & 1 & 0 \\ 0 & 0 & 2 \\ \end{bmatrix}
A=[001002]