GraphGAN

GraphGAN是一种结合了图神经网络和生成对抗网络(GAN)概念的机器学习模型。它旨在通过对抗学习框架解决图数据中的节点分类和链接预测问题,特别是在缺少标签数据的情况下。GraphGAN通过结合生成器和判别器两个主要组件来学习图中节点的有效表示。
GraphGAN的框架如下:设
- 生成器
:尝试近似顶点 的真实连通性分布 ,并生成(或选择)最有可能与 相连接的顶点集。 - 判别器
:旨在鉴别顶点对 的连通性。 输出一个标量值,表示边 存在的概率。
生成器
上式描述的最小最大(Minimax)博弈公式是生成对抗网络的核心。在图生成对抗网络(GraphGAN)的上下文中,生成器
第一部分为真实数据的期望
第二部分是关于生成数据的期望
可以看出这两部分期望的目标都是希望经过训练后,其值越来越小,理想情况下为0,因此可以看作GraphGAN的损失函数,GraphGAN的训练状态如图1所示。

阴影的圆代表从真实图结构中采样的真实与顶点
下面具体的讲解GraphGAN的优化过程,对于判别器而言,定义鉴别器
定义
在训练过程中,GraphGAN交替地更新生成器
类似的,生成器
在式(4)的推导中,
值得注意的是,在给定顶点
当图数据体量庞大时,上述公式的计算复杂度是非常高的。因此,在GraphGAN框架中,提出了一种称为Graph Softmax的新方法,它的核心思想有三点:
(1)规范化(Normalized):生成器应该产生一个有效的概率分布,这意味着对于一个给定的顶点
(2)图结构意识(Graph-structure-aware):生成器在确定顶点之间的连通性概率时,应该利用图的结构信息。具体来说,如果两个顶点之间的最短路径距离增加,它们被认为是相连的概率应该下降。
(3)计算效率(Computationally Efficient):与Softmax不同,Graph Softmax在计算时只考虑图中少数的特定顶点,从而提高计算效率。
为了实现Graph Softmax,首先需要执行一个从顶点

如图2所示,从顶点
作者
arwin.yu.98@gmail.com