【机器学习】【降维】局部保持投影(LPP Locality Preserving Projections)

局部保持投影(LPP)

论文:《Locality Preserving Projections》作者:何小飞(2003)

所谓流形,是指高维样本空间中呈现的一种低维的局部性的结构。局部保留投影(LPP)方法是通过构建空间中各样本对之间的远近亲疏关系,并在投影中保持这种关系,在降维的同时保留空间中样本的局部邻域结构, 即在低维空间中最小化近邻样本间的距离加权平方和,也可以理解为尽量避免样本集的发散,保持原来的近邻结构。

一、摘要:

   LPP应该被视为PCA的替代方法。PCA是一种经典的线性技术,他沿着最大方差的方向投影数据。当高维数据位于嵌入外围空间的低维流形上是,通过求流行上 Laplace Beltrami算子特征函数的最优特征逼近,得到局部保持投影。因此,LPP具有许多非线性技术的数据表示特征,如拉普拉斯特征映射或局部线性嵌入。

注:PCA可见本人另外一篇文章: 【机器学习】【降维】PCA主成分分析

二、主要思想

   LPP构建了一个包含数据集领域信息的图。利用图的拉普拉斯变换概念,计算了一个将数据点映射到子空间的变换矩阵。
   这种线性变换再一定意义上最优的保留了局部的领域信息。该算法生成的表示映射可以看作是对流行的几何性质的自然产生的连续映射的线性离散近似。

三、算法步骤

给定 x 1 , x 2 , . . . , x m x_1,x_2,...,x_m x1,x2,...,xm in R n R^n Rn,找到变换矩阵 A A A把这 m m m个点映射到 y 1 , y 2 , . . . y m y_1,y_2,...y_m y1,y2,...ym in R l ( l < < n ) R^l(l<<n) Rl(l<<n)。其中 y i = A T x i 。 y_i=A^Tx_i。 yi=ATxi

1、构造邻接图在这里插入图片描述

注:
  第一种是使用kesail球的形式寻找,也就是两点之间的欧氏距离满足于小于某一约束就认定满足条件,这种方式kesail的取值难以把握
  第二种是直接计算 x i 与 x i x_i与x_i xixi之外所有点的欧氏距离,然后进行排序,找到距离最近的k个点。这种比较方便,使用matlab的find函数可容易找到

2、选择权重

W i j W_{ij} Wij in R m ∗ m R^{m*m} Rmm是稀疏对称矩阵,包括顶点 i 和 j i和j ij的边权重。如果是0,则表示顶点 i 和 j i和j ij之间没有边连接
在这里插入图片描述

注:
  (a)就是热核函数,目的是,如果 x i 与 x j x_i与x_j xixj的欧氏距离较大,对应的 W i j W_{ij} Wij就越小。反之,欧氏距离越小对应的 W i j W_{ij} Wij就越大
  (b)相当于如果 x j 是 x i x_j是x_i xjxi的k近邻,那么 W i j W_{ij} Wij就等于1,不论 x j x_j xj x j x_j xj泛指 x i x_i xi的k近邻,并不是一个实际的点)中的点与 x i x_i xi的距离多远或多近, W i j W_{ij} Wij都为1.这样就不能很好的区分。
  举例,一维数据点{1,2,10,20},那么对于2的2近邻来说就是1和10,但是明显1对2比10对2的距离要近,
  如果按照(a),那么 W 12 > W 32 W_{12}>W_{32} W12>W32,
  如果按照(b),那么 W 12 = W 32 W_{12}=W_{32} W12=W32,
所以在一般使用的时候,一般使用(a)的热核函数的方式

3、计算投影矩阵
X L X T α = λ X D X T α XLX^T \alpha =\lambda XDX^T \alpha XLXTα=λXDXTα
 其中 D D D是对角矩阵,对角线上的元素值是对于 W W W的行(或列,因为 W W W对称)的和。 D i i = ∑ j W j i D_{ii}=\sum_jW_{ji} Dii=jWji L = D − W L=D-W L=DW是拉普拉斯矩阵。

四、算法详解

LPP是通过线性近似LE算法(拉普拉斯特征映射)来保留局部信息。

给定一个数据集,我们构造一个加权图 G ( V , E ) G(V,E) G(V,E),表示任意两顶点的连接情况。现在来看一下这个问题,把权重矩阵 G G G映射为一条线以便于相互连接的点尽可能保持很靠近,令 y = ( y 1 , y 2 , . . . , y m ) T y=(y_1,y_2,...,y_m)^T y=(y1,y2,...,ym)T为这个映射。一个合理的选择"好"的映射的标准是在某些限制条件下最小化以下目标函数: ∑ i j ( y i − y j ) 2 W i j \sum_{ij}(y_i-y_j)^2W_{ij} ij(yiyj)2Wij

注:在高维空间中,数据点 x i 和 x j x_i和x_j xixj是什么关系,在降维后的空间中,数据点 y i 和 y j y_i和y_j yiyj就是什么关系。 ( y i − y j ) 2 (y_i-y_j)^2 (yiyj)2表示任意两个点的欧氏距离。

如果 x i 和 x j x_i和x_j xixj离的比较远(不是近邻关系),这时 W i j = 0 W_{ij}=0 Wij=0,因此上面的式子就是最小的0。
如果如果 x i 和 x j x_i和x_j xixj离的比较近(是近邻关系),这时 W i j W_{ij} Wij比较大,所以要保证 y i 和 y j y_i和y_j yiyj也要里的近,才能使式子最小。

假设 α \alpha α是变换矩阵,那么 y T = α T X y^T=\alpha^TX yT=αTX
1 2 ∑ i j ( y i − y j ) 2 W i j = 1 2 ∑ i j ( α T x i − α T x j ) 2 W i j = 1 2 ∑ i j ( α T x i x i T α + α T x j x j T α − 2 α T x i x j T α ) W i j = ∑ i α T x i D i i x i T α − ∑ i j α T x i W i j x j T α = α T X ( D − W ) X T α = α T X L X T α \frac{1}{2}\sum_{ij}(y_i-y_j)^2W_{ij}\\ =\frac{1}{2}\sum_{ij}(\alpha^Tx_i-\alpha^Tx_j)^2W_{ij}\\=\frac{1}{2}\sum_{ij}(\alpha^Tx_ix_i^T\alpha+\alpha^Tx_jx_j^T\alpha-2\alpha^Tx_ix_j^T\alpha)W_{ij}\\=\sum_i\alpha^Tx_iD_{ii}x_i^T\alpha-\sum_{ij}\alpha^Tx_iW_{ij}x_j^T\alpha\\=\alpha^TX(D-W)X^T\alpha\\=\alpha^TXLX^T\alpha 21ij(yiyj)2Wij=21ij(αTxiαTxj)2Wij=21ij(αTxixiTα+αTxjxjTα2αTxixjTα)Wij=iαTxiDiixiTαijαTxiWijxjTα=αTX(DW)XTα=αTXLXTα
其中 D D D提供了对数据点的自度量, D D D中最大的值 D i i D_{ii} Dii所对应的 y i y_i yi就是最重要的。

为防止消除任意的缩放因子,施加如下限制 y T D y = 1    ⟹    α T X D X T α = 1 y^TDy=1\implies \alpha^TXDX^T\alpha=1 yTDy=1αTXDXTα=1

最后的目标函数为: a r g m i n α α T X L X T α s . t d . α T X D X T α = 1 argmin_{\alpha}\alpha^TXLX^T\alpha\\s.td.\alpha^TXDX^T\alpha=1 argminααTXLXTαs.td.αTXDXTα=1

利用拉格朗日乘子法:
X L X T α = λ X D X T α XLX^T\alpha=\lambda XDX^T\alpha XLXTα=λXDXTα

参考 https://blog.csdn.net/qq_39187538/article/details/90402961

  • 8
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值