Eckart-Young: The Closest Rank k Matrix to A
1 Eckart-Young Theorem(low rank approximation)
If B B B has rank k k k, then ∥ A − B ∥ ≥ ∥ A − A k ∥ \lVert A-B \rVert \ge \lVert A-A_k \rVert ∥A−B∥≥∥A−Ak∥
说明在所有秩(rank)为
k
k
k的矩阵中,离
A
A
A最近的是
A
k
A_k
Ak,其中:
A
=
U
Σ
V
T
=
σ
1
u
1
v
1
T
+
σ
2
u
2
v
2
T
+
.
.
.
+
σ
r
u
r
v
r
T
A
k
=
U
k
Σ
k
V
k
T
=
σ
1
u
1
v
1
T
+
σ
2
u
2
v
2
T
+
.
.
.
+
σ
k
u
k
v
k
T
A=U\Sigma V^T=\sigma_1\mathbf{u_1}\mathbf{v_1}^T+\sigma_2\mathbf{u_2}\mathbf{v_2}^T+...+\sigma_r\mathbf{u_r}\mathbf{v_r}^T \\ A_k=U_k\Sigma_k V_k^T=\sigma_1\mathbf{u_1}\mathbf{v_1}^T+\sigma_2\mathbf{u_2}\mathbf{v_2}^T+...+\sigma_k\mathbf{u_k}\mathbf{v_k}^T
A=UΣVT=σ1u1v1T+σ2u2v2T+...+σrurvrTAk=UkΣkVkT=σ1u1v1T+σ2u2v2T+...+σkukvkT
σ 1 ≥ σ 1 ≥ . . . ≥ σ r > 0 \sigma_1 \ge \sigma_1 \ge...\ge \sigma_r > 0 σ1≥σ1≥...≥σr>0
例如,对于一个矩阵
A
A
A:
A
=
(
4
0
0
0
0
3
0
0
0
0
2
0
0
0
0
1
)
A= \left( \begin{array}{ccc} 4 & 0&0&0 \\ 0&3&0&0\\ 0&0&2&0\\ 0& 0&0&1 \end{array} \right)
A=⎝⎜⎜⎛4000030000200001⎠⎟⎟⎞
可以验证,对角线分别为矩阵的奇异值,则
A
2
A_2
A2定义为:
A
2
=
(
4
0
0
0
0
3
0
0
0
0
0
0
0
0
0
0
)
A_2= \left( \begin{array}{ccc} 4 & 0&0&0 \\ 0&3&0&0\\ 0&0&0&0\\ 0& 0&0&0 \end{array} \right)
A2=⎝⎜⎜⎛4000030000000000⎠⎟⎟⎞
可以验证
A
2
A_2
A2是所以rank为2的矩阵中离
A
A
A最近的,相当于是
A
A
A的低维矩阵近似。
2 Vector Norm(向量范式)
定义为:
∥
v
∥
p
=
(
∑
i
=
1
n
∣
v
i
∣
p
)
1
/
p
\lVert \mathbf{v} \rVert_p = (\sum_{i=1}^n \lvert v_i \rvert^p)^{1/p}
∥v∥p=(i=1∑n∣vi∣p)1/p
根据p的不同有以下形式
L1 Norm
∥
v
∥
1
=
∣
v
1
∣
+
∣
v
2
∣
+
.
.
.
+
∣
v
n
∣
\lVert \mathbf{v} \rVert_1 = \lvert v_1 \rvert + \lvert v_2 \rvert +...+\lvert v_n \rvert
∥v∥1=∣v1∣+∣v2∣+...+∣vn∣
L2 Norm
∥
v
∥
2
=
∣
v
1
∣
2
+
∣
v
2
∣
2
+
.
.
.
+
∣
v
n
∣
2
\lVert \mathbf{v} \rVert_2 = \sqrt{\lvert v_1 \rvert^2 + \lvert v_2 \rvert^2 +...+\lvert v_n \rvert^2}
∥v∥2=∣v1∣2+∣v2∣2+...+∣vn∣2
Infinity Norm
∥
v
∥
∞
=
max
i
∣
v
i
∣
\lVert \mathbf{v} \rVert_{\infty} = \max_i \lvert v_i\rvert
∥v∥∞=imax∣vi∣
Properties:
(1) ∥ c v ∥ = ∣ c ∣ ⋅ ∥ v ∥ (2) ∥ v + w ∥ ≤ ∥ v ∥ + ∥ w ∥ \begin{aligned} \text{(1)} \qquad&\lVert c\mathbf{v} \rVert = \lvert c \rvert \cdot \lVert \mathbf{v} \rVert \\ \text{(2)} \qquad&\lVert \mathbf{v} + \mathbf{w} \rVert \le \lVert \mathbf{v} \rVert + \lVert \mathbf{w} \rVert \end{aligned} (1)(2)∥cv∥=∣c∣⋅∥v∥∥v+w∥≤∥v∥+∥w∥
首先证明L1 Norm,令
v
=
[
v
1
,
v
2
,
.
.
,
v
n
]
T
\mathbf{v}=[v_1, v_2,..,v_n]^T
v=[v1,v2,..,vn]T,则
∥
v
∥
1
=
∣
v
1
∣
+
∣
v
2
∣
+
.
.
.
+
∣
v
n
∣
\lVert \mathbf{v} \rVert_1 = \lvert v_1 \rvert + \lvert v_2 \rvert +...+\lvert v_n \rvert
∥v∥1=∣v1∣+∣v2∣+...+∣vn∣
∥
c
v
∥
1
=
∣
c
v
1
∣
+
∣
c
v
2
∣
+
.
.
.
+
∣
c
v
n
∣
=
∣
c
∣
∣
v
1
∣
+
∣
c
∣
∣
v
2
∣
+
.
.
.
+
∣
c
∣
∣
v
n
∣
=
∣
c
∣
(
∣
v
1
∣
+
∣
v
2
∣
+
.
.
.
+
∣
v
n
∣
)
=
∣
c
∣
⋅
∥
v
∥
1
\begin{aligned} \lVert c\mathbf{v} \rVert_1 &= \lvert cv_1 \rvert + \lvert cv_2 \rvert +...+\lvert cv_n \rvert \\ &=\lvert c \rvert\lvert v_1 \rvert + \lvert c \rvert\lvert v_2 \rvert +...+\lvert c \rvert\lvert v_n \rvert \\ &= \lvert c \rvert(\lvert v_1 \rvert + \lvert v_2 \rvert +...+\lvert v_n \rvert) \\ &=\lvert c \rvert \cdot \lVert \mathbf{v} \rVert_1 \end{aligned}
∥cv∥1=∣cv1∣+∣cv2∣+...+∣cvn∣=∣c∣∣v1∣+∣c∣∣v2∣+...+∣c∣∣vn∣=∣c∣(∣v1∣+∣v2∣+...+∣vn∣)=∣c∣⋅∥v∥1
令
w
=
[
w
1
,
w
2
,
.
.
,
w
n
]
T
\mathbf{w}=[w_1, w_2,..,w_n]^T
w=[w1,w2,..,wn]T,则
v
+
w
=
[
v
1
+
w
1
,
v
2
+
w
2
,
.
.
,
v
n
+
w
n
]
T
\mathbf{v} + \mathbf{w}=[v_1+w_1, v_2+w_2,..,v_n+w_n]^T
v+w=[v1+w1,v2+w2,..,vn+wn]T
∥
v
+
w
∥
1
=
∣
v
1
+
w
1
∣
+
∣
v
2
+
w
2
∣
+
.
.
.
+
∣
v
n
+
w
n
∣
∥
v
∥
1
+
∥
w
∥
1
=
(
∣
v
1
∣
+
∣
w
1
∣
)
+
(
∣
v
2
∣
+
∣
w
2
∣
)
+
.
.
.
+
(
∣
v
n
∣
+
∣
w
n
∣
)
\begin{aligned} \lVert \mathbf{v} + \mathbf{w} \rVert_1 &= \lvert v_1 + w_1 \rvert + \lvert v_2+w_2 \rvert +...+\lvert v_n+w_n \rvert \\ \lVert \mathbf{v} \rVert_1 + \lVert \mathbf{w} \rVert_1 &= (\lvert v_1\rvert + \lvert w_1 \rvert) + (\lvert v_2 \rvert + \lvert w_2 \rvert) +...+ (\lvert v_n \rvert + \lvert w_n \rvert) \end{aligned}
∥v+w∥1∥v∥1+∥w∥1=∣v1+w1∣+∣v2+w2∣+...+∣vn+wn∣=(∣v1∣+∣w1∣)+(∣v2∣+∣w2∣)+...+(∣vn∣+∣wn∣)
又对于任意两个实数
x
,
y
x,y
x,y,
∣
x
+
y
∣
≤
∣
x
∣
+
∣
y
∣
\lvert x + y \rvert \le \lvert x\rvert + \lvert y \rvert
∣x+y∣≤∣x∣+∣y∣,所以
∥
v
+
w
∥
1
≤
∥
v
∥
1
+
∥
w
∥
1
\lVert \mathbf{v} + \mathbf{w} \rVert_1 \le \lVert \mathbf{v} \rVert_1 + \lVert \mathbf{w} \rVert_1
∥v+w∥1≤∥v∥1+∥w∥1成立。
L2 Norm,有
∥
v
∥
2
=
∣
v
1
∣
2
+
∣
v
2
∣
2
+
.
.
.
+
∣
v
n
∣
2
\lVert \mathbf{v} \rVert_2 = \sqrt{\lvert v_1 \rvert^2 + \lvert v_2 \rvert^2 +...+\lvert v_n \rvert^2}
∥v∥2=∣v1∣2+∣v2∣2+...+∣vn∣2
∥
c
v
∥
2
=
∣
c
v
1
∣
2
+
∣
c
v
2
∣
2
+
.
.
.
+
∣
c
v
n
∣
2
=
∣
c
∣
2
∣
v
1
∣
2
+
∣
c
∣
2
∣
v
2
∣
2
+
.
.
.
+
∣
c
∣
2
∣
v
n
∣
2
=
∣
c
∣
2
(
∣
v
1
∣
2
+
∣
v
2
∣
2
+
.
.
.
+
∣
v
n
∣
2
)
=
∣
c
∣
∣
v
1
∣
2
+
∣
v
2
∣
2
+
.
.
.
+
∣
v
n
∣
2
=
∣
c
∣
⋅
∥
v
∥
2
\begin{aligned} \lVert c\mathbf{v} \rVert_2 &= \sqrt{\lvert cv_1 \rvert^2 + \lvert cv_2 \rvert^2 +...+\lvert cv_n \rvert^2} \\ &=\sqrt{\lvert c \rvert^2\lvert v_1 \rvert^2 + \lvert c \rvert^2\lvert v_2 \rvert^2 +...+\lvert c \rvert^2\lvert v_n \rvert^2} \\ &= \sqrt{\lvert c \rvert^2(\lvert v_1 \rvert^2 + \lvert v_2 \rvert^2 +...+\lvert v_n \rvert^2)} \\ &=\lvert c \rvert\sqrt{\lvert v_1 \rvert^2 + \lvert v_2 \rvert^2 +...+\lvert v_n \rvert^2} \\ &=\lvert c \rvert \cdot \lVert \mathbf{v} \rVert_2 \\ \end{aligned}
∥cv∥2=∣cv1∣2+∣cv2∣2+...+∣cvn∣2=∣c∣2∣v1∣2+∣c∣2∣v2∣2+...+∣c∣2∣vn∣2=∣c∣2(∣v1∣2+∣v2∣2+...+∣vn∣2)=∣c∣∣v1∣2+∣v2∣2+...+∣vn∣2=∣c∣⋅∥v∥2
性质(1)证明完毕。
∥ v + w ∥ 2 = ∣ v 1 + w 1 ∣ 2 + ∣ v 2 + w 2 ∣ 2 + . . . + ∣ v n + w n ∣ 2 = ∑ i = 1 n ∣ v i + w i ∣ 2 = ∑ i = 1 n ( v i + w i ) 2 ∥ v ∥ 2 + ∥ w ∥ 2 = ∣ v 1 ∣ 2 + ∣ v 2 ∣ 2 + . . . + ∣ v n ∣ 2 + ∣ w 1 ∣ 2 + ∣ w 2 ∣ 2 + . . . + ∣ w n ∣ 2 = ∑ i = 1 n ∣ v i ∣ 2 + ∑ i = 1 n ∣ w i ∣ 2 \begin{aligned} \lVert \mathbf{v} + \mathbf{w} \rVert_2 &= \sqrt{\lvert v_1+w_1 \rvert^2 + \lvert v_2+w_2 \rvert^2 +...+\lvert v_n+w_n \rvert^2} \\ &=\sqrt{\sum_{i=1}^n \lvert v_i+w_i \rvert^2}\\ &=\sqrt{\sum_{i=1}^n {(v_i+w_i)}^2}\\ \lVert \mathbf{v} \rVert_2 + \lVert \mathbf{w} \rVert_2 &= \sqrt{\lvert v_1 \rvert^2 + \lvert v_2 \rvert^2 +...+\lvert v_n \rvert^2}+\sqrt{\lvert w_1 \rvert^2 + \lvert w_2 \rvert^2 +...+\lvert w_n \rvert^2} \\ &=\sqrt{\sum_{i=1}^n \lvert v_i \rvert^2} + \sqrt{\sum_{i=1}^n \lvert w_i \rvert^2} \end{aligned} ∥v+w∥2∥v∥2+∥w∥2=∣v1+w1∣2+∣v2+w2∣2+...+∣vn+wn∣2=i=1∑n∣vi+wi∣2=i=1∑n(vi+wi)2=∣v1∣2+∣v2∣2+...+∣vn∣2+∣w1∣2+∣w2∣2+...+∣wn∣2=i=1∑n∣vi∣2+i=1∑n∣wi∣2
因为都是不小于0的实数,可以通过其平方比较大小:
∥
v
+
w
∥
2
2
=
∑
i
=
1
n
(
v
i
+
w
i
)
2
=
∑
i
=
1
n
(
v
i
2
+
2
v
i
w
i
+
w
i
2
)
=
∑
i
=
1
n
v
i
2
+
2
∑
i
=
1
n
v
i
w
i
+
∑
i
=
1
n
w
i
2
∥
v
∥
2
+
∥
w
∥
2
2
=
(
∑
i
=
1
n
v
i
2
+
∑
i
=
1
n
w
i
2
)
2
=
∑
i
=
1
n
v
i
2
+
2
∑
i
=
1
n
v
i
2
∑
i
=
1
n
w
i
2
+
∑
i
=
1
n
w
i
2
\begin{aligned} {\lVert \mathbf{v} + \mathbf{w} \rVert_2}^2 &=\sum_{i=1}^n {(v_i+w_i)}^2 \\ &=\sum_{i=1}^n {(v_i^2+2v_iw_i+w_i^2)} \\ &=\sum_{i=1}^n {v_i^2}+2\sum_{i=1}^n {v_iw_i}+\sum_{i=1}^n {w_i^2}\\ {\lVert \mathbf{v} \rVert_2 + \lVert \mathbf{w} \rVert_2}^2 &={\left ( \sqrt{\sum_{i=1}^n v_i^2} + \sqrt{\sum_{i=1}^n w_i^2} \right)} ^2 \\ &=\sum_{i=1}^n v_i^2 +2\sqrt{\sum_{i=1}^n v_i^2\sum_{i=1}^n w_i^2} + \sum_{i=1}^n w_i^2 \end{aligned}
∥v+w∥22∥v∥2+∥w∥22=i=1∑n(vi+wi)2=i=1∑n(vi2+2viwi+wi2)=i=1∑nvi2+2i=1∑nviwi+i=1∑nwi2=(i=1∑nvi2+i=1∑nwi2)2=i=1∑nvi2+2i=1∑nvi2i=1∑nwi2+i=1∑nwi2
由柯西不等式(Cauchy–Schwarz Inequality)
∑
i
=
1
n
x
i
2
∑
i
=
1
n
y
i
2
≥
(
∑
i
=
1
n
x
i
y
i
)
2
\sum_{i=1}^nx_i^2 \sum_{i=1}^n y_i^2 \ge \left (\sum_{i=1}^n x_iy_i \right )^2
∑i=1nxi2∑i=1nyi2≥(∑i=1nxiyi)2,则有:
∑
i
=
1
n
v
i
2
∑
i
=
1
n
w
i
2
≥
(
∑
i
=
1
n
v
i
w
i
)
2
≥
∣
∑
i
=
1
n
v
i
w
i
∣
≥
∑
i
=
1
n
v
i
w
i
\sqrt{\sum_{i=1}^n v_i^2\sum_{i=1}^n w_i^2}\ge\sqrt{\left (\sum_{i=1}^n v_iw_i \right )^2} \ge \lvert \sum_{i=1}^n v_iw_i \rvert \ge \sum_{i=1}^n v_iw_i
i=1∑nvi2i=1∑nwi2≥(i=1∑nviwi)2≥∣i=1∑nviwi∣≥i=1∑nviwi
所以
∥
v
+
w
∥
2
≤
∥
v
∥
2
+
∥
w
∥
2
\lVert \mathbf{v} + \mathbf{w} \rVert_2 \le \lVert \mathbf{v} \rVert_2 + \lVert \mathbf{w} \rVert_2
∥v+w∥2≤∥v∥2+∥w∥2成立,性质(2)证明完毕。
3 Matrix Norm(矩阵范式)
用 ∥ A ∥ \lVert A\rVert ∥A∥表示矩阵 A A A的范式,下面给出几个矩阵范式的形式
L2 Norm
∥
A
∥
2
=
σ
1
\lVert A\rVert_2 = \sigma_1
∥A∥2=σ1
Frobenius Norm
∥
A
∥
F
=
∑
i
=
1
n
∑
j
=
1
m
(
a
i
j
)
2
=
a
11
2
+
.
.
.
+
a
1
m
2
+
.
.
.
+
a
n
1
2
+
.
.
.
+
a
n
m
2
\lVert A\rVert_F = \sqrt{\sum_{i=1}^n\sum_{j=1}^m{(a_{ij})}^2}= \sqrt{a_{11}^2+...+a_{1m}^2+...+a_{n1}^2+...+a_{nm}^2}
∥A∥F=i=1∑nj=1∑m(aij)2=a112+...+a1m2+...+an12+...+anm2
Nuclear Norm
∥
A
∥
N
u
c
l
e
a
r
=
σ
1
+
σ
2
+
.
.
.
+
σ
r
\lVert A\rVert_{Nuclear} = \sigma_1+\sigma_2+...+\sigma_r
∥A∥Nuclear=σ1+σ2+...+σr
Netflix的推荐系统和MRI中会应用到这个范式。
3 Pincipal Components Analysis(PCA)
假设有 N N N个人的身高年龄的数据,存储在 A o A_o Ao中 A o = ( v 1 , v 2 , . . . , v N ) A_o= \left( \mathbf{v_1},\mathbf{v_2},...,\mathbf{v_N} \right) Ao=(v1,v2,...,vN),其中 v i ∈ R 2 , ( i = 1 , . . , N ) \mathbf{v_i}\in \mathbb{R}^2,(i=1,..,N) vi∈R2,(i=1,..,N),令其第一维代表身高,第二维代表年龄。
首先进行正则化, A = A o − ( a h a h . . . a h a a a a . . . a a ) A = A_o- \left ( \begin{array}{ccc} a_h & a_h&...&a_h \\ a_a&a_a&...&a_a\end{array}\right ) A=Ao−(ahaaahaa......ahaa),其中 a h = 1 N ∑ i = 1 N v i 1 a_h=\frac{1}{N}\sum_{i=1}^Nv_{i1} ah=N1∑i=1Nvi1, a a = 1 N ∑ i = 1 N v i 2 a_a=\frac{1}{N}\sum_{i=1}^Nv_{i2} aa=N1∑i=1Nvi2,分别代表身高和年龄的平均值。PCA就是找到下图的一条线,实际上就是 a g e = σ 1 ⋅ h e i g h t age=\sigma_1\cdot height age=σ1⋅height:
其实是一个最小化问题,协方差矩阵(covariance matrix)定义为 S = A A T N − 1 S=\frac{AA^T}{N-1} S=N−1AAT,则我们称协方差矩阵的单位特征向量为数据的主成分(principal components),第一主成分是 S S S中最大特征值对应的特征向量,以此类推。
注意与最小二乘(least squares)的区别,最小二乘图如下,三个点的least squres,实际上是最小化图上的三个距离之和: