论文:Variational Graph Auto-Encoders阅读笔记
论文:Variational Graph Auto-Encoders阅读笔记
- 作者:Thomas N. Kipf, Max Welling, 和GCN的作者是一样的
- 会议:Bayesian Deep Learning Workshop (NIPS 2016), NIPS的一个workshop,不是长文
- 论文链接:Variational Graph Auto-Encoders
- 代码链接:tkipf/gae
VAE
Variational Auto-Encoder (VAE),变分自编码器,主要由两部分构成,一个Encoder和一个Decoder, 主要用于生成式模型,Encoder把input变成隐变量Z,一般是一个概率分布,Decoder把这个隐变量Z变成output. 对于本文,就是要做一个从图的节点特征以及部分边到图的所有边的生成模型。隐变量就是图节点的表示,Encoder就是图节点的编码器,Decoder就是图的边生成器。
GAE
GAE是Variational Graph Auto-Encoders的非概率形式,非常容易理解,隐变量Z就是图上的N个节点经过GCN后的N*F维特征,Encoder就是两层GCN, Decoder就是向量点积。可以将隐变量Z理解为某种意义上图的节点的相似度,通过向量点积得到的两个图节点的相似度越大,则两个节点之间存在边的概率越大
VGAE
VGAE是Variational Graph Auto-Encoders的概率形式,也是VAE的通常的形式。隐变量Z是N个正态分布,Encoder用两个两层GCN分别得到N个均值和标准差,这两个GCN会共享第一层的参数,从而得到Z的N个正态分布。Decoder仍然是向量点积
损失函数
对于每个边,VAE会生成一个预测值,与真实值(0/1, 0代表无边,1代表有边)之间的交叉熵函数就是损失函数
实验
本文的实验通过在图学习三大经典数据集:Cora, Citeseer, Pubmed上扔掉一些边来构造数据集,然后预测扔掉的边是否存在。评价指标是AUC和Precision. 对比方法是图谱方法和DeepWalk, 都是图学习领域的经典baseline. 实验结果入下图所示: