机器学习笔记之降维——从奇异值分解角度观察主成分分析
- 引言
- 回顾:最优特征方向的求解过程
- 从样本自身角度求解最优特征方向
- 主坐标分析(PCoA)
- 主坐标分析的推导过程
引言
前面分别从最大投影方差和最小重构代价的角度介绍了主成分分析(Principal Component Analysis,PCA)。本节将介绍从奇异值分解(Singular Value Decomposition)的角度观察主成分分析。
回顾:最优特征方向的求解过程
以最大投影方差角度为例,某样本集合
X
\mathcal X
X关于某特征方向
u
⃗
\vec u
u
的投影方差结果表示如下:
J
=
u
⃗
T
⋅
[
1
N
∑
i
=
1
N
(
x
(
i
)
−
X
ˉ
)
⋅
(
x
(
i
)
−
X
ˉ
)
T
]
⋅
u
⃗
=
u
⃗
T
⋅
S
⋅
u
⃗
\begin{aligned} \mathcal J & = \vec u^T \cdot \left[\frac{1}{N} \sum_{i=1}^N \left(x^{(i)} - \bar {\mathcal X}\right) \cdot \left(x^{(i)} - \bar {\mathcal X}\right)^T \right] \cdot \vec u \\ & = \vec u^T \cdot \mathcal S \cdot \vec u \end{aligned}
J=u
T⋅[N1i=1∑N(x(i)−Xˉ)⋅(x(i)−Xˉ)T]⋅u
=u
T⋅S⋅u
其中
x
(
i
)
(
i
=
1
,
2
,
⋯
,
N
)
x^{(i)}(i=1,2,\cdots,N)
x(i)(i=1,2,⋯,N)表示数据集合
X
\mathcal X
X内的某一具体样本;
S
\mathcal S
S表示样本集合
X
\mathcal X
X的协方差矩阵;
搭配约束条件,使用拉格朗日乘数法对如下优化问题进行求解:
{
arg
max
u
⃗
J
u
⃗
T
⋅
u
⃗
=
1
→
L
(
u
⃗
,
λ
)
=
u
⃗
T
⋅
S
⋅
u
⃗
+
λ
(
1
−
u
⃗
T
⋅
u
⃗
)
\begin{cases} \mathop{\arg\max}\limits_{\vec u} \mathcal J \\ \vec u^T \cdot \vec u = 1 \end{cases} \to \mathcal L(\vec u,\lambda) = \vec u^T \cdot \mathcal S \cdot \vec u + \lambda (1 - \vec u^T \cdot \vec u)
⎩
⎨
⎧u
argmaxJu
T⋅u
=1→L(u
,λ)=u
T⋅S⋅u
+λ(1−u
T⋅u
)
通过求解得知,拉格朗日因子
λ
\lambda
λ是协方差矩阵
S
\mathcal S
S的特征值结果:
S
⋅
u
⃗
=
λ
⋅
u
⃗
\mathcal S \cdot \vec u = \lambda \cdot \vec u
S⋅u
=λ⋅u
由于协方差矩阵
S
\mathcal S
S是实对称矩阵,因此不同特征值
λ
\lambda
λ对应的特征向量 不仅是线性无关,并且是两两正交。而最优特征方向组成的正交基是由数值最大的前若干个特征值对应的特征向量构成。
基于上述逻辑,首先对矩阵
S
\mathcal S
S进行奇异值分解。由于
S
\mathcal S
S本身是实对称矩阵,因此关于
S
\mathcal S
S的奇异值分解就是
S
\mathcal S
S的特征值分解:
S
=
G
⋅
K
⋅
G
T
\mathcal S = \mathcal G \cdot \mathcal K \cdot \mathcal G^T
S=G⋅K⋅GT
其中
G
\mathcal G
G表示 标准化后的特征向量组成的矩阵,即
G
\mathcal G
G中的各向量之间两两正交(
E
\mathcal E
E表示单位向量):
G
T
⋅
G
=
E
\mathcal G ^T \cdot \mathcal G = \mathcal E
GT⋅G=E
K
\mathcal K
K是
S
\mathcal S
S的对角化矩阵,对角阵上的元素是
S
\mathcal S
S本身的特征值结果(特征值由大到小排列):
K
=
(
λ
1
λ
2
⋱
λ
p
)
(
λ
1
≥
λ
2
≥
⋯
≥
λ
p
)
\mathcal K = \begin{pmatrix}\lambda_1 \\ & \lambda_2 \\ &&\ddots \\ &&&\lambda_p\end{pmatrix} \quad (\lambda_1 \geq \lambda_2 \geq \cdots \geq \lambda_p)
K=
λ1λ2⋱λp
(λ1≥λ2≥⋯≥λp)
最终选择前
q
q
q个最大的特征值对应的特征向量即可。
从样本自身角度求解最优特征方向
上述求解过程之所以看起来简单,是因为协方差矩阵 S \mathcal S S是实对称矩阵 这个优势存在。本节仅从数据集合 X \mathcal X X的角度出发,来求解最优特征方向。
针对数据集合
X
\mathcal X
X表示如下:
X
=
[
x
1
(
1
)
,
x
2
(
1
)
,
⋯
,
x
p
(
1
)
x
1
(
2
)
,
x
2
(
2
)
,
⋯
,
x
p
(
2
)
⋮
x
1
(
N
)
,
x
2
(
N
)
,
⋯
,
x
p
(
N
)
]
N
×
p
\mathcal X = \begin{bmatrix} x_1^{(1)},x_2^{(1)},\cdots,x_p^{(1)} \\ x_1^{(2)},x_2^{(2)},\cdots,x_p^{(2)} \\ \vdots \\ x_1^{(N)},x_2^{(N)},\cdots,x_p^{(N)} \\ \end{bmatrix}_{N \times p}
X=
x1(1),x2(1),⋯,xp(1)x1(2),x2(2),⋯,xp(2)⋮x1(N),x2(N),⋯,xp(N)
N×p
对
X
\mathcal X
X执行中心化操作,结合样本均值与方差的矩阵表示一节中介绍的中心矩阵
H
\mathcal H
H,中心化后的数据集合
X
^
\hat {\mathcal X}
X^表示如下:
X
^
=
H
⋅
X
H
=
E
N
−
1
N
I
N
⋅
I
N
T
\hat {\mathcal X} = \mathcal H \cdot \mathcal X \\ \mathcal H = \mathcal E_N - \frac{1}{N}\mathcal I_N \cdot \mathcal I_N^T
X^=H⋅XH=EN−N1IN⋅INT
简单推导 如下:
H
⋅
X
=
(
E
N
−
1
N
I
N
⋅
I
N
T
)
⋅
X
=
X
−
1
N
I
N
⋅
I
N
T
⋅
X
\begin{aligned} \mathcal H \cdot \mathcal X & = \left(\mathcal E_N - \frac{1}{N}\mathcal I_N \cdot \mathcal I_N^T\right) \cdot \mathcal X \\ & = \mathcal X - \frac{1}{N}\mathcal I_N \cdot \mathcal I_N^T \cdot \mathcal X \end{aligned}
H⋅X=(EN−N1IN⋅INT)⋅X=X−N1IN⋅INT⋅X
观察第二项,
1
N
I
N
⋅
I
N
T
\frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T
N1IN⋅INT具体表示如下:
1
N
I
N
⋅
I
N
T
=
(
1
N
,
1
N
,
⋯
,
1
N
1
N
,
1
N
,
⋯
,
1
N
⋮
1
N
,
1
N
,
⋯
,
1
N
)
N
×
N
\frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T = \begin{pmatrix} \frac{1}{N}, \frac{1}{N},\cdots ,\frac{1}{N} \\ \frac{1}{N}, \frac{1}{N},\cdots ,\frac{1}{N} \\ \vdots \\ \frac{1}{N}, \frac{1}{N},\cdots ,\frac{1}{N} \\ \end{pmatrix}_{N \times N}
N1IN⋅INT=
N1,N1,⋯,N1N1,N1,⋯,N1⋮N1,N1,⋯,N1
N×N
因而
1
N
I
N
⋅
I
N
T
⋅
X
\frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T \cdot \mathcal X
N1IN⋅INT⋅X即:
所有行都与第一行相同。
1
N
I
N
⋅
I
N
T
⋅
X
=
(
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
1
N
∑
i
=
1
N
x
p
(
i
)
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
1
N
∑
i
=
1
N
x
p
(
i
)
⋮
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
1
N
∑
i
=
1
N
x
p
(
i
)
)
\frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T \cdot \mathcal X = \begin{pmatrix}\frac{1}{N} \sum_{i=1}^{N}x_1^{(i)},\cdots,\frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \\ \frac{1}{N} \sum_{i=1}^{N}x_1^{(i)},\cdots,\frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \\ \vdots \\ \frac{1}{N} \sum_{i=1}^{N}x_1^{(i)},\cdots,\frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \end{pmatrix}
N1IN⋅INT⋅X=
N1∑i=1Nx1(i),⋯,N1∑i=1Nxp(i)N1∑i=1Nx1(i),⋯,N1∑i=1Nxp(i)⋮N1∑i=1Nx1(i),⋯,N1∑i=1Nxp(i)
最终
X
−
1
N
I
N
⋅
I
N
T
⋅
X
\mathcal X - \frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T \cdot \mathcal X
X−N1IN⋅INT⋅X即 中心化后的样本结果:
X
−
1
N
I
N
⋅
I
N
T
⋅
X
=
[
x
1
(
1
)
−
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
x
p
(
1
)
−
1
N
∑
i
=
1
N
x
p
(
i
)
x
1
(
2
)
−
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
x
p
(
2
)
−
1
N
∑
i
=
1
N
x
p
(
i
)
⋮
x
1
(
N
)
−
1
N
∑
i
=
1
N
x
1
(
i
)
,
⋯
,
x
p
(
N
)
−
1
N
∑
i
=
1
N
x
p
(
i
)
]
N
×
p
=
[
x
(
1
)
−
X
ˉ
,
x
(
2
)
−
X
ˉ
,
⋯
,
x
(
N
)
−
X
ˉ
]
T
\begin{aligned} \mathcal X - \frac{1}{N} \mathcal I_N \cdot \mathcal I_N^T \cdot \mathcal X & = \begin{bmatrix} x_1^{(1)} - \frac{1}{N} \sum_{i=1}^{N}x_1^{(i)}, \cdots, x_p^{(1)} - \frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \\ x_1^{(2)} - \frac{1}{N} \sum_{i=1}^{N}x_1^{(i)}, \cdots, x_p^{(2)} - \frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \\ \vdots \\ x_1^{(N)} - \frac{1}{N} \sum_{i=1}^{N}x_1^{(i)}, \cdots, x_p^{(N)} - \frac{1}{N} \sum_{i=1}^{N}x_p^{(i)} \\ \end{bmatrix}_{N \times p} \\ & = \left[x^{(1)} - \bar {\mathcal X},x^{(2)} - \bar {\mathcal X},\cdots,x^{(N)} - \bar {\mathcal X}\right]^T \end{aligned}
X−N1IN⋅INT⋅X=
x1(1)−N1∑i=1Nx1(i),⋯,xp(1)−N1∑i=1Nxp(i)x1(2)−N1∑i=1Nx1(i),⋯,xp(2)−N1∑i=1Nxp(i)⋮x1(N)−N1∑i=1Nx1(i),⋯,xp(N)−N1∑i=1Nxp(i)
N×p=[x(1)−Xˉ,x(2)−Xˉ,⋯,x(N)−Xˉ]T
我们观察到中心化后的样本集合
H
⋅
X
\mathcal H \cdot \mathcal X
H⋅X其结果维度是
N
×
p
N\times p
N×p,意味着该矩阵不是方阵,更没有像
S
\mathcal S
S一样规整的特征值分解。
因此,首先对矩阵
H
⋅
X
\mathcal H \cdot \mathcal X
H⋅X进行 奇异值分解:
H
⋅
X
=
U
Σ
V
T
\mathcal H \cdot \mathcal X = \mathcal U \Sigma \mathcal V^T
H⋅X=UΣVT
其中,一般情况下,有:
其中
E
N
,
E
p
\mathcal E_N,\mathcal E_p
EN,Ep均表示单位向量。
-
U
N
×
N
\mathcal U_{N \times N}
UN×N是列正交矩阵,即
U
\mathcal U
U中任意列向量两两正交,显然有:
U T U = E N \mathcal U^T \mathcal U = \mathcal E_N UTU=EN -
V
p
×
p
\mathcal V_{p \times p}
Vp×p是正交矩阵,满足:
V T V = V V T = E p \mathcal V^T\mathcal V = \mathcal V\mathcal V^T = \mathcal E_{p} VTV=VVT=Ep
此时已经将中心化后的数据集合
X
^
\hat {\mathcal X}
X^表示为
3
3
3个矩阵的乘法形式,继续使用这些矩阵表示样本集合的协方差矩阵
S
\mathcal S
S:
这里根据‘中心矩阵’
H
\mathcal H
H的相关性质
H
T
=
H
,
H
2
=
H
\mathcal H^T = \mathcal H,\mathcal H^2 = \mathcal H
HT=H,H2=H,详见传送门
S
=
1
N
X
T
⋅
H
⋅
X
=
1
N
X
T
H
⋅
H
X
=
1
N
X
T
H
T
⋅
H
X
=
1
N
(
H
X
)
T
⋅
(
H
X
)
\begin{aligned} \mathcal S & = \frac{1}{N} \mathcal X^T \cdot \mathcal H \cdot \mathcal X\\ & = \frac{1}{N} \mathcal X^T \mathcal H \cdot \mathcal H \mathcal X \\ & = \frac{1}{N} \mathcal X^T \mathcal H^T \cdot \mathcal H \mathcal X \\ & = \frac{1}{N} (\mathcal H \mathcal X)^T\cdot (\mathcal H\mathcal X) \end{aligned}
S=N1XT⋅H⋅X=N1XTH⋅HX=N1XTHT⋅HX=N1(HX)T⋅(HX)
将奇异值分解结果带入上式:
注意:
S
=
1
N
(
U
Σ
V
T
)
T
⋅
U
Σ
V
T
=
1
N
V
Σ
T
U
T
⋅
U
Σ
V
T
\begin{aligned} \mathcal S & = \frac{1}{N} \left(\mathcal U \Sigma\mathcal V^T\right)^T \cdot \mathcal U \Sigma\mathcal V^T \\ & = \frac{1}{N} \mathcal V\Sigma^T\mathcal U^T \cdot \mathcal U \Sigma\mathcal V^T \end{aligned}
S=N1(UΣVT)T⋅UΣVT=N1VΣTUT⋅UΣVT
继续化简,将
U
T
U
=
E
N
\mathcal U^T\mathcal U = \mathcal E_N
UTU=EN带入(消掉了):
注意,虽然
Σ
\Sigma
Σ是对角矩阵,但是它不一定是方阵,因此
Σ
T
Σ
\Sigma^T\Sigma
ΣTΣ不能写成
Σ
2
\Sigma^2
Σ2的形式,但
Σ
T
Σ
\Sigma^T\Sigma
ΣTΣ同样是一个对角阵,并且是一个方阵,该方阵内对角线所有元素是
Σ
\Sigma
Σ对角线元素的平方。
S
=
V
(
Σ
T
Σ
)
V
T
\mathcal S = \mathcal V(\Sigma^T\Sigma)\mathcal V^T
S=V(ΣTΣ)VT
对比协方差矩阵
S
\mathcal S
S的特征值分解,确实存在相似之处:
{
S
=
G
⋅
K
⋅
G
T
S
=
V
(
Σ
T
Σ
)
V
T
→
{
G
=
V
K
=
Σ
T
Σ
\begin{cases}\mathcal S = \mathcal G \cdot \mathcal K \cdot \mathcal G^T \\ \mathcal S = \mathcal V(\Sigma^T\Sigma)\mathcal V^T \end{cases} \to \begin{cases} \mathcal G = \mathcal V \\ \mathcal K = \Sigma^T\Sigma\end{cases}
{S=G⋅K⋅GTS=V(ΣTΣ)VT→{G=VK=ΣTΣ
这种方式提供了另外一种思路:没有必要将协方差矩阵
S
\mathcal S
S求解出来再执行特征值分解,而是直接对中心化后的数据集合
H
⋅
X
\mathcal H\cdot \mathcal X
H⋅X进行奇异值分解,而奇异值分解产生的矩阵
V
\mathcal V
V就是最优特征方向对应的正交基。
主坐标分析(PCoA)
基于协方差矩阵的表现形式:
S
=
X
T
H
T
⋅
H
X
\mathcal S = \mathcal X^T \mathcal H^T \cdot \mathcal H \mathcal X
S=XTHT⋅HX
定义如下矩阵形式:
T
=
H
X
⋅
X
T
H
\begin{aligned} \mathcal T & = \mathcal H \mathcal X \cdot \mathcal X^T\mathcal H \\ \end{aligned}
T=HX⋅XTH
对奇异值分解结果带入
T
\mathcal T
T中:
将
V
T
V
=
E
p
\mathcal V^T\mathcal V = \mathcal E_p
VTV=Ep带入式中(消掉)。
注意:此时的
Σ
Σ
T
\Sigma\Sigma^T
ΣΣT依然是一个对角阵,并且是一个方阵。但与
Σ
T
Σ
\Sigma^T\Sigma
ΣTΣ之间存在区别。
T
=
(
U
Σ
V
T
)
⋅
(
U
Σ
V
T
)
T
=
U
Σ
V
T
⋅
V
Σ
T
U
T
=
U
Σ
Σ
T
U
T
\begin{aligned} \mathcal T &= \left(\mathcal U \Sigma \mathcal V^T\right) \cdot \left(\mathcal U \Sigma \mathcal V^T\right)^T \\ & = \mathcal U\Sigma \mathcal V^T \cdot \mathcal V\Sigma^T\mathcal U^T \\ & = \mathcal U \Sigma \Sigma^T\mathcal U^T \end{aligned}
T=(UΣVT)⋅(UΣVT)T=UΣVT⋅VΣTUT=UΣΣTUT
通过观察发现,矩阵
T
\mathcal T
T与协方差矩阵
S
\mathcal S
S之间存在相同的(有效的)特征值。
需要解释一下,上面说到
Σ
T
Σ
\Sigma^T\Sigma
ΣTΣ和
Σ
Σ
T
\Sigma\Sigma^T
ΣΣT确实是大小不同的对角方阵。但即便大小不同,对角方阵中的‘非零元素值’(特征值)均相同,并且是
Σ
\Sigma
Σ矩阵对应元素的平方结果。
示例:已知对角矩阵
Σ
^
\hat {\Sigma}
Σ^表示如下:
Σ
^
=
[
a
,
0
0
,
b
0
,
0
]
3
×
2
\hat \Sigma = \begin{bmatrix}a,0 \\ 0,b \\ 0,0\end{bmatrix}_{3 \times 2}
Σ^=
a,00,b0,0
3×2
对应的
Σ
T
Σ
\Sigma^T\Sigma
ΣTΣ和
Σ
Σ
T
\Sigma\Sigma^T
ΣΣT 表示如下:
Σ
T
Σ
=
[
a
2
,
0
,
0
0
,
b
2
,
0
0
,
0
,
0
]
3
×
3
Σ
Σ
T
=
[
a
2
,
0
0
,
b
2
]
2
×
2
\Sigma^T\Sigma = \begin{bmatrix}a^2,0,0 \\ 0,b^2,0 \\ 0,0,0\end{bmatrix}_{3 \times 3} \Sigma\Sigma^T = \begin{bmatrix}a^2,0 \\ 0,b^2\end{bmatrix}_{2 \times 2}
ΣTΣ=
a2,0,00,b2,00,0,0
3×3ΣΣT=[a2,00,b2]2×2
我们发现:即便两矩阵结果不同,但是他们的非零特征值相同,并且无论
Σ
\Sigma
Σ什么形状,它们之间只差一种特征值:
0
0
0,而在降维过程中选择特征向量时,特征值为
0
0
0的特征向量不含任何权重,从而可以直接忽略。
至此,知道了矩阵 T \mathcal T T和协方差矩阵 S \mathcal S S共用同一组特征值,那么 T \mathcal T T到底是什么?,它有什么作用?
回顾最大投影方差/最小重构代价角度的主成分分析,主成分分析的具体操作流程表示如下:
- 无论是协方差矩阵 S \mathcal S S的 特征值分解 还是中心化数据集合 H ⋅ X \mathcal H \cdot \mathcal X H⋅X的 奇异值分解,都需要找到由大到小的特征值序列;
- 找到特征值 λ k ( k = 1 , 2 , ⋯ , q ) \lambda_k(k=1,2,\cdots,q) λk(k=1,2,⋯,q)对应的特征向量(主成分) u ⃗ k ( k = 1 , 2 , ⋯ , q ) \vec u_k(k=1,2,\cdots,q) u k(k=1,2,⋯,q);
- 通过特征向量
u
k
⃗
(
k
=
1
,
2
,
⋯
,
q
)
\vec {u_k}(k=1,2,\cdots,q)
uk
(k=1,2,⋯,q)找到 原始样本点
x
(
i
)
∈
X
x^{(i)} \in \mathcal X
x(i)∈X在新坐标轴
u
k
⃗
\vec {u_k}
uk
上各分量的坐标结果:
将‘原始坐标’与‘新坐标’比对一下~
x ( i ) = ( x 1 ( i ) , x 2 ( i ) , ⋯ , x p ( i ) ) p × 1 T u ( i ) = ( u 1 ( i ) , u 2 ( i ) , ⋯ , u q ( i ) ) q × 1 T u ( i ) = [ ( x ( i ) − X ˉ ) T ⋅ u ⃗ ] ⋅ u ⃗ u ⃗ = ( u 1 , u 2 , ⋯ , u q ) T \begin{aligned} x^{(i)} & = \left(x_1^{(i)},x_2^{(i)},\cdots,x_p^{(i)}\right)^T_{p \times 1} \\ u^{(i)} & = \left(u_1^{(i)},u_2^{(i)},\cdots,u_q^{(i)}\right)^T_{q \times 1} \\ u^{(i)} & = \left[\left(x^{(i)} - \bar {\mathcal X}\right)^T \cdot \vec u\right] \cdot \vec u \\ \vec u & = (u_1,u_2,\cdots,u_q)^T \end{aligned} x(i)u(i)u(i)u =(x1(i),x2(i),⋯,xp(i))p×1T=(u1(i),u2(i),⋯,uq(i))q×1T=[(x(i)−Xˉ)T⋅u ]⋅u =(u1,u2,⋯,uq)T
至此,观察到基于 S \mathcal S S特征值分解的主成分分析必须通过找到对应分量的坐标轴,并进行映射(投影),才能得到对应分量的坐标。
但对应基于矩阵 T \mathcal T T奇异值分解的操作可以直接产生对应分量的坐标,而跳过寻找主成分的操作。我们称这种操作为主坐标分析(Principal Coordinate Analysis,PCoA)。
主坐标分析的推导过程
为什么矩阵 T \mathcal T T能够实现 直接获取坐标值 的操作呢?我们将主成分分析中的新坐标用矩阵的方式表示出来:
根据
S
\mathcal S
S的奇异值分解:
S
=
V
(
Σ
T
Σ
)
V
T
\mathcal S = \mathcal V (\Sigma^T\Sigma) \mathcal V^T
S=V(ΣTΣ)VT
我们得出正交矩阵
V
\mathcal V
V中的各向量即最优特征向量,因此,降维后的数据集合
U
U
U表示如下:
U
U
U表示所有样本点降维后,新坐标组成的矩阵。
U
=
H
X
⋅
V
U = \mathcal H \mathcal X \cdot \mathcal V
U=HX⋅V
使用奇异值分解继续对上式进行操作:
U
=
H
X
⋅
V
=
(
U
Σ
V
T
)
⋅
V
=
U
Σ
N
×
p
U= \mathcal H \mathcal X \cdot \mathcal V = (\mathcal U\Sigma\mathcal V^T) \cdot \mathcal V = \mathcal U \Sigma_{N\times p}
U=HX⋅V=(UΣVT)⋅V=UΣN×p
关于矩阵
T
\mathcal T
T的表示:
T
=
U
Σ
Σ
T
U
T
\mathcal T = \mathcal U \Sigma \Sigma^T\mathcal U^T
T=UΣΣTUT,我们给
T
\mathcal T
T 右乘一个
U
Σ
\mathcal U\Sigma
UΣ:
将
U
T
U
=
E
N
\mathcal U^T\mathcal U = \mathcal E_N
UTU=EN代入式中。
T
⋅
U
Σ
=
U
Σ
Σ
T
U
T
⋅
U
Σ
=
U
Σ
Σ
T
Σ
=
U
Σ
(
Σ
T
Σ
)
\begin{aligned} \mathcal T \cdot \mathcal U\Sigma & = \mathcal U \Sigma \Sigma^T\mathcal U^T \cdot \mathcal U\Sigma \\ & = \mathcal U \Sigma \Sigma^T\Sigma \\ & = \mathcal U\Sigma (\Sigma^T\Sigma) \end{aligned}
T⋅UΣ=UΣΣTUT⋅UΣ=UΣΣTΣ=UΣ(ΣTΣ)
这明显就是 特征值的定义式。
我们发现, Σ T Σ \Sigma^T\Sigma ΣTΣ依旧是特征值矩阵,其对角线上的元素是特征值和 S \mathcal S S奇异值分解后的特征值没有任何变化,而 U Σ \mathcal U \Sigma UΣ就是特征值对应特征向量构成的矩阵,也就是坐标矩阵。
从主坐标分析角度观察,根本不需要求解 V \mathcal V V,或者说根本不需要求解 H X ⋅ V \mathcal H \mathcal X \cdot \mathcal V HX⋅V,即向量投影操作,而是通过直接对 T \mathcal T T进行奇异值分解,求解 U Σ \mathcal U\Sigma UΣ即可得到降维后的新坐标。
也可以从维度角度观察:
- 主成分分析中进行奇异值分解的
S
\mathcal S
S是
p
×
p
p\times p
p×p矩阵,是基于样本集合维度特征的协方差矩阵,它是对数据特征进行分解;
S = X T H ⋅ X = ( H X ) T ⋅ ( H X ) \mathcal S = \mathcal X^T \mathcal H \cdot \mathcal X = (\mathcal H \mathcal X)^T \cdot (\mathcal H \mathcal X) S=XTH⋅X=(HX)T⋅(HX) - 而主坐标分析中进行奇异值分解的
T
\mathcal T
T是
N
×
N
N \times N
N×N矩阵,它可以理解为样本內积,它是对数据本身直接进行分解。
T = H X X T H = ( H X ) ⋅ ( H X ) T \mathcal T = \mathcal H \mathcal X \mathcal X^T\mathcal H = (\mathcal H\mathcal X) \cdot (\mathcal H\mathcal X)^T T=HXXTH=(HX)⋅(HX)T
至此,降维部分介绍全部结束,下一节将介绍概率图模型。
相关参考:
机器学习-降维5-主成分分析(PCA)-SVD角度
