Isomap 和 LLE


1. 等度量映射(Isomap)

等度量映射 (Isomap, Isometric Mapping) 的假设是低维流形嵌入高维空间之后,直接在高维空间计算直线距离具有误导性
如下图,两个黑点之间就距离应该是经过流形曲面的红线距离,但是直接计算欧式距离得到的是两点之间的直线距离。

机器学习笔记之——降维(三)Isomap 和 LLE

因为流形在局部内近似于一个欧式空间(平面),因此在某个小的局部内计算欧式距离是合理的。于是先建立一个KNN 图,只计算每个点与其最近的 K 个邻居的距离,与其他点的距离设为无穷大。然后使用 Dijkstra 算法或 Floyd 算法计算任意两点之间的最短路径,作为两点之间的距离。最后再使用 MDS 算法进行降维。

2. 局部线性嵌入(LLE)

局部线性嵌入(LLE, Locally Linear Embedding) 试图保持邻域内样本之间的线性关系。其假设样本 xix_i 的坐标可以表示为其邻居的线性组合:
xi=wijxj+wikxk+wilxlx_i = w_{ij}x_j+w_{ik}x_k+w_{il}x_l LLE 试图让降维前后上式保持不变。
首先 LLE 在原始空间内,找出每个样本点 xix_i 的最近的 k 个邻居集合 QiQ_i,然后根据下面的目标函数计算出 wiw_i:
minw1,...wmi=1mxijQiwijxj22\min_{w_1,...w_m}\sum_{i=1}^m \Vert x_i-\sum_{j\in Q_i}w_{ij}x_j \Vert_2^2Cjk=(xixj)T(xixk)C_{jk}=(x_i-x_j)^T(x_i-x_k) ,则上述的 wiw_i 具有闭式解:
wij=kQiCjk1l,sQiCls1 w_{ij}=\frac{\sum_{k\in Q_i}C_{jk}^{-1}}{\sum_{l,s\in Q_i}C_{ls}^{-1}} 由于 wiw_i 在降维后不变,因此可以通过 wiw_i 来求出降维后的低维向量 ziz_i
minz1,...zmi=1mzijQiwijzj22\min_{z_1,...z_m}\sum_{i=1}^m\Vert z_i-\sum_{j\in Q_i}w_{ij}z_j \Vert_2^2Z=[z1, ,zm],Wij=wijZ=[z_1, \cdots,z_m], W_{ij}=w_{ij},则上述优化目标为:
minZZZWT22=minZtr( (ZZWT)(ZZWT)T)=minZtr( Z(IWT)(Z(IWT)T)=minZtr( Z(IW)T(IW)ZT)=minZtr( ZMZT)s.t.ZZT=I \begin{aligned} \min_{Z}\Vert Z-ZW^T \Vert_2^2 & = \min_{Z}\quad tr(\,(Z-ZW^T)(Z-ZW^T)^T)\\ & = \min_{Z}\quad tr(\,Z(I-W^T)(Z(I-W^T)^T) \\ & = \min_{Z}\quad tr(\,Z(I-W)^T(I-W)Z^T) \\ & = \min_{Z}\quad tr(\,ZMZ^T) \\ s.t. \quad \quad ZZ^T=I \end{aligned}
其中 M=(IW)T(IW)M=(I-W)^T(I-W),通过求解 MM 的最小的 dd' 个特征值对应的特征向量即为 ZTZ^T 的每一列。

相关文章: