PCA、ICA 和拉普拉斯特征图

机器算法验证 主成分分析 光谱分析 独立成分分析
2022-03-28 01:43:15

问题

我对 Laplacian Eigenmaps 方法非常感兴趣。目前,我正在使用它对我的医疗数据集进行降维。

但是,我在使用该方法时遇到了问题。

例如,我有一些数据(频谱信号),我可以使用 PCA(或 ICA)来获取一些 PC(或 IC)。问题是如何使用 LE 获得原始数据的相似降维分量?

根据拉普拉斯特征映射方法,我们需要解决广义特征值问题,即

Ly=λDy

这里是特征向量。如果我绘制例如前 3 个特征向量(根据 3 个特征值的解),则结果不可解释。y

但是,当我绘制前 3 台 PC 和前 3 台 IC 时,结果似乎总是清楚地(视觉上)代表原始数据x

我假设原因是因为矩阵由权重矩阵(邻接矩阵)定义,并且数据已与热核拟合以创建,它使用指数函数。我的问题是如何检索的简化分量(不是矩阵)?LWxWxyL


数据

我的数据集受到限制,不容易证明问题​​。在这里,我创建了一个玩具问题来展示我的意思和我想问的问题。

请看图,

首先,我创建了一些正弦波 A、B、C,以红色曲线显示(图的第一列)。A、B 和 C 有 1000 个样本,换句话说,保存在 1x1000 个向量中。

其次,我使用随机创建的线性组合混合源 A、B、C,例如,其中是随机值。混合信号处于非常高维空间中,例如,1517 是随机选择的高维空间。我在绿色曲线中只显示了前三行信号 M(图的第二列)。M=r1A+r2B+r3Cr1,r2,r3MMR1517×1000

接下来,我运行 PCA、ICA 和拉普拉斯特征图来获得降维结果。我选择使用 3 个 PC、3 个 IC 和 3 个 LE 进行公平比较(蓝色曲线分别显示为图中的第 3 列、第 4 列和最后一列)。

从 PCA 和 ICA 的结果(图中第 3、4 列)可以看出,我们可以将结果解释为某种降维,即对于 ICA 结果,我们可以通过(我不确定我们是否也可以得到的 PCA 结果,但结果似乎很适合我)。M=b1IC1+b2IC2+b3IC3M=a1PC1+a2PC2+a3PC3

但是,请看 LE 的结果,我几乎无法解释结果(图的最后一列)。减少的组件似乎有些“错误”。另外,我想提一下,最后一列的图最终是公式yLy=λDy

你们有更多的想法吗?

图 1 使用 12 个最近邻,加热内核中的 sigma 为 0.5: 从左到右的列:原始信号、混合信号、PC、IC、LE

图 2 使用 1000 个最近邻,加热内核中的 sigma 为 0.5: 从左到右的列:原始信号、混合信号、PC、IC、LE

源代码:带有所需包的Matlab代码

3个回答

您的问题的答案由原始 Laplacian Eigenmaps论文第 6 页底部的映射给出

xi(f1(i),,fm(i))

因此,例如,点在前 2 个“组件”中的嵌入由给出,其中是对应于两个最小的非零特征值的特征向量从广义特征值问题x5(f1(5),f2(5))f1f2Lf=λDf

请注意,与 PCA 不同,获得样本外嵌入并不简单。换句话说,您可以获得在计算时已经考虑过的点的嵌入,但如果它是一个新点则不能(很容易)。如果您对后者感兴趣,请查阅这篇论文L

这是Trosset 教授课程网页的链接,他正在写一本书 http://mypage.iu.edu/~mtrosset/Courses/675/notes.pdf,每周左右更新。还给出了拉普拉斯特征图的 R 函数。自己试试吧。你也可以考虑一下Belkin 的这篇论文

感谢 Trosset 教授的 Abhik 学生

与 PCA 不同,拉普拉斯特征图使用对应于最小特征值的广义特征向量。它跳过具有最小特征值(可能为零)的特征向量,并使用与接下来的几个最小特征值对应的特征向量。PCA 是使用内核/gram 矩阵的最大方差保持嵌入。Laplacian Eigenmaps 更多地被视为关于组合图拉普拉斯算子的最小化问题(参考 Trosset 的论文)。