MDS算法的基本介绍
假定m个样本在原始空间的距离矩阵为 D ∈ R m × m D∈ R^{m\times m} D∈Rm×m,其第 i 行 j 列的元素 d i s t i j dist_{ij} distij 为样本 x i x_{i} xi 到 x j x_{j} xj 的距离,我们的目标是获得在 d ′ d' d′ 维空间的表示 Z ∈ R d ′ × m , d ′ < < d Z ∈ R^{d'\times m},d'<<d Z∈Rd′×m,d′<<d且任意两个样本在 d ′ d' d′维空间中的欧氏距离等于原始空间的距离,即 ∣ ∣ z i − z j ∣ ∣ = d i s t i j ||z_{i} - z_{j}|| = dist_{ij} ∣∣zi−zj∣∣=distij
令 $B = Z^{T}Z ∈ R^{m\times m},之中B为降维后样本的内积矩阵,
b i j = z i T z j b_{ij}=z^{T}_{i}z_{j} bij=ziTzj,有如下公式:
d i s t i j 2 = ∣ ∣ z i − z j ∣ ∣ 2 = ∣ ∣ z i ∣ ∣ 2 + ∣ ∣ z j ∣ ∣ 2 − 2 z i T z j = b i i + b j j − 2 b i j dist_{ij}^{2} = ||z_{i} - z_{j}||^{2} = ||z_{i}||^{2} + ||z_{j}||^{2} - 2z_{i}^{T}z_{j} = b_{ii} + b_{jj} - 2b_{ij} distij2=∣∣zi−zj∣∣2=∣∣zi∣∣2+∣∣zj∣∣2−2ziTzj=bii+bjj−2bij
- 为什么需要满足
∣
∣
z
i
−
z
j
∣
∣
=
d
i
s
t
i
j
||z_{i} - z_{j}|| = dist_{ij}
∣∣zi−zj∣∣=distij 这个条件?
解答: ∣ ∣ z i − z j ∣ ∣ ||z_{i} - z_{j}|| ∣∣zi−zj∣∣在此处表示L2范数,即各个元素平法和的 1 2 \dfrac{1}{2} 21平方,在这里表示欧式距离, ∣ ∣ z i − z j ∣ ∣ ||z_{i} - z_{j}|| ∣∣zi−zj∣∣表示降维之后的两点之间的欧氏距离, d i s t i j dist_{ij} distij表示降维之前两点之间的欧式距离,这两个相等则保持了数据降维前后的欧氏距离不变 - 为什么
D
∈
R
m
×
m
D∈ R^{m\times m}
D∈Rm×m,而
Z
∈
R
d
′
×
m
,
d
′
<
<
d
Z ∈ R^{d'\times m},d'<<d
Z∈Rd′×m,d′<<d ?
解答:D是各个样本之间距离矩阵,而Z表示的相当于是降维之后的维度矩阵,每一个样本的维度为 d ′ d' d′,那么降维之前的维度矩阵,在这里我们假设为P,则P应该为 P ∈ R d × m P ∈ R^{d\times m} P∈Rd×m,表示每一个样本的维度为 d d d - 为什么要取特征值矩阵的前
d
′
d'
d′ 个最大特征值来构成对角矩阵?
解答:注:这个答案目前只是猜测,可能不对 因为大特征值对应着占比例大的成分,求出前k大的特征向量就可以近似刻画出数据点中的信息(看的别人的解答,但是自己还是没理解透彻)