论文解读(SCGC))《Simple Contrastive Graph Clustering》
论文信息
论文标题:Simple Contrastive Graph Clustering
论文作者:Yue Liu, Xihong Yang, Sihang Zhou, Xinwang Liu
论文来源:2022,arXiv
论文地址:download
论文代码:download
1 Introduction
贡献:
- 提出了一种简单的对比深度图聚类方法,称为 $\text{SCGC}$。$\text{SCGC}$ 不需要预训练,并为网络训练节省时间和空间;
- 提出了一种新的仅在增强的属性空间中进行数据扰动的数据增强方法;
- 设计了一种新的面向邻居的对比损失,以保持跨视图的结构一致性;
2 Method
2.1 Notations and Problem Definition
其中:
- $\widehat{\mathbf{A}}=\mathbf{A}+\mathbf{I}$
- $\mathbf{L}=\mathbf{D}-\mathbf{A}$
- $\widetilde{\mathbf{L}}=\widehat{\mathbf{D}}^{-\frac{1}{2}} \widehat{\mathbf{L}} \widehat{\mathbf{D}}^{-\frac{1}{2}}$
2.2 Overall Framework
整体框架:
组成部分:
- low-pass denoising operation
- Structural Contrastive Module (SCM)
2.3 Low-pass Denoising Operation
[5, 18, 44] 证明了拉普拉斯滤波器可以达到与图卷积运算相同的效果。所以引入一个低通去噪操作,在训练前将邻居信息聚合作为一个独立的预处理。这样,属性中的高频噪声将被有效地过滤掉。
具体地说,采用了一个图的拉普拉斯滤波器作为公式:
$\mathbf{H}=\mathbf{I}-k \tilde{\mathbf{L}} \quad\quad\quad(1)$
$k$ 为实值,对于 $k$ 的选择,在所有实验中遵循 AGE[5] 并设置 $k=2 / 3$。随后,将 $t$ 层图拉普拉斯滤波器堆栈如下:
$\mathbf{X}_{s}=\mathbf{H}^{t} \mathbf{X} \quad\quad\quad(2)$
其中,$\widetilde{\mathbf{L}}$ 为平滑的属性矩阵。通过这种低通去噪操作,过滤掉了属性中的高频噪声,从而提高了聚类性能和训练效率。
2.4 Structural Contrastive Module
结构对比模块(SCM),保持两个不同的视图的结构一致性,从而提高网络的鉴别能力。
具体来说,首先用设计的参数非共享MLP编码器对平滑属性 $\mathbf{X}_{s}$ 进行编码,然后用 $\ell^{2}$-norm 对学习到的节点嵌入进行归一化如下
$\begin{array}{l}\mathbf{Z}^{v_{1}}=\operatorname{MLP}_{1}\left(\mathbf{X}_{s}\right), \mathbf{Z}^{v_{1}}=\frac{\mathbf{Z}^{v_{1}}}{\left\|\mathbf{Z}^{v_{1}}\right\|_{2}} \\\mathbf{Z}^{v_{2}}=\operatorname{MLP}_{2}\left(\mathbf{X}_{s}\right), \mathbf{Z}^{v_{2}}=\frac{\mathbf{Z}^{v_{2}}}{\left\|\mathbf{Z}^{v_{2}}\right\|_{2}}\end{array} \quad\quad\quad(3)$
其中,$\mathbf{Z}^{v_{1}}$ 和 $\mathbf{Z}^{v_{2}}$ 表示学习到的节点嵌入的两个增广视图。值得一提的是,$\mathrm{MLP}_{1}$ 和 $\mathrm{MLP}_{2}$ 具有相同的体系结构,但参数不共享,因此 $\mathbf{Z}^{v_{1}}$ 和 $\mathbf{Z}^{v_{2}}$ 在训练过程中会包含不同的语义信息。
此外,我们通过简单地在 $\mathbf{Z}^{v_{2}}$ 中加入随机高斯噪声,进一步保持了两种视图之间的差异:
$\mathbf{Z}^{v_{2}}=\mathbf{Z}^{v_{2}}+\mathbf{N} \quad\quad\quad(4)$
其中,$\mathbf{N} \in \mathbb{R}^{N \times d}$ 从高斯分布 $\mathcal{N}(0, \sigma)$ 中采样。总之,我们通过设计参数非共享编码器,直接破坏节点嵌入,而不是对图引入复杂的操作,构造了两个增强视图 $\mathbf{Z}^{v_{1}} $ 和 $\mathbf{Z}^{v_{2}} $,从而提高了训练效率。此外,[17,28,32]最近的研究表明,图上的复杂数据扩充,如加边、掉边和图扩散,可能会导致语义漂移。
随后,我们设计了一种新的面向邻居的对比损失来保持横视图结构的一致性。具体地,我们计算 $\mathbf{Z}^{v_{1}}$ 和 $\mathbf{Z}^{v_{2}}$ 之间的交叉视点样本相似矩阵 $\mathbf{S} \in \mathbb{R}^{N \times N} $:
$\mathbf{S}_{i j}=\mathbf{Z}_{i}^{v_{1}} \cdot\left(\mathbf{Z}_{j}^{v_{2}}\right)^{\mathrm{T}}, \forall i, j \in[1, N] \quad\quad\quad(5)$
其中,$\mathbf{S}_{i j}$ 表示第一个视图中第 $i$ 个节点嵌入与第二个视图中第 $j$ 个节点嵌入的余弦相似度。然后,我们强制交叉视图样本相似度矩阵 $\mathbf{S}$ 等于自环邻接矩阵 $\widehat{\mathbf{A}} \in \mathbb{R}^{N \times N}$,公式如下:
$\begin{aligned}\mathcal{L} &=\frac{1}{N^{2}} \sum\limits _{(\mathbf{S}-\widehat{\mathbf{A}})^{2}} \\&=\frac{1}{N^{2}}\left(\sum\limits _{i} \sum\limits _{j} \mathbb{1}_{i j}^{1}\left(\mathbf{S}_{i j}-1\right)^{2}+\sum\limits _{i} \sum\limits _{j} \mathbb{1}_{i j}^{0} \mathbf{S}_{i j}^{2}\right)\end{aligned} \quad\quad\quad(6)$
其中,$\mathbb{1}_{i j}^{1}$ 表示如果 $\widehat{\mathbf{A}}_{i j}=1$,$\mathbb{1}_{i j}^{0}$ 表示如果 $\widehat{\mathbf{A}}_{i j}=0$。在这里,我们将同一节点的交叉视图邻居视为正样本,而将其他非邻居节点视为负样本。然后我们把阳性样本拉在一起,同时推开阴性样本。更准确地说,在 $\text{Eq.6}$ 中,第一项迫使节点即使在两个不同的视图中也与它们的邻居保持一致,而第二项则使节点与其非邻居之间的一致最小化。这种面向邻居的对比目标函数通过保持交叉视图结构的一致性,增强了我们网络的鉴别能力,从而提高了聚类性能。
2.5 Fusion and Clustering
在本节中,我们首先以线性的方式融合节点嵌入的两个增强视图,公式如下:
$\mathbf{Z}=\frac{1}{2}\left(\mathbf{Z}^{v_{1}}+\mathbf{Z}^{v_{2}}\right) \quad\quad\quad(7)$
其中,$\mathbf{Z} \in \mathbb{R}^{N \times d}$ 表示生成的面向聚类的节点嵌入。然后在 $\mathbf{Z}$ 上直接执行K-means算法[10],得到聚类结果。
2.6 Algorithm

3 Experiment
数据集
聚类实验
时间成本和GPU内存成本
消融实验
4 Conclusion
本文提出了一种对比深度图聚类方法,即简单对比图聚类(SCGC),从网络架构、数据增强和目标函数等方面改进了现有的方法。至于架构我们的网络主要包括预处理和网络骨干两个部分。具体地说,一个简单的低通去噪操作将邻居信息聚合作为一个独立的预处理。通过该操作,我们有效地过滤掉了属性中的高频噪声,从而提高了聚类性能。此外,只有两个mlp作为骨干。对于数据增强,我们通过设置参数非共享的编码器和破坏节点嵌入来构造不同的图视图,而不是在图上引入复杂的操作。此外,我们提出了一种新的面向邻居的对比损失来保持横视图结构的一致性,从而提高了网络的鉴别能力。得益于SCGC的简单性,它不需要预训练,并且节省了网络训练的时间和空间。值得注意的是,我们的算法优于最近的对比深度聚类竞争对手,平均加速速度至少为7倍。在7个数据集上的大量实验结果证明了SCGC的有效性和优越性。今后,为大规模图数据设计深度图聚类方法是值得尝试的。
论文解读(SCGC))《Simple Contrastive Graph Clustering》的更多相关文章
- 论文解读《Deep Attention-guided Graph Clustering with Dual Self-supervision》
论文信息 论文标题:Deep Attention-guided Graph Clustering with Dual Self-supervision论文作者:Zhihao Peng, Hui Liu ...
- 论文解读(MCGC)《Multi-view Contrastive Graph Clustering》
论文信息 论文标题:Multi-view Contrastive Graph Clustering论文作者:Erlin Pan.Zhao Kang论文来源:2021, NeurIPS论文地址:down ...
- 论文解读(CGC)《CGC: Contrastive Graph Clustering for Community Detection and Tracking》
论文信息 论文标题:CGC: Contrastive Graph Clustering for Community Detection and Tracking论文作者:Namyong Park, R ...
- 论文解读SDCN《Structural Deep Clustering Network》
前言 主体思想:深度聚类需要考虑数据内在信息以及结构信息. 考虑自身信息采用 基础的 Autoencoder ,考虑结构信息采用 GCN. 1.介绍 在现实中,将结构信息集成到深度聚类中通常需要解决以 ...
- 论文解读GALA《Symmetric Graph Convolutional Autoencoder for Unsupervised Graph Representation Learning》
论文信息 Title:<Symmetric Graph Convolutional Autoencoder for Unsupervised Graph Representation Learn ...
- 论文解读 - Relational Pooling for Graph Representations
1 简介 本文着眼于对Weisfeiler-Lehman算法(WL Test)和WL-GNN模型的分析,针对于WL测试以及WL-GNN所不能解决的环形跳跃连接图(circulant skip link ...
- 论文解读(GCC)《Efficient Graph Convolution for Joint Node RepresentationLearning and Clustering》
论文信息 论文标题:Efficient Graph Convolution for Joint Node RepresentationLearning and Clustering论文作者:Chaki ...
- 论文解读(SUGRL)《Simple Unsupervised Graph Representation Learning》
Paper Information Title:Simple Unsupervised Graph Representation LearningAuthors: Yujie Mo.Liang Pen ...
- 论文解读(AGC)《Attributed Graph Clustering via Adaptive Graph Convolution》
论文信息 论文标题:Attributed Graph Clustering via Adaptive Graph Convolution论文作者:Xiaotong Zhang, Han Liu, Qi ...
随机推荐
- 标签页tab.js 在栏目之间切换,局部变化
1.在使用bootstrap 中,我们会用到在栏目之间切换,来刷新页面的局部,可以使用下面的方法 <link rel="stylesheet" href="http ...
- 玩别人玩剩下的:canvas大雪纷飞
canvas大雪纷飞 前言:正好业务触及到canvas,看完api顺手写个雪花效果,因为之前看到过很多次这个,主要看思路,想象力好的可以慢慢去创作属于自己的canvas效果 思路: 利用画圆arc() ...
- ubantu14.04搜狗拼音安装
1. 先卸载fcitx: sudo apt-get purge fcitx*2. 安装fcitx和libssh2-1: sudo apt-get install fcitx 和 sudo apt-ge ...
- vue中对element-ui框架中el-table的列的每一项数据进行操作
vue中使用element table,表格参数格式化formatter 后台返回对应的数字, 那肯定不能直接显示数字,这时候就要对 表格进行数据操作 如图: 代码: methods: { //状态改 ...
- es5语法下,javascript如何判断函数是new还是()调用
es5语法没有支持类class,但是可以通关函数来申明一个类,如下: function Person(name){ this.name=name; } var john=new Person('joh ...
- MVVM模式-数据的双向绑定
- Java报错:Unable to find setter method for attribute: [x]
在学习JavaWeb JSTL与自定义标签时遇到的坑,用的老师给的代码结果直接原地报错:javax.servlet.ServletException: org.apache.jasper.Jasper ...
- python---实现单例模式
""" 单例模式 单利模式是一种设计模式, 应用该模式的类只会生成一个实例, 可以保证在程序的不同位置 都可以且仅可以取到同一个对象实例. 如果实例不存在, 会创建一个实 ...
- GEOS 使用记录
GEOS 使用记录 官网 https://trac.osgeo.org/geos/ https://libgeos.org/ 下载地址 https://libgeos.org/usage/downlo ...
- 两数之和_LeetCode_1
LeetCode_1原题链接:https://leetcode-cn.com/problems/two-sum/ 剑指 Offer 57原题链接: https://leetcode-cn.com/pr ...