Introduction

为了将神经网络推广到图结构的机器学习,现有方法大多使用监督学习,而大多数图数据都缺少标记。因此有效的无监督图学习至关重要。现有的图的无监督学习方法例如随机游走,主要思想是输入图中的邻近节点在表示空间中的向量也相似。以此为根据进行分类。随机游走的限制在于其牺牲了结构信息以强化邻近信息,且调参十分影响性能。
总的来说,随机游走类的方法先入为主的认为,邻居节点具有相似表示。

Mutual Information Neural Estimation训练一个静态网络作为样本分类的分类器,分类依据和两个随机变量之间的联合及边缘分布有关。在此基础之上提出的DIM通过最大两个高维数据的互信息从而学习其表示。DGI就是DIM在图数据上的应用,且在半监督和分类任务中优于基线。

相关研究

  • 非监督学习:非监督学习的目的就是训练一个可以进行对比的encoder,对比带有和不带有感兴趣信息的表示。其实就像CNN识别图片里是否有猫一样,有猫的分类器中的打分函数值就高,反之则低。这种对比的方法在文本嵌入和图结构表示学习中已经有应用了。DGI也是对比方法的一种,目标函数是基于局部-全局样本对和负采样样本对的(没看懂)
  • 采样策略:以前的方法(就是随机游走的思想),在图上邻近的点有相似嵌入,把它视为正样本,以NLP为例:一个句子中相邻的词互为正样本。还有一种方法,用随机锚定的方式选取样本,即随机选取负样本的(还有一些基于此的变式)
  • 预测编码:是一种最大化互信息的方法,DGI和现有方法的不同之处在于,现有方法侧重于局部,DGI的对比输入同时包括局部和全局的图信息。这是DGI优势之一,还有一个方法是通过对邻接矩阵进行编码进行全局-局部对比,原文:这两种方法都依赖于矩阵分解式的损失,因此无法扩展到更大的图。(猜测是因为这种方式对大数据量图进行学习时计算量过大。)

DGI方法

X = {x1, x2, … , xn}:结点
A = NN: 邻接矩阵(零一阵,无向无权图)
通过将X、A输入编码器得到:
h = {h1, h2, … , hn}: 高维结点表示,可以用于下游任务,因为hi聚合了以i节点为中心的局部信息,这篇文章将hi称为
patch representation*

节点聚合后通过一个readout函数获取图表示s,将图表示h和节点表示s 输入一个鉴别器discriminator D,结果表示这个局部-全局样本对的概率分数。

这里样本R(hi,s)的负样本的定义就是除了i之外的j节点局部表示R(hj,s),样本选择器c的特点就是捕捉感兴趣的结构信息
深度CTR之Graph Embedding deep graph_机器学习目标函数,最大化h和s之间的互信息
最大化这个目标函数,就是尽可能的保留局部与全局间的互信息,可以在局部层面上发现和保留相似性。应用于节点分类任务就是建立相似局部表示之间的连接。
深度CTR之Graph Embedding deep graph_监督学习_02

实验

深度CTR之Graph Embedding deep graph_监督学习_03
h表示节点局部表示,用GCN作为encoding进行学习,s为全局表示,由局部表示combine得出。