前两篇文章我们介绍了论文的前两个部分GRNN和GCN,论文还剩下三个部分,分别是图自动编码、图强化学习和图对抗方法。这三部分在论文中的篇幅就不如前两部分了,作者更多的是罗列一些成果和改进,没有过多地进行讲解。下面笔者也做一个简单的介绍。
GAE
GAE(graph auto encodes)部分作者分为了两个部分,分别是AE和VAE,即自动编码器和变分自编码器。首先得介绍一下什么是AE。
AE
AE的整个过程可以通过下面这个图来概括。X通过编码器被压缩成抽象特征Z,再通过解码器把Z转换为X'。而我们的目的是尽可能让X和X'相似,能一模一样是最好的,然后来学习抽象特征Z。因为这样一来说明X被成功地压缩为抽象特征Z,而X和X'的误差越小越说明Z可以越好地表示X。
优化目标为下面的式子,先介绍一阶相似度和二阶相似度。一阶相似度是节点与节点特征的相似度,二阶相似度则更多地表示节点邻居的相似度。那么优化目标就可以写作以下的式子。
第一个式子为根据上上面的图写出来的,主要思想就是让X和X'的误差尽可能小。第二个式子是截取论文给出的例子,这里的P是一个转换矩阵可以类似地理解为临界矩阵那种,所以他的目的是让i节点对应的P的第i行和P hat的第i行误差尽可能小,其实就是让它们邻居的误差尽可能小,这就对应了前面说到的二阶相似度。
论文还提到了SAE,SAE在AE的基础上加上了稀疏性约束,使得有些隐藏层不被激活,这就使得输出的结果会比较稀疏,可以更好表示表现特征。AE中比较著名的方法就是SDNE,它也是一个很好的做图嵌入的方法。这个过程可以通过下面这张图来表现。首先看左边的一列图像,其实就是上述的AE过程,最后需要优化节点邻居的特征差异。再从左往右看,用左边的训练参数共享给右边的运算过程,可以算出两个抽象特征,这两个抽象特征的差异就是不同的两个节点的特征差异。