局部线性嵌入

2025 年 1 月 5 日 | 阅读 9 分钟

局部线性嵌入(LLE)是一种无监督方法,旨在在将数据从其原始高维空间转换为低维表示时,保留底层非线性特征结构的根本几何特性。LLE在多个关键步骤中运行。

  • 首先,为了捕捉这些局部关联,它构建了一个最近邻图。
  • 然后,在将一个点表示为其邻居的线性组合时,它会优化每个数据点的权重值,目标是最小化重建误差。
  • 连接点之间的强度反映在这个权重矩阵中。
  • LLE通过寻找由权重矩阵获得的矩阵的特征向量来计算数据的低维表示。
  • 这些特征向量代表了压缩空间中最重要的方向。
  • 用户可以指定输出空间所需的维度,LLE会相应地选择前几个特征向量。

以瑞士卷数据集为例,该数据集在其高维空间中本质上是非线性的。在这种情况下,LLE将这种复杂结构投影到一个低维平面上,同时保持其独特的几何特征。

LLE算法:数学实现

LLE的基本原理是,数据局部上大致位于一个线性子空间上,靠近每个数据点。LLE在展开或铺平数据时,努力保持这些局部线性关系。

LLE算法的数学总结如下:

以下是LLE算法的数学概述:

最小化: \sum _{i} | x{_i} - \sum _{j} w _{ij} x{_j}|^2

约束条件: \sum {_j} w _{ij} = 1

其中

此处,xi代表第i个数据点。

权重wij是应用于数据点xi邻居的权重,用于最小化重建误差。

它旨在在寻找数据的低维表示的同时,保持局部关联。

LLE数学表达式的目标是最小化每个数据点的重建误差,该误差表示为其k个最近邻贡献的加权和。确保每个数据点的权重之和为1的约束条件控制着这种优化。在机器学习和数据分析中,会用到局部线性嵌入(LLE)等降维技术。它专注于将高维数据映射到低维空间,同时保持数据元素之间的局部关系。现在,我们将介绍LLE算法的参数。

局部线性嵌入算法

LLE算法包含多个步骤。

邻域选择: LLE在高维空间中找到每个数据点的k个最近邻。由于LLE暗示一个点的线性组合可以准确地表示它,因此这一步至关重要。

权重矩阵构建: 为了将每个数据点表示为其邻居的线性组合,LLE会为它计算一组权重。为了最小化重建误差,会选择这些权重。这些权重通常通过线性回归来确定。

全局结构保持: 在构建权重矩阵后,LLE会寻找数据的低维表示,以最佳地保持局部线性关系。它通过寻找一组坐标来实现这一点,这些坐标最小化了低维空间中每个数据点的成本函数。该成本函数评估了每个数据点能否被其邻居充分表示。

输出嵌入: 优化过程完成后,LLE提供了数据的最终低维表示。这个表示在降低数据维度的同时,保留了其根本结构。

LLE算法参数 LLE的行为受到几个参数的影响。这些参数包括:

k(邻居数量): 参数k(邻居数量)表示在构建权重矩阵时考虑的最近邻的数量。较大的k值可以捕捉更多的全局关系,但也可能引入噪声。较小的k值可能更易受离群点影响,但仍然强调局部相关性。算法的性能取决于k值的选择。

输出空间的维度: 可以指定数据将被映射到的低维空间的维度。这通常根据问题的要求以及信息保留和计算复杂度之间的权衡来选择。

距离度量: 为了确定数据点之间的距离,LLE使用距离度量。曼哈顿距离、欧几里得距离和自定义距离函数是流行的选择。结果可能因所选距离度量而异。

正则化(可选): 为了避免过拟合,有时会将正则化项引入成本函数。在处理噪声数据或大量邻居时,正则化可能很有用。

优化算法(可选): 为了确定低维表示,LLE通常使用诸如特征向量方法或奇异值分解(SVD)之类的优化策略。这些优化技术可能包含可修改的参数。

与局部PCA或因子分析组合等更传统的密度建模方法相比,LLE(局部线性嵌入)在结构分析方面取得了更大的进展。

密度模型受限于它们无法可靠地确定一组可用于整合整个结构流形上的数据的全局坐标。因此,它们在生成源数据集的低维投影等任务方面不足。如以下图像所示,这些模型仅在识别线性特征方面表现良好。然而,它们无法捕捉复杂的曲线模式,这是LLE的特征。

局部线性嵌入的实现

代码首先导入必要的库,包括numpy、matplotlib.pyplot、sklearn.datasets中的make_swiss_roll以及sklearn.manifold中的LocallyLinearEmbedding。

生成合成数据集(瑞士卷)

它使用scikit-learn的make_swiss_roll函数来创建一个类似于瑞士卷的合成数据集。

N_samples 指定要生成的数据点数量。

.N_neighbors 定义LLE算法中使用的邻居数量。

应用局部线性嵌入(LLE)

LocallyLinearEmbedding用于生成LLE算法的一个实例。n_neighbors选项决定了在嵌入过程中要考虑的邻居数量。

然后,fit_transform方法用于将LLE算法拟合到原始数据X。在此阶段,数据集已被降至二维(n_components=2)。

可视化原始数据和降维后的数据

输出

Locally Linear Embedding

LLE降维后的数据(X_reduced)在第二个子图中显示,方式与原始数据相似。原始数据的第三个特征(X[:, 2])仍然决定数据点的颜色。使用plt.tight_layout()函数确保子图之间的适当距离。

LLE的优点

对于数据处理和可视化,一种称为局部线性嵌入(LLE)的降维技术提供了许多优势。LLE的主要优点如下:

保持局部结构: LLE完美地保留了数据内部的局部关联和结构。该方法通过保持相邻数据点之间的成对距离,有效地封装了非线性流形的内在几何形状。

处理非线性: 与主成分分析(PCA)等线性方法不同,LLE可以识别数据中的非线性结构和模式。它对于处理复杂、扭曲或弯曲的数据集非常有用。

降维: LLE在保持其基本特征的同时,降低了数据的维度。这种降低使得数据可视化、探索和分析更加容易,尤其是在处理高维数据集时。

LLE的缺点

维度灾难: 与许多其他降维技术一样,LLE在应用于非常高维数据时容易受到“维度灾难”的影响。随着维度的增加,记录局部交互所需的邻居数量也会增加,这可能会增加方法的处理成本。

内存和计算需求: 构建LLE的一部分加权邻接矩阵可能需要大量内存来处理大型数据集。对于大型数据集,特征向量分解步骤也可能需要大量的计算。

噪声数据和离群点: LLE容易受到抖动的数据点和异常值的影响。离群点可能降低嵌入质量并破坏局部线性相关性。

局部线性嵌入,或LLE,是一种用于数据分析和机器学习的非线性降维方法。它能够将高维数据表示为低维空间,同时保持数据点之间的局部关系,这使其非常有用。

以下是LLE工作原理的快速概述:

局部线性: 局部线性是LLE关于数据点之间关系的假设。换句话说,任何单个数据点都可以准确地表示为其最近邻的线性组合。

邻域构建: 使用距离度量,LLE确定每个数据点的k个最近邻。

权重优化: LLE在确定权重时,寻找最佳重建数据点的邻居的线性组合。重建误差,它量化了原始数据点与其使用邻居线性组合的重建表示之间的差异,用于计算权重。

嵌入: 在所有数据点的权重都优化后,数据点会以尽可能保持局部关联的方式排列,从而产生低维表示。

LLE在捕捉非线性流形的底层结构方面具有特定优势。它已在生物信息学、计算机视觉和图像处理等多个领域得到有效应用。

LLE的一个缺点是,在数据包含离群点或密度变化的情况下,可能需要对其进行修复。

当然,让我们更详细地研究一下局部线性嵌入(LLE)。

1. 目的和功能

为了确定低维空间中局部几何结构的保留程度,LLE最小化了一个成本函数。

成本函数的一部分是寻找权重,以便从其邻居重建每个数据点,同时保持局部线性关系。

2. 算法步骤

  • 选择邻域

对于每个数据点,确定其k个最近邻是谁。通常使用欧几里得距离之类的距离度量。

  • 构建权重矩阵

确定允许每个数据点从其邻居中得到最佳重建的权重。

通过最小化重建误差来确定这些权重,通常借助线性回归等优化方法。

  • 嵌入

通过排列数据点以尽可能保持局部线性关系来构建数据的低维表示。

3. 参数调整

LLE有一个参数k(邻居数量)。k值的选择会影响结果。较小的值可以捕捉精细的结构但可能对噪声敏感,而较大的值可能会过度简化流形。

4. 与其他技术的比较

LLE通常与其他降维技术进行比较,如主成分分析(PCA)和Isomap。

PCA是线性的,可能无法捕捉潜在的非线性结构,而LLE侧重于局部线性。

Isomap考虑全局关系,包括测地线距离,但可能计算成本很高。

5. 修改

LLE的修改包括修改LLE(MLLE)和Hessian LLE,它们可以修复某些缺点或在特定情况下提供优势。

6. 限制

密度不一致或存在离群点的数据可能难以由LLE处理。

算法的性能可能因数据的具体情况和所选参数而异。

7. 计算复杂度

由于LLE需要为每个数据点求解线性系统,因此计算成本可能很高,尤其对于大型数据集。

LLE强调局部交互,是解析复杂数据集底层结构的有价值工具。当线性方法可能不足时,它尤其有效。

结论

总之,局部线性嵌入(LLE)是一种强大的非线性降维方法,可以揭示高维数据的底层几何形状。LLE通过强调局部线性,力求在低维空间中准确地表示数据点之间的关系。找到最佳权重来重建数据点,识别局部邻域,并开发保持局部关联的低维嵌入是其主要过程。

LLE的应用遍及生物信息学、模式识别和图像处理等众多领域。在处理具有复杂非线性结构的数据集时,它尤其有用。与任何方法一样,LLE也有其局限性。需要考虑的因素包括对参数的敏感性、处理不同数据密度时的潜在挑战以及大型数据集的处理成本。

LLE作为降维技术的适用性取决于数据的具体情况和分析目标。通常,LLE提供了线性方法的有用替代方案,揭示了对理解复杂数据集至关重要的局部特征。研究人员和从业者应仔细权衡LLE相对于其他降维策略的优缺点,具体取决于他们的数据以及他们希望获得的见解。

总之,局部线性嵌入是一种通过假设数据位于局部线性流形上,来降低高维数据维度同时保持数据点之间局部联系的策略。