CS224W-图神经网络 笔记5.1:Spectral Clustering - 谱聚类基础知识点

本文总结之日CS224W Winter 2021只更新到了第四节,所以下文会参考2021年课程的PPT并结合2019年秋季课程进行总结以求内容完整

课程主页:CS224W: Machine Learning with Graphs

视频链接:【斯坦福】CS224W:图机器学习( 中英字幕 | 2019秋)

文章目录

  • CS224W-图神经网络 笔记5.1:Spectral Clustering - 谱聚类基础知识点
    • 1 引言
      • 1.1 线性代数矩阵知识
      • 1.2 图的矩阵表示
    • 2 一些概念
      • 2.1 什么是谱(Spectral)
        • 谱图理论(Spectral graph partitioning)
      • 2.2 图拉普拉斯矩阵的由来
      • 2.3 拉普拉斯矩阵和拉普拉斯算子之间关系?
      • 2.4 拉普拉斯算子的物理含义?
    • 3 图划分
      • 3.1 图划分与社区发现之间联系与区别
        • 联系
        • 区别
    • 4 参考文章

1 引言

**本节从矩阵计算和线性代数角度来分析图。**而相关矩阵包括:邻接矩阵和图拉普拉斯矩阵。在进入具体谱聚类算法介绍前,有必要先熟悉下相关矩阵、特征值和特征向量等相关知识。

1.1 线性代数矩阵知识

1.2 图的矩阵表示

先复习下图的矩阵表示形式。对于无向图 G = ( V , E ) G=(V, E) G=(V,E),与之相关的矩阵表示有如下三种:

  1. 邻接矩阵A
  2. 度矩阵D
  3. 拉普拉斯矩阵L=D-A

其中拉普拉斯矩阵的性质,是由其实对称举证性质决定的。其中有一点,关于特征值大于等于0(半正定)的证明如下:

来源:

http://www.sofasofa.io/forum_main_post.php?postid=1004484

2 一些概念

下面,补充些关于谱图相关的概念。

2.1 什么是谱(Spectral)

谱的定义:谱就是指矩阵特征值的集合。该名称来自光谱,指一些纯事物的集合,就像将矩阵分解成为特征值与特征向量。定义谱半径为该方阵最大的特征值。

在谱图里面实际上矩阵指拉普拉斯矩阵 ,对它的特征值特征向量的分解称为谱分解.(特征分解,对角化,谱分解是一个概念)

谱图理论(Spectral graph partitioning)

图谱论是指分析图G的矩阵表示的“频谱”。频谱是指由其对应的特征值的大小升序排序的一组图的特征向量

  • https://zhuanlan.zhihu.com/p/81502804

2.2 图拉普拉斯矩阵的由来

整个谱图理论都是围绕着图的拉普拉斯矩阵为核心进行展开的,那么为什么将其定义为D-W呢?它其实是拉普拉斯算子在图上的推广,它是离散的拉普拉斯算子。

其第 i 行其实是第 i 个节点在产生扰动时对其他节点产生的收益累积。

具体可以看下面的链接里的公式推导:

  • https://zhuanlan.zhihu.com/p/84649941

2.3 拉普拉斯矩阵和拉普拉斯算子之间关系?

拉普拉斯矩阵是离散的拉普拉斯算子。具体分析参考下文

  • https://zhuanlan.zhihu.com/p/85287578

2.4 拉普拉斯算子的物理含义?

根据定义,函数的拉普拉斯算子 ∇ 2 f \nabla^2f ∇2f又可以写成 ∇ ⋅ ∇ f \nabla \cdot \nabla f ∇⋅∇f ,其被定义为函数 梯度的散度

拉普拉斯算子实际上衡量了在空间中的每一点处,该函数梯度(向量场)是倾向于增加还是减少.

  • https://zhuanlan.zhihu.com/p/67336297

3 图划分

3.1 图划分与社区发现之间联系与区别

联系

图划分(graph partitioning)与社区发现(community detection):二者都是根据网络中的边的连接模式,把网络中的顶点划分成群组、簇或者社区。使得同一群组间节点紧密连接,而不同群组间只有少数的边。

区别
  • 图划分得到的群组的数量基本是确定的,而社区发现是不确定的。
  • 另外,从目的角度看,前者的目的通常是将网络划分为更多更小的块,为了划分而划分。没有好的划分,也要尽量在不好的划分中选择一种。而社区发现则是为了了解网络结构,没有符合条件的划分可以不划分。

这小节,算是铺垫。具体图划分以及谱聚类放到下一小结,再做讨论。

4 参考文章

  1. GNN教程:第六篇Spectral算法细节详解!
  2. https://zhuanlan.zhihu.com/p/85287578
  3. https://zhuanlan.zhihu.com/p/84649941
  4. https://zhuanlan.zhihu.com/p/81502804
  5. https://linalg.apachecn.org/#/docs/chapter21
  6. https://www.cnblogs.com/xingshansi/p/6702188.html?utm_source=itdadao&utm_medium=referral
  7. http://www.cs.yale.edu/homes/spielman/sgta/SpectTut.pdf
  8. http://www.math.ucsd.edu/~fan/wp/cheeger.pdf

CS224W-图神经网络 笔记5.1:Spectral Clustering - 谱聚类基础知识点相关推荐

  1. CS224W-图神经网络 笔记5.2:Spectral Clustering - 谱聚类主要思想及关键结论的证明

    CS224W-图神经网络 笔记5.2:Spectral Clustering - 谱聚类主要思想及关键结论的证明 本文总结之日CS224W Winter 2021只更新到了第四节,所以下文会参考202 ...

  2. spectral clustering谱聚类论文解读(上)

    关于A Tutorial on Spectral Clustering的解读 1.介绍 2.相似图 2.1 图的标号 2.2 不同的相似图 3.拉普拉斯图与它的基础参数 3.1未归一化的拉普拉斯矩阵 ...

  3. Spectral clustering 谱聚类讲解及实现

    简述 https://github.com/Sean16SYSU/MachineLearningImplement 这篇是在网上看了wiki之后写出来的代码. 附上一篇看过论文之后根据论文实现的版本: ...

  4. 社区发现算法——(Spectral Clustering)谱聚类算法

    归一化的拉普拉斯(The unnormalized graph Laplacian): L=D−WL = D - W L=D−W 其中D为对角度矩阵,W为权重邻接矩阵. 1.矩阵L满足以下性质: 对于 ...

  5. CS224W-图神经网络 笔记5.3:Spectral Clustering - 谱图聚类的具体操作步骤

    CS224W-图神经网络 笔记5.3:Spectral Clustering - 谱图聚类的具体操作步骤 本文总结之日CS224W Winter 2021只更新到了第四节,所以下文会参考2021年课程 ...

  6. CS224W图机器学习笔记8-图神经网络三大应用

    图神经网络 课程和PPT主页 Prediction with GNNs 目前我们只学习了从输入图->节点嵌入,也就是学习图神经网络怎么获取节点嵌入,并没有学习针对特定下游任务的一些内容(从节点嵌 ...

  7. cs224w 图神经网络 学习笔记(三)Motifs and Structural Roles in Networks

    课程链接:CS224W: Machine Learning with Graphs 课程视频:[课程]斯坦福 CS224W: 图机器学习 (2019 秋 | 英字) 这一课主要是讲 子图(subnet ...

  8. 图神经网络笔记(二)——卷积图神经网络概述

    文章目录 基于谱分解的方法 Spectral Network ChebNet GCN AGCN(Adaptive GCN) 基于空间结构的方法 Neural FP PATCHY-SAN DGCN LG ...

  9. 图神经网络笔记(一)

    图是一种数据结构,它对一组对象(节点)及其关系(边)进行建模.近年来,由于图结构的强大表现力,用机器学习方法分析图的研究越来越受到重视.图神经网络(GNN)是一类基于深度学习的处理图域信息的方法.由于 ...

最新文章

  1. MongoDB:逐渐变得无关紧要
  2. 全球及中国教育信息化行业投资模式与发展建议咨询报告2022版
  3. 软件项目管理0718:读一页项目管理读书笔记
  4. Ch5702-Count The Repetitions【字符串,倍增,dp】
  5. SendMessage和PostMessage
  6. invalid use of incomplete type struct 或者是class的解决办法
  7. 【Spring】Spring Bean 定义继承
  8. Windows开发时IsWindowVisible返回错误的处理方法
  9. php---header函数的示例代码
  10. 泛型中的 T、E、K、V、?等等,究竟是啥?
  11. 电脑出现missing operating system解决办法
  12. CSS系列之连续的字母或数字在Html盒子中不会自动换行,直接溢出
  13. Xshell7怎么更改字体颜色和标签颜色方法教程
  14. 云计算与大数据平台课堂作业
  15. 永恒之蓝(Eternal Blue)复现
  16. jsp+servlet图书管理系统
  17. HTML图片不能上下铺满屏幕_多张图片的PPT,如何排版的更有创意?
  18. 阅读element-ui源码(1)怎么找到样式与组件入口文件
  19. #第二章 数理文化的起源2.1文化概述
  20. 关于φ与Φ函数与序列中分数个数的讨论

热门文章

  1. python第五次作业——潘芊睿
  2. 学习 Bootstrap 5 之 Forms
  3. 180422 3步法Windows10引导Ubuntu开机启动
  4. 绕过滑块验证码登陆网站的实现
  5. Merge碰到ORA-30926 无法在源表中获得一组稳定的行
  6. vue如何通过NodeJs本地获取微信access_token及签名,并调用微信接口
  7. 处理ArchLinux上各软件屏幕卡顿与显示问题(chrome浏览器,微信开发者工具wxdt,vscode移动慢问题)
  8. 网络爬虫-神器fiddler抓取app数据
  9. java node对比_服务端I/O性能:Node、PHP、Java、Go的对比
  10. powerpoint预览_如何添加,删除和重新排列PowerPoint幻灯片