拉普拉斯特征映射(Laplacian Eigenmaps)

1、介绍

拉普拉斯特征映射(Laplacian Eigenmaps)是一种不太常见的降维算法,它看问题的角度和常见的降维算法不太相同,是从局部的角度去构建数据之间的关系。也许这样讲有些抽象,具体来讲,拉普拉斯特征映射是一种基于图的降维算法,它希望相互间有关系的点(在图中相连的点)在降维后的空间中尽可能的靠近,从而在降维后仍能保持原有的数据结构。
本文参考http://blog.csdn.net/xbinworld/article/details/8855796

2、推导

拉普拉斯特征映射通过构建邻接矩阵为 W 邻接矩阵定义见这里)的图来重构数据流形的局部结构特征。其主要思想是,如果两个数据实例i j 很相似,那么i j 在降维后目标子空间中应该尽量接近。设数据实例的数目为n,目标子空间即最终的降维目标的维度为 m 。定义n×m大小的矩阵 Y ,其中每一个行向量yTi是数据实例 i 在目标m维子空间中的向量表示(即降维后的数据实例 i )。我们的目的是让相似的数据样例i j 在降维后的目标子空间里仍旧尽量接近,故拉普拉斯特征映射优化的目标函数如下:


mini,j||yiyj||2Wij

下面开始推导:

i=1nj=1n||yiyj||2Wij=i=1nj=1n(yTiyi2yTiyj+yTjyj)Wij=i=1n(j=1nWij)yTiyi+j=1n(i=1nWij)yTjyj2i=1nj=1nyTiyjWij=2i=1nDiiyTiyi2i=1nj=1nyTiyjWij=2i=1n(Diiyi)T(Diiyi)2i=1nyTi(j=1nyjWij)=2trace(YTDY)2i=1nyTi(YW)i=2trace(YTDY)2trace(YTWY)=2trace[YT(DW)Y]=2trace(YTLY)

其中 W 是图的邻接矩阵,对角矩阵D是图的度矩阵( Dii=nj=1Wij ), L=DW 成为图的拉普拉斯矩阵。

变换后的拉普拉斯特征映射优化的目标函数如下:


mintrace(YTLY),s.t.YTDY=I

其中限制条件 s.t.YTDY=I 保证优化问题有解,下面用拉格朗日乘子法对目标函数求解:

f(Y)=tr(YTLY)+tr[Λ(YTDYI)]f(Y)Y=LY+LTY+DTYΛT+DYΛ=2LY+2DYΛ=0LY=DYΛ

其中用到了矩阵的迹的求导,具体方法见 迹求导 Λ 为一个对角矩阵,另外 L D均为实对称矩阵,其转置与自身相等。对于单独的 y 向量,上式可写为:Ly=λDy,这是一个 广义特征值问题。。通过求得 m 个最小非零特征值所对应的特征向量,即可达到降维的目的。

关于这里为什么要选择m个最小非零特征值所对应的特征向量,下面评论中的大佬指出,将 LY=DYΛ 带回到 mintrace(YTLY) 中,由于有着约束条件 YTDY=I 的限制,可以得到 mintrace(YTLY)=mintrace(Λ) 。即为特征值之和。我们为了目标函数最小化,要选择最小的 m 个特征值所对应的特征向量。

3、步骤

使用时算法具体步骤为:

步骤1:构建图

使用某一种方法来将所有的点构建成一个图,例如使用KNN算法,将每个点最近的K个点连上边。K是一个预先设定的值。

步骤2:确定权重

确定点与点之间的权重大小,例如选用热核函数来确定,如果点i和点 j 相连,那么它们关系的权重设定为:

Wij=e||xixj||2t

另外一种可选的简化设定是 Wij=1 如果点 i j相连,否则 Wij=0

步骤3:特征映射

计算拉普拉斯矩阵L的特征向量与特征值: Ly=λDy

使用最小的m个非零特征值对应的特征向量作为降维后的结果输出。

4、实例

image

上图所示左边的图表示有两类数据点(数据是图片),中间图表示采用拉普拉斯特征映射降维后每个数据点在二维空间中的位置,右边的图表示采用PCA并取前两个主要方向投影后的结果,可以清楚地看到,在此分类问题上,拉普拉斯特征映射的结果明显优于PCA。

image

上图说明的是高维数据(图中3D)也有可能是具有低维的内在属性的(图中Swiss roll实际上是2D的),但是这个低维不是原来坐标表示,例如如果要保持局部关系,蓝色和下面黄色是完全不相关的,但是如果只用任何2D或者3D的距离来描述都是不准确的。

下面的三个图是拉普拉斯特征映射在不同参数下的展开结果(降维到2D),可以看到,似乎是要把整个卷拉平了,蓝色和黄色差的比较远,很好地保留了数据原有的结构。

Laplacian Eigenmaps是一种经典的降维算法,它通过构建数据之间的相似关系图来重构数据流形的局部结构特征。该算法的主要思想是,如果两个数据实例i和j很相似,那么在降维后的目标子空间中,它们应该尽量接近。该算法通过优化一个目标函数来实现降维操作。目标函数的定义如下: \[J(Y) = \sum_{ij} w_{ij} ||y_i-y_j||^2\] 其中,Y表示降维后的数据矩阵,w_{ij}表示数据实例i和j之间的相似度。通过优化这个目标函数,可以得到降维后的数据矩阵Y,从而实现对数据的降维操作。 Laplacian Eigenmaps与其他降维算法(如PCA、LDA和LLE)相比,在处理非线性流形数据时具有更好的性能。它能够保留数据的局部结构特征,并且对噪声和异常值具有较好的鲁棒性。因此,在数据分析和可视化领域,Laplacian Eigenmaps被广泛应用于降维和数据流形学习任务中。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [机器学习降维算法四:Laplacian Eigenmaps 拉普拉斯特征映射](https://blog.csdn.net/weixin_43499818/article/details/108653762)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值