LLE降维算法

流形分析作为非线性降维的一个分支,拥有多种算法,常见的算法列表如下

流形分析的要点在于降维之后,仍然保留流形中的某些几何属性。之前介绍的isomap保留了测地距离这一几何属性,由于考虑的是全局关系,对于样本量大,维度非常高的数据,计算量很大。本片文章的主角LLE算法,保留的是局部样本点之间的线性关系,算法复杂度低,运行速度更快。LLE全称如下

Locally Linear Embedding

称之为局部线性嵌入算法,在该算法中,假设邻近样本符合线性关系,对于样本x1而言,可以看做是邻近样本x2, x3, x4的线性组合

降维之后,也希望保留这种线性关系,即权重系数不变,新的坐标依然保持线性关系,公式如下

基于这一思想,该算法可以分为以下3步

1. 选择样本的邻近点。这里选择的方法和KNN类似,按照欧式距离排序,选择前K个邻近点

2. 对于每个样本,拟合其邻近样本的线性关系,计算样本点的局部重建权值矩阵

3. 根据邻近点与局部重建权值矩阵,计算降维后的输出值

LLE算法降维的结果示例如下

在sickit-learn中使用LLE算法的代码如下

>>> from sklearn.datasets import make_swiss_roll
>>> from sklearn.manifold import locally_linear_embedding
>>> x, color = make_swiss_roll(n_samples=1500)
>>> x_r, err = locally_linear_embedding(x, n_neighbors=12, n_components=2)
>>> x_r
array([[ 0.04141383, -0.01174298],
       [ 0.00866775, 0.01427625],
       [-0.00896186, 0.00451398],
       ...,
       [ 0.00950672, 0.01665103],
       [ 0.04236568, -0.01045307],
       [-0.02801082, 0.00123999]])
LLE算法实现简单,对数据维度没有任何限制,但是对数据的流形分布有严格要求,要求不能是闭合流形,同时该算法对近邻样本数目K的选择也较为敏感。
·end·
(0)

相关推荐

  • 深入理解YouTube推荐系统算法

    去年天池-安泰杯跨境电商智能算法大赛是我初次接触推荐相关的比赛,通过比赛让我对推荐系统有了较为浅显的认识,赛后也是打算系统的学习这方面的内容,此后我也会将[推荐系统]作为一个系列板块进行更新,主打经典 ...

  • 【论文解读 AAAI 2018】Structural Deep Embedding for Hyper-Ne

    论文链接:https://arxiv.org/abs/1711.10146 代码链接:https://github.com/tadpole/DHNE 会议:AAAI 2018 现有的网络嵌入工作都聚焦 ...

  • isomap降维算法

    降维算法分为线性和非线性两大类,主成分分析PCA属于经典的线性降维,而t-SNE, MDS等属于非线性降维.在非线性降维中,有一个重要的概念叫做流形学习manifold learing. 首先来看下什 ...

  • 基于 Python 的 11 种经典数据降维算法

    网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA.LDA.MDS.LLE. ...

  • 11 种数据降维算法,代码已开源!

    网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA.LDA.MDS.LLE. ...

  • 简述多种降维算法

    最近看了一些关于降维算法的东西,本文首先给出了七种算法的一个信息表,归纳了关于每个算法可以调节的(超)参数.算法主要目的等等,然后介绍了降维的一些基本概念,包括降维是什么.为什么要降维.降维可以解决维 ...

  • 生命科学中的 UMAP(降维算法)

    UMAP应该说是目前最好的降维算法了,能最大程度的保留原始数据的特征同时大幅度的降低特征维数. 这是<生命科学的数理统计和机器学习>的相关探讨,我试图介绍生物信息学.生物医学.遗传学等常见 ...

  • 哈工大硕士生实现 11 种数据降维算法,代码已开源!

    阅读大概需要15分钟 Follow小博主,每天更新前沿干货 网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据 ...

  • 哈工大硕士生用 Python 实现了 11 种经典数据降维算法,源代码库已开放

    本文转自:AI开发者 网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA.L ...

  • 哈工大硕士生实现11种数据降维算法,代码已开源!

    来自:相约机器人    编辑:huber   大家好,我是huber! 网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 ...

  • 降维算法:主成分分析 VS 自动编码器

    降维是一种减少特征空间维度以获得稳定的.统计上可靠的机器学习模型的技术.降维主要有两种途径:特征选择和特征变换. 特征选择通过选择重要程度最高的若干特征,移除共性的或者重要程度较低的特征. 特征转换也 ...