这一讲主要是在说,一个 R m \mathbb{R}^m Rm 维空间中的点 (也就是一个 vector) 怎么样被投影到 R m \mathbb{R}^m Rm 的一个 subspace 上的。
Motivation: 对于方程 A x = b \bm{Ax=b} Ax=b,我们之前已经知道它有解的充要条件是 b \bm{b} b 在 A \bm{A} A 的 column space C ( A ) C(\bm{A}) C(A) 中。那么,如果 b \bm{b} b 不在 C ( A ) C(\bm{A}) C(A) 中怎么办尼 (比如我们不停地对卫星的位置进行观测得到一系列的位置方程,但每个方程都有noise)?此时 exact solution 不存在,我们可以尝试求一个近似的最优解。即,把 b \bm{b} b 投影到 C ( A ) C(\bm{A}) C(A) 上,再求出 x ^ \hat{\bm{x}} x^ 使得 A x ^ = P b \bm{A\hat{x}=Pb} Ax^=Pb, 其中 P \bm{P} P 是一个投影矩阵 (一个vector转换到另一个vector)。
A ⊤ A \bm{A^\top A} A⊤A
在进入正题之前,我们先看一下矩阵 A ⊤ A \bm{A^\top A} A⊤A。结论: A m × n \bm{A}_{m\times n} Am×n 是一个列满秩矩阵, 那么 A ⊤ A \bm{A^\top A} A⊤A ( n × n n\times n n×n) 满秩。
Proof. 令 A ⊤ A x = 0 \bm{A^\top A x=0} A⊤Ax=0, 我们只要证明 x = 0 \bm{x=0} x=0 即可证明 A ⊤ A \bm{A^\top A} A⊤A 满秩。
由
A
⊤
A
x
=
0
\bm{A^\top A x=0}
A⊤Ax=0, 我们有
x
⊤
A
⊤
A
x
=
0
\bm{x^\top A^\top A x}=0
x⊤A⊤Ax=0,则
x
⊤
A
⊤
A
x
=
(
A
x
)
⊤
A
x
=
0
\bm{x^\top A^\top A x}= (\bm{A x})^\top \bm{A x}=0
x⊤A⊤Ax=(Ax)⊤Ax=0
因此 A x \bm{A x} Ax 长度为 0,则 A x = 0 \bm{A x=0} Ax=0. 又 A \bm{A} A 列满秩, 则 x = 0 \bm{x=0} x=0. 得证。
同理,我们可以得到,如果 A m × n \bm{A}_{m\times n} Am×n 是行满秩, 那么 A A ⊤ \bm{A A^\top} AA⊤ ( m × m m\times m m×m) 满秩。
二维空间
从最简单的二维空间开始,给定任一个点 b ∈ R 2 \bm{b}\in\mathbb{R}^2 b∈R2, 任意一个 matrix A 2 × 1 \bm{A}_{2\times 1} A2×1, 其vector space就是一条直线了。我们的问题是,什么样的投影矩阵 P 2 × 2 \bm{P}_{2\times 2} P2×2 能把 b \bm{b} b 投影到 C ( A ) C(\bm{A}) C(A) 这条直线上?
设投影后的矩阵是
d
\bm{d}
d, 那么显然存在某个实数
c
c
c 使得
d
=
A
c
\bm{d}=\bm{A}c
d=Ac
实际上,我们最后要求的也就是这个
c
c
c 了。另
d
⊤
(
b
−
d
)
=
0
\bm{d}^\top (\bm{b-d})=0
d⊤(b−d)=0
因为误差向量
b
−
d
\bm{b-d}
b−d 一定是垂直于整个 subspace
C
(
A
)
C(\bm{A})
C(A) 的(不然怎么叫投影)。把
d
=
A
c
\bm{d}=\bm{A}c
d=Ac 代入,有
A
⊤
c
(
b
−
A
c
)
=
0
\bm{A}^\top c (\bm{b}-\bm{A}c)=0
A⊤c(b−Ac)=0
因此,
c
=
A
⊤
b
A
⊤
A
c=\frac{\bm{A}^\top \bm{b}}{\bm{A}^\top \bm{A}}
c=A⊤AA⊤b
d = A c = A A ⊤ b A ⊤ A \bm{d}=\bm{A}c=\bm{A}\frac{\bm{A}^\top \bm{b}}{\bm{A}^\top \bm{A}} d=Ac=AA⊤AA⊤b
P = A A ⊤ A ⊤ A \bm{P} = \frac{\bm{A}\bm{A}^\top }{\bm{A}^\top \bm{A}} P=A⊤AAA⊤
这样就得到了投影矩阵 P \bm{P} P,我们来看看他有什么样的性质,
- rank 为 1, column space 就是 A \bm{A} A 的column space, i.e., the line。
- symmetric
- P n = P \bm{P}^n=\bm{P} Pn=P.
m m m 维空间
好,现在我们考虑 general m m m 维空间的情况。
给定
b
∈
R
m
\bm{b}\in\mathbb{R}^m
b∈Rm, matrix
A
m
×
n
\bm{A}_{m\times n}
Am×n,
m
≥
n
m\geq n
m≥n。这里我们假设
A
\bm{A}
A 是一个列满秩的高瘦矩阵,
C
(
A
)
⊆
R
m
C(\bm{A})\subseteq \mathbb{R}^m
C(A)⊆Rm。 换句话说,
A
\bm{A}
A的列是 subspace
C
(
A
)
⊆
R
m
C(\bm{A})\subseteq \mathbb{R}^m
C(A)⊆Rm 的一组基。
计算
P
\bm{P}
P 的过程和之前一样,首先投影后的vector一定是在
C
(
A
)
C(\bm{A})
C(A) 上的,因此一定存在一组
x
\bm{x}
x 使得
d
=
A
x
\bm{d}=\bm{A}\bm{x}
d=Ax
而且误差向量
b
−
d
\bm{b-d}
b−d 一定垂直于
C
(
A
)
C(\bm{A})
C(A), that is
A
⊤
(
b
−
d
)
=
0
\bm{A}^\top(\bm{b-d})=0
A⊤(b−d)=0
换句话说,
b
−
d
\bm{b-d}
b−d 在
A
⊤
\bm{A}^\top
A⊤ 的null space里,也就是在
A
\bm{A}
A 的left null space里(垂直于
A
\bm{A}
A的column space)。
代入
d
=
A
x
\bm{d}=\bm{A}\bm{x}
d=Ax 我们有
A
⊤
(
b
−
A
x
)
=
0
\bm{A}^\top(\bm{b}-\bm{A}\bm{x})=0
A⊤(b−Ax)=0
A ⊤ A x = A ⊤ b \bm{A}^\top\bm{A}\bm{x}=\bm{A}^\top\bm{b} A⊤Ax=A⊤b
由于
A
\bm{A}
A 列满秩,
A
⊤
A
\bm{A}^\top\bm{A}
A⊤A 这个
n
×
n
n\times n
n×n 的矩阵是满秩的,因此
x
=
(
A
⊤
A
)
−
1
A
⊤
b
\bm{x}=(\bm{A}^\top\bm{A})^{-1}\bm{A}^\top\bm{b}
x=(A⊤A)−1A⊤b
d = A x = A ( A ⊤ A ) − 1 A ⊤ b \bm{d}=\bm{A}\bm{x}=\bm{A}(\bm{A}^\top\bm{A})^{-1}\bm{A}^\top\bm{b} d=Ax=A(A⊤A)−1A⊤b
P = A ( A ⊤ A ) − 1 A ⊤ \bm{P}=\bm{A}(\bm{A}^\top\bm{A})^{-1}\bm{A}^\top P=A(A⊤A)−1A⊤
相比于之前二维时 P = A A ⊤ A ⊤ A \bm{P} = \frac{\bm{A}\bm{A}^\top }{\bm{A}^\top \bm{A}} P=A⊤AAA⊤ 分母是实数, 这里我们没法除以一个矩阵,所以以逆的形式写出。注意, ( A ⊤ A ) − 1 (\bm{A}^\top\bm{A})^{-1} (A⊤A)−1 是不能展开的,因为 A \bm{A} A 并不是方阵逆不存在,换句话说如果 A \bm{A} A 是满秩方阵,其实相当于我们把 b \bm{b} b 投影到整个空间里去了,这时候可以展开得到 P = I m \bm{P=I_m} P=Im,与我们的想法一致。
这个 P \bm{P} P 满足什么性质尼?
- rank是n?, yes!
- 对称?yes!
- P n = P \bm{P}^n=\bm{P} Pn=P? yes!
总结
对于
A
x
=
b
\bm{Ax=b}
Ax=b, 任意给定一个
b
\bm{b}
b 如果不在
A
\bm{A}
A 的 column space 中 我们仍然可以把
b
\bm{b}
b 映射到
A
\bm{A}
A 的 column space 中。由于整个
R
m
\mathbb{R}^m
Rm 空间被
A
\bm{A}
A 的column space 和 left null space 分割,因此,实际上我们是把
b
\bm{b}
b 分成两部分
d
\bm{d}
d 和
e
\bm{e}
e, 其中,
d
\bm{d}
d在
A
\bm{A}
A 的 column space 中,
e
\bm{e}
e 在
A
\bm{A}
A 的 left null space 中,且有
d
=
P
b
\bm{d=Pb}
d=Pb
e = ( I − P ) b \bm{e=(I-P)b} e=(I−P)b
其中 P \bm{P} P 和 I − P \bm{I-P} I−P 都是投影矩阵。
下一讲,我们着重讲projection的一个应用:最小二乘法找最佳拟合