LLE(locally linear embedding)原理介绍

云计算 waitig 821℃ 百度已收录 0评论

LLE原理

局部线性嵌入(Locally Linear Embedding, LLE)是无监督非线性降维算法,是流行学习的一种。

LLE和Isomap一样试图在降维过程中保持高维空间中的流形结构。Isomap把任意两个样本点之间的测地距离作为流形结构的特征,而LLE认为局部关系刻画了流形结构。

LLE认为,在高维中间中的任意一个样本点和它的邻居样本点近似位于一个超平面上,所以该样本点可以通过其邻居样本点的线性组合重构出来。

这里写图片描述

我们假设共有N个邻居点。重构误差为

J(W)=i=1N||xik=1Kwikηik||2(1)

其中wik时的邻居系数。

为了得到W,求解最小化问题

minWs.t.J(W)k=1Kwik=1,i=1,2,,N.(2)\begin{align}
\min_W & \quad J(W) \\\\
s.t. & \quad \sum_{k=1}^K w_{ik}=1, i=1,2,\cdots, N. \\\\

为了使得流形结构在低维空间中得以保持,LLE要求低维空间中的样本点仍能保持上面的局部线性关系。假设xi可以通过下面的优化问题进行求解:

minYs.t.i=1N||yij=1Nwijyj||21Ni=1NyiyTi=I.(3)\begin{align}
\min_Y & \quad \sum_{i=1}^N ||y_i-\sum_{j=1}^N w_{ij} y_j||^2 \\\\
s.t. & \quad \frac{1}{N}\sum_{i=1}^N y_i y_i^T = I . \\\\

注意,这里的wij,根据上下文确定到底是哪个。

两个优化问题的求解

上面两个优化问题都可以直接得到最优解的解析式。

高维空间中的优化问题

有两种方法可以推出优化问题(2)的最优解。

方法一

wi,则

J(W)=i=1N||xiNiwTi||2=i=1N(xiNiwTi)T(xiNiwTi)=i=1N(xTixi2xTiNiwTi+wiNTiNiwTi).\begin{align}
J(W)&=\sum_{i=1}^N||x_i-N_i w_i^T||^2 \\\\
&=\sum_{i=1}^N(x_i-N_i w_i^T)^T(x_i-N_i w_i^T) \\\\
&=\sum_{i=1}^N(x_i^Tx_i – 2x_i^TN_i w_i^T + w_i N_i^T N_i w_i^T)

由于第一项和W无关,所以目标函数等价于

J(W)=i=1N(2xTiNiwTi+wiNTiNiwTi).(4)

构建拉格朗日函数

L(W,λ)=i=1N(2xTiNiwTi+wiNTiNiwTi)+i=1Nλi(wi11),

求导得到:

Lwi=2xTiNi+2wiNTiNi+λi1T=0,(5)

Lλi=(wi11)=0.(6)

Ci=NTiNiRK×K.(7)

由公式(5)可以得到

wi=(xTiNi12λi1T)(Ci)1,(8)

于是有

wi1=(xTiNi12λi1T)_m=1K(Ci)1_1m_m=1K(Ci)1_2m_m=1K(Ci)1_Km=xTiNi_m=1K(Ci)1_1m_m=1K(Ci)1_2m_m=1K(Ci)1_Km12λi1T_m=1K(Ci)1_1m_m=1K(Ci)1_2m_m=1K(Ci)1_Km=[xTiηi1,xTiηi2,,xTiηiK]_m=1K(Ci)1_1m_m=1K(Ci)1_2m_m=1K(Ci)1_Km12λin=1K_m=1K(Ci)1_nm=n=1KxTiηin_m=1K(Ci)1_nm12λin=1K_m=1K(Ci)1_nm=n=1K_m=1KxTiηin(Ci)1_nm12λin=1K_m=1K(Ci)1_nm,\begin{align}
w_i 1 &= (x_i^T N_i – \frac{1}{2}\lambda_i 1^T)\begin{pmatrix}
\sum\_{m=1}^K (C^i)^{-1}\_{1m} \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{2m} \\\\
\vdots \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{Km}
\end{pmatrix} \\\\
&=x_i^T N_i \begin{pmatrix}
\sum\_{m=1}^K (C^i)^{-1}\_{1m} \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{2m} \\\\
\vdots \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{Km}
\end{pmatrix} – \frac{1}{2}\lambda_i 1^T \begin{pmatrix}
\sum\_{m=1}^K (C^i)^{-1}\_{1m} \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{2m} \\\\
\vdots \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{Km}
\end{pmatrix} \\\\
& = [x_i^T\eta_{i1}, x_i^T\eta_{i2}, \cdots, x_i^T\eta_{iK}] \begin{pmatrix}
\sum\_{m=1}^K (C^i)^{-1}\_{1m} \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{2m} \\\\
\vdots \\\\
\sum\_{m=1}^K (C^i)^{-1}\_{Km}
\end{pmatrix} – \frac{1}{2}\lambda_i \sum_{n=1}^K \sum\_{m=1}^K (C^i)^{-1}\_{nm} \\\\
& = \sum_{n=1}^K x_i^T\eta_{in} \sum\_{m=1}^K (C^i)^{-1}\_{nm} – \frac{1}{2}\lambda_i \sum_{n=1}^K \sum\_{m=1}^K (C^i)^{-1}\_{nm} \\\\
& = \sum_{n=1}^K \sum\_{m=1}^K x_i^T\eta_{in} (C^i)^{-1}\_{nm} – \frac{1}{2}\lambda_i \sum_{n=1}^K \sum\_{m=1}^K (C^i)^{-1}\_{nm} \\\\

代入(6)中,得到

n=1K_m=1KxTiηin(Ci)1_nm12λin=1K_m=1K(Ci)1_nm=1,

所以

λi=2(Kn=1_m=1KxTiηin(Ci)1_nm1)Kn=1_m=1K(Ci)1_nm,

代入公式(7)中得到

wi=(xTiNi(1Kn=1_m=1KxTiηin(Ci)1_nm)Kn=1_m=1K(Ci)1_nm1T)(Ci)1.(9)

根据公式(9)得到所有的wi

方法二

J(W)=i=1N||xik=1Kwikηik||2=i=1N||k=1Kwikxik=1Kwikηik||2=i=1N||k=1Kwik(xiηik)||2=i=1N||(XiNi)wTi||2=i=1N((XiNi)wTi)T((XiNi)wTi)=i=1Nwi(XiNi)T(XiNi)wTi,(10)\begin{align}
J(W) &= \sum_{i=1}^N ||x_i-\sum_{k=1}^K w_{ik}\eta_{ik}||^2 \\\\
& = \sum_{i=1}^N ||\sum_{k=1}^K w_{ik} x_i-\sum_{k=1}^K w_{ik}\eta_{ik}||^2 \\\\
& = \sum_{i=1}^N ||\sum_{k=1}^K w_{ik} (x_i-\eta_{ik})||^2 \\\\
& = \sum_{i=1}^N || (X_i-N_i)w_i^T||^2 \\\\
& = \sum_{i=1}^N ((X_i-N_i)w_i^T)^T((X_i-N_i)w_i^T) \\\\
& = \sum_{i=1}^N w_i(X_i-N_i)^T(X_i-N_i)w_i^T

其中Xi=[xi,,xi]Rd×K

构建拉格朗日函数

L(W,λ)=i=1Nwi(XiNi)T(XiNi)wTi+i=1Nλi(wi11),

求导得到

Lwi=2wi(XiNi)T(XiNi)+λi1T=0,(11)

Lλi=(wi11)=0.(12)

S=(XiNi)T(XiNi).(13)

可以得到

wi=12λi1TS1,(14)

代入公式(12)中,得到

12λi1TS111=0,

1TS11

代入公式(14)得到

wi=1TS11TS11.(15)

暂时还没有证明(9)和(15)是否等价,留作以后的习题吧。

低维空间中的优化问题

Y=[y1,y2,,yN]RN×N行元素。优化问题(3)的目标函数可以化简成:

J(Y)=i=1N||yij=1Nwijyj||2=i=1N||yiYwTi||2=i=1N(yiYwTi)T(yiYwTi)=i=1N(yTiyi2yTiYwTi+wiYTYwTi)=i=1NyTiyi2i=1NyTiYwTi+i=1NwiYTYwTi=i=1NyTiyi2i=1N[yTiy1,yTiy2,,yTiyN]wi1wi2wiN+i=1N(wi1,wi2,,wiN)yT1yT2yTN(y1,y2,,yN)wi1wi2wiN=i=1NyTiyi2i=1Nj=1NyTiyjwij+i=1Nm=1NwimyTmn=1Nwinyn=i=1NyTiyi2i=1Nj=1NyTiyjwij+i=1Nm=1Nn=1NwimwinyTmyn=i=1NyTiyi2i=1Nj=1NyTiyjwij+k=1Ni=1Nj=1NwkiwkjyTiyj=i=1NyTiyii=1Nj=1N2wijyTiyj+i=1Nj=1N(k=1Nwkiwkj)yTiyj,(16)\begin{align}
J(Y)&= \sum_{i=1}^N ||y_i-\sum_{j=1}^N w_{ij} y_j||^2 \\\\
& = \sum_{i=1}^N ||y_i- Yw_i^T||^2\\\\
& = \sum_{i=1}^N(y_i- Yw_i^T)^T(y_i- Yw_i^T) \\\\
&= \sum_{i=1}^N(y_i^Ty_i – 2y_i^TYw_i^T+w_iY^TYw_i^T) \\\\
&= \sum_{i=1}^N y_i^Ty_i -2 \sum_{i=1}^N y_i^TYw_i^T + \sum_{i=1}^N w_iY^TYw_i^T \\\\
&=\sum_{i=1}^N y_i^Ty_i – 2 \sum_{i=1}^N [y_i^Ty_1, y_i^Ty_2, \cdots, y_i^Ty_N] \begin{pmatrix} w_{i1} \\\\ w_{i2} \\\\ \vdots \\\\ w_{iN}\end{pmatrix} \\\\
& \quad + \sum_{i=1}^N \begin{pmatrix} w_{i1}, w_{i2},
\cdots, w_{iN}
\end{pmatrix} \begin{pmatrix} y_1^T \\\\ y_2^T
\\\\ \vdots \\\\ y_N^T
\end{pmatrix} \begin{pmatrix} y_1,y_2, \cdots,y_N
\end{pmatrix}\begin{pmatrix} w_{i1}\\\\w_{i2}\\\\ \vdots\\\\ w_{iN} \end{pmatrix} \\\\
&= \sum_{i=1}^N y_i^Ty_i – 2 \sum_{i=1}^N \sum_{j=1}^N y_i^T y_j w_{ij} + \sum_{i=1}^N \sum_{m=1}^N w_{im}y_m^T \sum_{n=1}^N w_{in}y_n \\\\
&= \sum_{i=1}^N y_i^Ty_i – 2 \sum_{i=1}^N \sum_{j=1}^N y_i^T y_j w_{ij} + \sum_{i=1}^N \sum_{m=1}^N \sum_{n=1}^N w_{im} w_{in} y_m^T y_n \\\\
&= \sum_{i=1}^N y_i^Ty_i – 2 \sum_{i=1}^N \sum_{j=1}^N y_i^T y_j w_{ij} + \sum_{k=1}^N \sum_{i=1}^N \sum_{j=1}^N w_{ki} w_{kj} y_i^T y_j \\\\
&= \sum_{i=1}^N y_i^Ty_i – \sum_{i=1}^N \sum_{j=1}^N 2 w_{ij} y_i^T y_j + \sum_{i=1}^N \sum_{j=1}^N \left( \sum_{k=1}^N w_{ki} w_{kj} \right) y_i^T y_j \\\\

δij=1,ifi=j0,ifij,\delta_{ij}=\begin{cases}
1,\quad if \quad i=j \\\\
0, \quad if \quad i \neq j

Mij=δij2wij+k=1Nwkiwkj,(17)

则(16)可以写成

J(Y)=i=1Nj=1NMijyTiyj.(18)

通过展开进行矩阵相乘,可以证明

J(Y)=i=1Nj=1NMijyTiyj=tr(YMYT).

Z=YT,那么

J(Z)=tr(ZTMZ).(19)

优化问题(3)的约束条件等价于

1NYYT=I,
Z

于是优化问题(3)现在变成

minZs.t.tr(ZTMZ),1NZTZ=I(21)\begin{align}
\min_Z & \quad tr(Z^TMZ), \\\\
s.t. & \quad \frac{1}{N}Z^TZ=I

拉格朗日乘子法,可以得到这个优化问题的最优解满足

Mzi=λizi,(22)

即最优解肯定是M

又因为约束条件1NZTZ=I\frac{1}{N}Z^TZ=I

所以

J(Z)=N2i=1Nλi,
所以为了最小化J(Z)

综上,M

LLE算法总结

算法流程

步骤一
首先根据欧氏距离或者其他度量标准得到每个样本的K

步骤二
根据公式(7)求出Ci。代入(9)中,得到根据每个样本的重构系数。

步骤三
把步骤二中的权重系数重新构建成稀疏矩阵W

算法优缺点

优点

  • 算法中只涉及矩阵运算,容易实现;
  • 低维空间维度变化时,不需要重新运行LLE,只要在原有低维空间的基础上增加或者减去维度;

缺点

  • 数据流形不能是闭合结构,否则LLE不再适用

疑问

  1. 优化问题(18)怎么应用拉格朗日乘子法?
    自己尝试推导了一下,发现得到的方程组非常繁琐,不知道怎么化简。

参考

[1] Nonlinear dimensionality reduction by locally linear embedding. Sam T. Roweis and Lawrence K. Saul. 2000.
[2] 降维打击之LLE算法
[3] 机器学习降维算法三:LLE (Locally Linear Embedding) 局部线性嵌入


本文由【waitig】发表在等英博客
本文固定链接:LLE(locally linear embedding)原理介绍
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)