论文笔记:Embedding Graph Auto-Encoder with Joint Clustering via Adjacency Sharing
前言
本文用GNN来学习适合于聚类任务的节点表示. 比较特别的是,本文同时考虑了K-Mean聚类和谱聚类来实现更好的聚类.提出了Embedding Graph Auto-Encoder with Joint Clustering via Adjacency Sharing(EGAE-JOCAS)以解决深度图聚类问题
论文链接:https://arxiv.org/pdf/2002.08643.pdf
对于平滑度和联合聚类的理解参考:https://zhuanlan.zhihu.com/p/114452245
1.网络架构
整个网络的输入包含两个部分,分别是邻接矩阵和节点特征矩阵,之后经过encoder形成图嵌入的低维表示,此时注意网络的最后一层所采用的**函数为ReLU以保证最后的输出矩阵两点间的内积非负。Joint clustering的模块被嵌入GAE中使网络学习到更好的图嵌入表示。最后经过decoder生成的邻接矩阵为应该尽可能地与输入的邻接矩阵相似
2.网络模块
2.1Encoder
在此篇文章中encoder部分使用多个图卷积层来学习原始数据的潜在表示Z。 作者说明为了保持简单性,仅使用简单的GCN层。 但是,编码器可以由任何有效层组成,例如图注意力网络机制
2.2Decoder
decoder的作用是为了重构输入的邻接矩阵,在网络嵌入中,邻接矩阵表明了结点间的拓朴关系,并且该图经常不加权。因此邻接矩阵应该满足:如果节点和之间相连则意味着相反则。此外,两个节点之间的相似性通常由内积来衡量。因此可以表示为如果和相似的话则应该满足足够大。
考虑到这种情况,所以GCN网络的最后一层选择ReLU作为非线性**函数,内积不为0,同时decoder的形式产生了一些变化表示为。由于上文所加上的限制条件可以表明所有的内积都是非负的
作者认为可以更好的对节点对的内积进行映射.在较大的时候, 可以更好的逼近.
2.3 Proposed Model
由于Kmeans方法通过密度信息对数据进行分区,并且频谱聚类考虑了局部一致性,因此开发了一种兼具这两种优势的聚类模型,
被称为联合聚类,定义为
第一项是K-Mean聚类,其中是一个指示器, 实际上反映了节点属于不同簇的概率.
第二项是谱聚类,直观的理解就是,相近的节点应该属于相同的簇.此处的形式类似于,通过拉普拉斯矩阵的矩阵分解所得到的基向量和特征值的对角矩阵来求基向量的平滑程度
图上的"平滑"程度反映了相邻节点的相似程度.图上的高频意味着不平滑,特征值大; 图上的低频意味着平滑,特征值小.那么在一组基中, 相对平滑的图信号实际上是有利于聚类的.因为聚类的目的是把相似的节点放到一起。我理解的就是要尽可能地抑制高频特征,筛选低频信号利于聚类
同时再考虑到encoder和decoder的损失和正则化,则最终的目标函数为
其中是GCN每一层的权重