机器学习基础---降维方法---局部保持投影(LPP)推导

LPP

方法概述

核心思想
  • 有映射 Y m ∗ n = f ( X d ∗ n ) \underset{m*n}{Y}=f(\underset {d*n}X) mnY=f(dnX),能够实现将d维的样本变换到m维空间之中
  • 假设:对于一个好的降维方法,在高维空间下距离近(相似度高)的两个点,在低维空间下依旧保持相近的关系
  • 考虑映射 Y = W T X Y=W^TX Y=WTX,即原样本空间中有 x i x_i xi x j x_j xj距离近, y i y_i yi y j y_j yj ( y i = W T x i y_i=W^Tx_i yi=WTxi)仍保持相近关系
相关定义
  • 权重矩阵S:

    • 定义样本 x i x_i xi x j x_j xj之间的权重 w i j w_{ij} wij,原则是样本点之间距离越小,权重越大

    • 权重矩阵S常用定义方式:
      s i j = { s i j = e x p ( − ∣ ∣ x i − x j ∣ ∣ 2 t ) x i ∈ N k ( x j ) 即 x i 是 x j 的 k 近 邻 s i j = 0 e l s e s_{ij}= \begin{cases} \begin{aligned} &s_{ij} = exp(-\frac{||x_i-x_j||^2}{t}) &x_i\in N_k(x_j)即 x_i是x_j的k近邻\\ &s_{ij} = 0 &else \end{aligned} \end{cases} sij=sij=exp(txixj2)sij=0xiNk(xj)xixjkelse

      S = [ s 11 s 12 . . . s 1 n . . . . . . . . . . . . s n 1 s n 2 . . . s n n ] S=\left[ \begin{matrix} s_{11} & s_{12} & ... & s_{1n}\\ ... & ... & ... & ...\\ s_{n1} & s_{n2} & ... & s_{nn} \end{matrix} \right] S=s11...sn1s12...sn2.........s1n...snn

  • 度矩阵D:

    • 度矩阵D是一个对角阵,其对角元素 D i i = ∑ j = 1 n s i j D_{ii}=\sum_{j=1}^ns_{ij} Dii=j=1nsij

    • D = [ ∑ j = 1 n s 1 j 0 . . . 0 0 ∑ j = 1 n s 2 j . . . 0 . . . . . . . . . . . . 0 0 . . . ∑ j = 1 n s n j ] D=\left[ \begin{matrix} \sum_{j=1}^ns_{1j} & 0 & ... & 0\\ 0 & \sum_{j=1}^ns_{2j} & ... & 0\\ ... & ... & ... & ...\\ 0 & 0 & ... & \sum_{j=1}^ns_{nj} \end{matrix} \right] D=j=1ns1j0...00j=1ns2j...0............00...j=1nsnj

  • 拉普拉斯矩阵L: L = D − S L=D-S L=DS

  • 有运算:
    Y D Y T = [ y 1 , y 2 , . . . , y n ] [ d 11 0 . . . 0 0 d 22 . . . 0 . . . . . . . . . . . . 0 0 . . . d n n ] [ y 1 T y 2 T . . . y n T ] \begin{aligned} YDY^T&=[y_1,y_2,...,y_n] \left[ \begin{matrix} d_{11} & 0 & ... & 0\\ 0 & d_{22} & ... & 0\\ ... & ... & ... & ...\\ 0 & 0 & ... & d_{nn} \end{matrix} \right] \left[ \begin{matrix} y_1^T\\ y_2^T\\ ...\\ y_n^T \end{matrix} \right]\\ \end{aligned}\\ YDYT=[y1,y2,...,yn]d110...00d22...0............00...dnny1Ty2T...ynT
    = [ d 11 y y 1 , . . . , d n n y n ] [ y 1 T y 2 T . . . y n T ]                    = [d_{11y}y_1,...,d_{nn}y_n] \left[ \begin{matrix} y_1^T\\ y_2^T\\ ...\\ y_n^T \end{matrix} \right] \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \\ =[d11yy1,...,dnnyn]y1Ty2T...ynT                  
    = d 11 y 1 y 1 T + d 22 y 2 y 2 T + . . . + d n n y n y n T =d_{11}y_1y_1^T+d_{22}y_2y_2^T+...+d_{nn}y_ny_n^T\\ =d11y1y1T+d22y2y2T+...+dnnynynT
    因此有:
    t r ( Y D Y T ) = ∑ i N d i i y i T y i tr(YDY^T)=\sum_i^Nd_{ii}y_i^Ty_i tr(YDYT)=iNdiiyiTyi
    类似可得:
    t r ( Y S Y T ) = ∑ i N ∑ j N s i j y i T y j tr(YSY^T)=\sum_i^N\sum_j^Ns_{ij}y_i^Ty_j tr(YSYT)=iNjNsijyiTyj

优化目标
  • 定义优化目标:
    m i n ∑ i ∑ j ∣ ∣ y i − y j ∣ ∣ 2 s i j min\sum_{i}\sum_{j}||y_i-y_j||^2s_{ij} minijyiyj2sij
    即在原始空间中近的点( s i j s_{ij} sij大),其在降维后应该尽可能接近( y i y_i yi y j y_j yj距离更小)

方法推导

  • 对于LPP方法,有目标:
    a r g   m i n W ∑ i ∑ j ∣ ∣ y i − y j ∣ ∣ 2 s i j \underset{W}{arg\ min}\sum_i\sum_j||y_i-y_j||^2s_{ij} Warg minijyiyj2sij

  • 对于目标:
          ∑ i N ∑ j N ∣ ∣ y i − y j ∣ ∣ 2 s i j = ∑ i N ∑ j N ( y i T y i − y i T y j − y j T y i + y j T y j ) s i j = 2 ∑ i N y i T y i d i i − 2 ∑ i N ∑ j N y i T y j s i j = 2 t r ( Y D Y T ) − 2 t r ( Y S Y T ) = 2 t r ( Y L Y T ) \begin{aligned} &\ \ \ \ \ \sum_i^N\sum_j^N||y_i-y_j||^2s_{ij} \\ &= \sum_i^N\sum_j^N(y_i^Ty_i-y_i^Ty_j-y_j^Ty_i+y_j^Ty_j)s_{ij} \\ &= 2\sum_i^N y_i^Ty_id_{ii}-2\sum_i^N\sum_j^N y_i^Ty_js_{ij} \\ &= 2tr(YDY^T)-2tr(YSY^T)\\ &= 2tr(YLY^T) \end{aligned}      iNjNyiyj2sij=iNjN(yiTyiyiTyjyjTyi+yjTyj)sij=2iNyiTyidii2iNjNyiTyjsij=2tr(YDYT)2tr(YSYT)=2tr(YLYT)
    去除乘数,最小化目标为:
    t r ( Y L Y T ) tr(YLY^T) tr(YLYT)
    带入 Y = W T X Y=W^TX Y=WTX,得最小化目标:
    t r ( W T X L X T W ) tr(W^TXLX^TW) tr(WTXLXTW)

  • 该目标存在平凡零解 W = O m ∗ d W=O_{m*d} W=Omd

    此时L取最小值0,出现维度坍缩,所有样本映射到同一个点上,此解无意义

  • 当W不取零矩阵时,由于没有添加尺度约束,在降维子空间一定(组成基向量方向一致)情况下,当尺度不断变小时,目标L会同时变小,无限趋于0,不存在最小值

  • 因此,考虑对最小化目标变形为:
    t r ( Y L Y T ) t r ( Y D Y T ) = t r ( W T X L X T W ) t r ( W T X D X T W ) \frac{tr(YLY^T)}{tr(YDY^T)}=\frac{tr(W^TXLX^TW)}{tr(W^TXDX^TW)} tr(YDYT)tr(YLYT)=tr(WTXDXTW)tr(WTXLXTW)
    考虑到尺度因素,加以约束 Y D Y T = I YDY^T=I YDYT=I也即 W T X D X T W = I W^TXDX^TW=I WTXDXTW=I

  • 参考LDA中提到的广义瑞利商,可知:
    λ m i n ( ( X D X T ) − 1 ( X L X T ) ) ≤ t r ( W T X L X T W ) t r ( W T X D X T W ) ≤ λ m a x ( ( X D X T ) − 1 ( X L X T ) ) \lambda_{min}((XDX^T)^{-1}(XLX^T))\leq\frac{tr(W^TXLX^TW)}{tr(W^TXDX^TW)}\leq\lambda_{max}((XDX^T)^{-1}(XLX^T)) λmin((XDXT)1(XLXT))tr(WTXDXTW)tr(WTXLXTW)λmax((XDXT)1(XLXT))
    变换矩阵: W = [ w 1 , w 2 , . . . , w m ] W=[w_1,w_2,...,w_m] W=[w1,w2,...,wm] ( X D X T ) − 1 ( X L X T ) (XDX^T)^{-1}(XLX^T) (XDXT)1(XLXT)最小m个特征向量构成

  • 矩阵形式推导

    由拉格朗日乘子法,构建L:
    L = t r ( W T X L X T W ) − t r ( Λ ( W T X D X T W − I ) ) L = tr(W^TXLX^TW)-tr(\Lambda(W^TXDX^TW-I)) L=tr(WTXLXTW)tr(Λ(WTXDXTWI))
    对W求偏导并令为0:
    2 X L X T W − 2 X D X T W Λ = 0 X L X T W = X D X T W Λ 有 : ( X D X T ) − 1 X L X T W = W Λ 2XLX^TW-2XDX^TW\Lambda=0\\ XLX^TW= XDX^TW \Lambda\\ 有:(XDX^T)^{-1}XLX^TW=W\Lambda 2XLXTW2XDXTWΛ=0XLXTW=XDXTWΛ(XDXT)1XLXTW=WΛ
    W由 ( X D X T ) − 1 X L X T (XDX^T)^{-1}XLX^T (XDXT)1XLXT的特征向量作为列向量构成,且为了最小化目标函数,选取的特征向量应该是最小m个特征值对应的特征向量

LPP与PCA

  • 对PCA方法,其优化目标为 a r g m a x W = t r ( W T X X T W ) \underset {W}{argmax} = tr(W^TXX^TW) Wargmax=tr(WTXXTW),有约束 W T W = I W^TW=I WTW=I

    构建的拉格朗日乘式解: X X T W = W Λ XX^T W=W\Lambda XXTW=WΛ,可变为 X X T X X T W = X X T W Λ XX^TXX^T W=XX^TW\Lambda XXTXXTW=XXTWΛ

    与LPP对比,是 L = X T X L=X^TX L=XTX D = I D=I D=I的特例

  • 即PCA可以看成是一种特殊的LPP,区别在于LPP更关注局部关系,而PCA关注的是全局方差信息

方法流程

1)由样本矩阵X构建权重矩阵S,度矩阵D,拉普拉斯矩阵L

2)求 ( X D X T ) − 1 X L X T (XDX^T)^{-1}XLX^T (XDXT)1XLXT的特征向量,取最小m个作列向量构成变换矩阵W

3)由 Y = W T X Y=W^TX Y=WTX完成降维

参考资料

【1】LPP局部保持投影

【2】局部保留投影(LPP)推导

【3】算法小课堂:Locality Preserving Projections (LPP)

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值