讲授LDA基本思想,寻找最佳投影矩阵,PCA与LDA的比较,LDA的实际应用

大纲:

非线性降维算法
流形的概念
流形学习的概念
局部线性嵌入
拉普拉斯特征映射
局部保持投影
等距映射
实验环节

非线性降维算法:

上节介绍了经典的PCA算法,它虽然在很多问题上取得了成功,但是它有它的局限性,因为在现实世界中我们要处理的很多数据它是非线性的,而PCA本身是一个线性化的算法,用线性算法处理非线性问题是不太合适的,所以我们要有非线性的降维技术。

通过一个非线性的函数将x映射到另一个空间中去,得到一个向量y,x的维度一般比y大很多。

非线性降维技术有很多经典的实现:

①核主成分分析,它用一个函数把向量映射到另外一个空间里去处理。

②神经网络,如自动编码器E,受限玻尔兹曼机RBM等。

③流行学习

流形的概念:

英文是manifold,流行是微分几何和拓扑里边的一个概念,可以认为是高维空间里的一个几何结构,如三维空间里边的一个球面,二维空间的曲线,是曲线,曲面在高维空间中的推广。

流形学习的概念:

假设数据在高维空间的分布服从某种几何形状,利用这种几何约束来完成对数据的处理,如降维,分类,聚类。

下面介绍几种经典的流行学习算法,这里是要完成数据降维任务的:

局部线性嵌入
[1] Roweis, Sam T and Saul, Lawrence K. Nonlinear dimensionality reduction by locally linear embedding. Science, 290(5500). 2000: 2323-2326.
拉普拉斯特征映射
[2] Belkin, Mikhail and Niyogi, Partha. Laplacian eigenmaps for dimensionality reduction and data representation. Neural computation. 15(6). 2003:1373-1396.
局部保持投影
[3] He Xiaofei and Niyogi, Partha. Locality preserving projections. NIPS. 2003:234-241.
等距映射
[4] Tenenbaum, Joshua B and De Silva, Vin and Langford, John C. A global geometric framework for nonlinear dimensionality reduction. Science, 290(5500). 2000: 2319-2323.

其中拉普拉斯特征映射和局部保持投影都是一种基于图论的算法。

局部线性嵌入:LLE

[1] Roweis, Sam T and Saul, Lawrence K. Nonlinear dimensionality reduction by locally linear embedding. Science, 290(5500). 2000: 2323-2326.

是整个流行学习算法的开端和鼻祖,有举足轻重的地位。

高维空间中的每个样本点可以由它周围的点近似的线性组合,用周围几个点的加权平均近似表达它,投影到低维空间里还是要保持这种局部的线性关系。

每个样本可以用它邻居的线性组合近似重构:,点数是有限制的,如限定为距离它最近的k个点来表达它,这体现了局部性,同PCA一样让所有样本xi的重构误差最小化,

求解下面的最优化问题可以得到重构系数:。第一个约束是:当xi和xj的距离||xi-xj||≤ε时它的重构权重wij非0否则为0,还有一种就是把xi最近的k个点挑出来让这些点的wij非0其他的点为0。第二个约束是权重矩阵的每一行权重系数加起来等于1。基于这些假设最终求解最优化问题得到重构洗漱wij

得到重构系数之后,就要完成向低维空间的投影,将向量映射到低维空间,保持这种线性重构关系:,求解该关系的最优化问题。由于局部线性嵌入会保留原始数据的拓扑结构,故降维得到的低维数据具有同高维数据一样的局部线性结构,即wij已知求低维空间的映射向量y,y还有别的约束条件,最终将y求出。

以下推理来自https://www.cnblogs.com/pinard/p/6266408.html?utm_source=itdadao&utm_medium=referral

拉普拉斯特征映射:

它是一种基于图论的方法。
用样本构造图,然后计算拉普拉斯矩阵,最后对矩阵进行特征值分解。

把样本n维空间中的点构造成一张图G,用图论中的手段解决数据降维问题。

边的权重代表相似度或距离。

图的拉普拉斯矩阵是对称半正定矩阵:

有了以上概念,就可以构造出拉普拉斯数据降维算法了。

算法流程:
①构造带权重的图
②计算图的拉普拉斯矩阵
③求解广义特征值问题,求解出特征值最大的前d个对应的特征向量,这些向量按行或按列摆开成一个矩阵(同PCA),这个矩阵就是投影矩阵,用这个矩阵左乘X,把X映射到d维空间中去。

构造带权重的图(V,E,W):

两个点连通性判定,就是判定联通权重是否为0:1.||xi-xj||<ε,如果距离小于某个值视为联通否则不连通,2.如果是k邻近点视为联通否则非联通

权重只的计算:

求解广义特征值问题:(?不明白为什么要这样做能得到映射矩阵)

拉普拉斯特征映射核心:构造图——>计算图的拉普拉斯矩阵——>对矩阵进行特征值分解(同PCA算法一样也是求特征值问题)

局部保持投影:

它也是一种基于图论的算法,它和拉普拉斯映射相似,前面几步是一样的(构造图,计算拉普拉斯矩阵),然后它也是求解一个广义特征值问题:

X是所有样本按照列排起来形成的矩阵,同样可证明所有特征值都大于等于零,然后得到特征值对应的特征向量,组成映射矩阵A,让A左乘向量x映射到l维空间,这和拉普拉斯映射、PCA是一样的。

等距映射:

利用微分几何里的测地线(测地线是地球表面两点之间最短弧线距离)的概念,将数据投影到低维空间之后,尽量保持原有的距离关系。

首先构造图
然后计算两点间的最短距离-Dijkstra算法:DG={dG(i,j)},这样就可以计算流行M上任意两点之间的最短距离了dG(i,j)了。
然后求解下面的最优化问题:

,yi、yj是xi、xj投影后对应的点,投影后它们之间的距离和投影之前的距离的差异尽可能的小,即有了最优化问题,求解之后得到映射后的向量y,和局部线性嵌入有一点点像。

实验环节:

流行学习算法从2000年诞生之后,很多搞机器学习的人去搞流行学习了,数学上面看上去是非常优美的,实际应用中很少有成功的案例,美但不是很实用。

本集总结:

介绍了非线性降维的概念和主要的算法

流行、流行学习概念

四种算法:LLE、拉普拉斯特征映射、局部保持投影、等距映射

LLE主要思想是,每个样本可以由它周围的几个样本来近似的线性表达,把它投影到d维空间里之后还要这种局部线性表达的关系。拉普拉斯特征映射和局部保持投影都是一种基于图论的算法,都是对图的拉普拉斯矩阵进行广义特征值分解,得到一些特征值和特征向量,然后把最大的一些特征值和特征向量取出来,用特征向量组成投影矩阵完成投影,这和PCA有一点像。等距映射用了微分几何中测距线(非欧式空间的直线距离,而是流行上面的测地距离)的概念,把这些样本投影到d维空间里之后还要保持他们在高维空间里面的相对远近关系。

流行学习虽然数学上看起来很美,但少有成功案例。

SIGAI机器学习第九集 数据降维2的更多相关文章

  1. SIGAI机器学习第八集 数据降维1

    讲授数据降维原理,PCA的核心思想,计算投影矩阵,投影算法的完整流程,非线性降维技术,流行学习的概念,局部线性嵌入,拉普拉斯特征映射,局部保持投影,等距映射,实际应用 大纲: 数据降维问题PCA的思想 ...

  2. SIGAI机器学习第一集 机器学习简介

    讲授机器学习的基本概念.发展历史与典型应用 大纲: 人工智能简介机器学习简介为什么需要机器学习机器学习的发展历史机器学习的典型应用人工智能主要的公司本课程讲授的算法 机器学习并不是人工智能一上来就采用 ...

  3. SIGAI机器学习第四集 基本概念

    大纲: 算法分类有监督学习与无监督学习分类问题与回归问题生成模型与判别模型强化学习评价指标准确率与回归误差ROC曲线交叉验证模型选择过拟合与欠拟合偏差与方差正则化 半监督学习归类到有监督学习中去. 有 ...

  4. 机器学习实战(Machine Learning in Action)学习笔记————10.奇异值分解(SVD)原理、基于协同过滤的推荐引擎、数据降维

    关键字:SVD.奇异值分解.降维.基于协同过滤的推荐引擎作者:米仓山下时间:2018-11-3机器学习实战(Machine Learning in Action,@author: Peter Harr ...

  5. [机器学习]-PCA数据降维:从代码到原理的深入解析

    &*&:2017/6/16update,最近几天发现阅读这篇文章的朋友比较多,自己阅读发现,部分内容出现了问题,进行了更新. 一.什么是PCA:摘用一下百度百科的解释 PCA(Prin ...

  6. 斯坦福机器学习视频笔记 Week8 无监督学习:聚类与数据降维 Clusting & Dimensionality Reduction

    监督学习算法需要标记的样本(x,y),但是无监督学习算法只需要input(x). 您将了解聚类 - 用于市场分割,文本摘要,以及许多其他应用程序. Principal Components Analy ...

  7. SIGAI机器学习第二十四集 聚类算法1

    讲授聚类算法的基本概念,算法的分类,层次聚类,K均值算法,EM算法,DBSCAN算法,OPTICS算法,mean shift算法,谱聚类算法,实际应用. 大纲: 聚类问题简介聚类算法的分类层次聚类算法 ...

  8. SIGAI机器学习第十集 线性判别分析

    讲授LDA基本思想,寻找最佳投影矩阵,PCA与LDA的比较,LDA的实际应用 前边讲的数据降维算法PCA.流行学习都是无监督学习,计算过程中没有利用样本的标签值.对于分类问题,我们要达到的目标是提取或 ...

  9. python大战机器学习——数据降维

    注:因为公式敲起来太麻烦,因此本文中的公式没有呈现出来,想要知道具体的计算公式,请参考原书中内容 降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中 1.主成分分析(PCA) 将n ...

随机推荐

  1. java 中的容器(札记)

    创建容器向上转型为接口的时候,有时候,并不是一定可行的,因为有的实现类,在接口的基础添加了自己的方法:比如:List 接口下面的 LinkedList 自己定义了一些方法 : Arrays.asLis ...

  2. Python_Modbus_RTU_通讯Demo

    之前利用Python进行Modbus_TCP进行数据接收,本次需要利用串口进行数据传输,学习Modbus_RTU的简单实现 首先要在创建两个虚拟串口,利用VSPD工具即可.在一台电脑上实现数据的发送和 ...

  3. MogileFS操作指令

    使用mogtool来操作文件 加入文件:mogtool inject <file_name> <key_name> --trackers=192.168.1.106:7001 ...

  4. Nuget常用命令(转)

    转自:https://www.cnblogs.com/xcsn/p/6259853.html CMD将nuget升级到最新版本:nuget update -self 一.安装 1.安装指定版本类库in ...

  5. 2019牛客多校三 A. Graph Games (图分块)

    大意: 给定无向图, 定义$S(x)$为$x$的邻接点集合. 每次操作翻转$[L,R]$范围的边, 询问$S(x)$与$S(y)$是否相等. 快速判断集合相等可以用$CF 799F$的技巧. 采用$h ...

  6. (二)XML基础(2)

    三.解析 服务端解析 JDK:            DOM            SAX            JAXB    java and xml Binding 开源(一般都是用开源的)   ...

  7. 一个因MySQL大小写敏感导致的问题

    做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 00 MYSQL对大小写敏感 见字如面,见标题知内容.你有遇到过因为MYSQL对大小写敏感而被坑的体验吗? 之前看过阿里巴 ...

  8. Visual Studio 2017修改编码UTF-8

    转载自:https://blog.csdn.net/qq_36848370/article/details/82597157 VS 2017隐藏了高级保存功能,导致没办法直接去设置代码编码 UTF-8 ...

  9. cnn健康增胖和调理好身体

    吃不胖,其实大部分情况是消化系统不好,大部分食物都没有被身体吸收就被排掉了. 1,改善肠胃消化功能: 每天早上一杯全脂鲜牛奶(或者羊奶), 每天晚上一杯酸奶 ps:白天和鲜牛奶可以激发肠胃的消化能力. ...

  10. 关于微信小程序的父子组件互相传值

    一:父组件传值给子组件 1. 在父组件中引用子组件 1.1 在父组件json中导入子组件 1.2 在子组件的json中,把自己定义为子组件 2. 在父组件中,子组件的引用处,绑定一个属性( text ...