作者:桂。

时间:2017-04-13  07:43:03

链接:http://www.cnblogs.com/xingshansi/p/6702188.html

声明:欢迎被转载,不过记得注明出处哦~


前言

前面分析了非负矩阵分解(NMF)的应用,总觉得NMF与谱聚类(Spectral clustering)的思想很相似,打算分析对比一下。谱聚类更像是基于图(Graph)的思想,其中涉及到一个重要概念就是拉普拉斯矩阵(Laplace matrix),想着先梳理一下这个矩阵:

  1)拉普拉斯矩阵基本定义

  2)拉普拉斯矩阵意义及性质

  3)瑞利熵(Rayleigh quotient)

内容为自己的学习记录,很多地方都借鉴了别人,最后一并给出链接。

一、拉普拉斯矩阵基本定义

对于图G,一般用点的集合V和边的集合E来描述:G(V,E)。现在有这样一个图,如何定义拉普拉斯矩阵呢?这里涉及到两个常用矩阵:邻接矩阵、度矩阵。

从最简单的应用入手,不同数据点相通权重为1,不相通权重为0.

首先求解邻接矩阵W

将每一列求和,这个数值的对角形式对应就是度矩阵D

$d_i = \sum\limits_{j=1}^{n}w_{ij}$

写成矩阵形式:

$\mathbf{D} = \left( \begin{array}{ccc} d_1 & \ldots & \ldots \\ \ldots & d_2 & \ldots \\   \vdots & \vdots & \ddots \\   \ldots & \ldots & d_n \end{array} \right)$

从而得到拉普拉斯矩阵L的定义:

$L= D-W$

二、拉普拉斯矩阵意义及性质

不失一般性,$v_i$与$v_j$的权重不再是1而是$w_{ij}$,$f(v_i)$表示节点$v_i$的函数,对应实际应用它可以是一个概率值、一个像素值等等。

对任意向量$f$,

这样一来,拉普拉斯矩阵的意义就比较明显了,它是一种基于欧式距离的测度,如果$w_{ij} = 1$,上式对应就是多有数据点的距离之和,同时也可以看出:D对应二次项,W对应不同一次项相乘。拉普拉斯矩阵是半正定的,且对应的n个实数特征值都大于等于0,即:$0 =\lambda_1 \leq \lambda_2  \leq...  \leq  \lambda_n$。

三、瑞利熵 

提到拉普拉斯矩阵,就不能不提瑞利熵。

  A-普通瑞利熵

给出定义:

因为对h幅值进行条件,不会影响R的取值,同时也不会改变h向量的方向,对于一般优化问题(以max为例,其他类似):

可以转化为拉格朗日乘子问题:

c为常数,即:

可以看出:

  • R的最大值就是L最大特征值,R的最小值就是L最小特征值
  • h的解,就是L对应的特征向量

是不是很熟悉啊?

  • 简单回顾一下主成分分析(PCA)算法

设p为矩阵A的单位投影矩阵,最大化投影结果:

PCA就是瑞利熵理论的一个应用

后面分析谱聚类(Spectral clustering),其中RatioCut算法也是瑞利熵的一个应用。

  B-泛化瑞利熵

为什么叫泛化呢?对于

可以看到分子是一般形式,而分母是${{h^*}Dh}$在D取单位阵时的特殊情况,将其一般化:

同理可以得到:

适当变形:

这个时候表达式就是:

又回到了普通瑞利熵问题,求解就方便了。

  • 简单回顾一下Fisher线性判别分析(Linear discriminant analysis, LDA)算法

Fisher判别准则函数:

分子分母分别是类内、类间距离。这个准则函数就是泛化瑞利熵的形式。

LDA是泛化瑞利熵的一个应用

后面分析谱聚类(Spectral clustering),其中NCut算法也是泛化瑞利熵的一个应用。

参考:

瑞利熵:https://en.wikipedia.org/wiki/Rayleigh_quotient

拉普拉斯矩阵:http://www.cnblogs.com/pinard/p/6221564.html

拉普拉斯矩阵(Laplace Matrix)与瑞利熵(Rayleigh quotient)的更多相关文章

  1. 拉普拉斯矩阵(Laplacian Matrix) 及半正定性证明

    摘自 https://blog.csdn.net/beiyangdashu/article/details/49300479 和 https://en.wikipedia.org/wiki/Lapla ...

  2. SC3聚类 | 拉普拉斯矩阵 | Laplacian matrix | 图论 | R代码

    Laplacian和PCA貌似是同一种性质的方法,坐标系变换.只是拉普拉斯属于图论的范畴,术语更加专业了. 要看就把一篇文章看完整,再看其中有什么值得借鉴的,总结归纳理解后的东西才是属于你的. 问题: ...

  3. 拉普拉斯矩阵(Laplacian matrix)

    原文地址:https://www.jianshu.com/p/f864bac6cb7a 拉普拉斯矩阵是图论中用到的一种重要矩阵,给定一个有n个顶点的图 G=(V,E),其拉普拉斯矩阵被定义为 L = ...

  4. graph Laplacian 拉普拉斯矩阵

    转自:https://www.kechuang.org/t/84022?page=0&highlight=859356,感谢分享! 在机器学习.多维信号处理等领域,凡涉及到图论的地方,相信小伙 ...

  5. R语言编程艺术# 矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  6. 【Math for ML】矩阵分解(Matrix Decompositions) (下)

    [Math for ML]矩阵分解(Matrix Decompositions) (上) I. 奇异值分解(Singular Value Decomposition) 1. 定义 Singular V ...

  7. 【Math for ML】矩阵分解(Matrix Decompositions) (上)

    I. 行列式(Determinants)和迹(Trace) 1. 行列式(Determinants) 为避免和绝对值符号混淆,本文一般使用\(det(A)\)来表示矩阵\(A\)的行列式.另外这里的\ ...

  8. R语言编程艺术#02#矩阵(matrix)和数组(array)

    矩阵(matrix)是一种特殊的向量,包含两个附加的属性:行数和列数.所以矩阵也是和向量一样,有模式(数据类型)的概念.(但反过来,向量却不能看作是只有一列或一行的矩阵. 数组(array)是R里更一 ...

  9. NumPy 矩阵库(Matrix)

    NumPy 矩阵库(Matrix) NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对象. 一个 的矩阵是一个由行(row)列(col ...

随机推荐

  1. Android业务组件化之Gradle和Sonatype Nexus搭建私有maven仓库

    前言: 公司的业务组件化推进的已经差不多三四个月的时间了,各个业务组件之间的解耦工作已经基本完成,各个业务组件以module的形式存在项目中,然后项目依赖本地的module,多少有点不太利于项目的并行 ...

  2. 第十九篇 js高级知识---词法分析和AO 链

    上面一篇文章说了js的作用域链,这一节算是对上面的延申,有一个典型的例子,首先看原来的一段代码: var name = "test"; function t() { var b = ...

  3. 获取页面中任意一个元素距离body的偏移量

    //offSet:等同于jQuery中的offSet方法,获取页面中任意一个元素距离body的偏移量function offSet(curEle) { var totalLeft = null; va ...

  4. Yii 2.0 ActiveForm生成表单 ,控制表单label和filed样式,filed一旦报错,前面lable颜色跟着变,看图,帮你解决

    需要生成如下图的表单样式,图一:

  5. jquery.datetimepicker.js 当鼠标离开时,不选中当前时间,以达到清空的目的

    validateOnBlur:true    当鼠标离开时,不选中当前时间,以达到清空的目的 使用方法:   // 时间设置         $('#BankProduct_sale_begin'). ...

  6. KoaHub平台基于Node.js开发的Koa的get/set session插件代码详情

    koa-session2 Middleware for Koa2 to get/set session use with custom stores such as Redis or mongodb ...

  7. WeMall微信商城源码插件会员卡代码详情

    WeMall微信商城源码插件会员卡代码是用于商业推广的比较有效的方式,分享了部分比较重要的代码,供技术员学习参考 Index_index.html <html> <head> ...

  8. 2292: 【POJ Challenge 】永远挑战

    2292: [POJ Challenge ]永远挑战 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 553  Solved: 230[Submit][ ...

  9. 企业架构(TOGAF)学习

    自从听了公司内部的一堂<企业架构设计>培训,顿时觉得如获至宝. 先说下笔者,笔者是一名二流本科毕业,工作三年,基层的软件开发工程师,梦想着有朝一日成长成一名架构师.可是笔者对于如何成长成一 ...

  10. 浅谈HashMap的内部实现

    权衡时空 HashMap是以键值对的方式存储数据的. 如果没有内存限制,那我直接用哈希Map的键作为数组的索引,取的时候直接按索引get就行了,可是地价那么贵,哪里有无限制的地盘呢. 如果没有时间限制 ...