文献阅读12期:Deep Learning on Graphs: A Survey - 1
Posted RaZLeon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文献阅读12期:Deep Learning on Graphs: A Survey - 1相关的知识,希望对你有一定的参考价值。
[ 文献阅读·综述 ] Deep Learning on Graphs: A Survey [1]
推荐理由:图神经网络的survey paper,在很多的领域展现出了独特的作用力,分别通过GRAPH RNN(图循环网络)、GCN(图卷积)、GRAPH AUTOENCODERS(图自编码器)、GRAPH REINFORCEMENT LEARNING(图强化学习模型)、GRAPH ADVERSARIAL METHODS(图对抗模型)等五个类型的模型进行阐述,可以让大家对图神经网络有一个整体的认识
1.Introduction
- 作为人工智能领域皇冠上的宝石,深度学习在声音、图像、自然语言等领域表现出了难以匹敌的优势。它从数据中抽取复杂的Patterns的能力令人印象深刻。
- 而图(Graphs)在生活当中处处可见,这里的图是指狭义上的图论中的图,它们代表着不同领域当中事物间的联系。从社会网络,到电子商务网络,到生物链或是交通网,处处都有它们的身影。
- 如何利用深度学习的方法去分析图数据,这几年引起了广泛关注。不过也面临着以下挑战:
- 图的不规则结构:这导致了它很难被泛化,一些数学方法也很难用在图上,比如卷积核池化操作,在图上很难直接操作。
- 图的异质性与多样性:一个图的不同边与节点可能有各种各样不同的类型和特性。heterogeneous或homogenous,weighted或unweighted, signed或unsigned。每个图的功能也相差甚远。有给节点分类的,有预测边的链接的,有预测点属性的,可谓是花样百出。
- 大比例图:大数据时代有大图,图的节点或边数甚至可以是百万或是十亿级别。
- 跨学科:图论涉及的学科那就多了,化学分子的结构是个典型的图,亚马逊雨林食物链也是个图,社会人际关系更是图论的图。化学分子结构图有时候目标函数和限制条件甚至是不可微的,这就得刷掉一大部分基于梯度训练的网络。
- 为了解决这些问题,这个领域的文章如雨后春笋一般冒了出来。
- 下图给出五大类图神经网络与相应的目标和功能
2.数学符号
- 图的表达: G = ( V , E ) G=(V, E) G=(V,E), V = v 1 , … , v N V=\\left\\v_1, \\ldots, v_N\\right\\ V=v1,…,vN是N个点的集合。 E ⊆ V × V E \\subseteq V \\times V E⊆V×V是M条边的集合, A ∈ R N × N \\mathbfA \\in \\mathbbR^N \\times N A∈RN×N代表领接矩阵。
- 图可以使有向无向、有权无权,且 A ( i , j ) ≥ 0 \\mathbfA(i, j) \\geq 0 A(i,j)≥0。
- F V \\mathbfF^V FV代表节点的features, F E \\mathbfF^E FE代表边的features。
- X 1 ⊙ X 2 \\mathbfX_1 \\odot \\mathbfX_2 X1⊙X2本文中代表对应元素相乘。
- 无向图的拉普拉斯矩阵被定义为 L = D − A \\mathbfL=\\mathbfD-\\mathbfA L=D−A, where D ∈ R N × N \\mathbfD \\in \\mathbbR^N \\times N D∈RN×N(D是一个斜对角阵), D ( i , i ) = ∑ i A ( i , j ) \\mathbfD(i, i)=\\sum_i \\mathbfA(i, j) D(i,i)=∑iA(i,j)。
- 拉普拉斯矩阵自分解为: L = Q Λ Q T \\mathbfL=\\mathbfQ \\mathbf\\Lambda \\mathbfQ^\\mathbfT L=QΛQT, where Λ ∈ R N × N \\boldsymbol\\Lambda \\in \\mathbbR^N \\times N Λ∈RN×N( Λ \\boldsymbol\\Lambda Λ也是个对角阵,且其中是升序排序的特征值), Q ∈ R N × N \\mathbfQ \\in \\mathbbR^N \\times N Q∈RN×N是对应的特征向量。(拉普拉斯矩阵,可以看看这篇文章,讲得很好:https://zhuanlan.zhihu.com/p/67336297/)
- 转移矩阵被定义为: P = D − 1 A \\mathbfP=\\mathbfD^-1 \\mathbfA P=D−1A, 其中 P ( i , j ) \\mathbfP(i, j) P(i,j)代表着从 v i v_i vi到 v j v_j vj的random walk的几率
- 节点 v i v_i vi的k步近邻定义为: N k ( i ) = j ∣ D ( i , j ) ≤ k \\mathcalN_k(i)=\\j \\mid \\mathcalD(i, j) \\leq k\\ Nk(i)=j∣D(i,j)≤k,其中 D ( i , j ) \\mathcalD(i, j) D(i,j)从 v i v_i vi到 v j v_j vj的最短距离。 N k ( i ) \\mathcalN_k(i) Nk(i)就是 v i v_i vi k步之内能抵达的点。
- 对于深度学习模型,本文用超文本 H l ∈ R N × f l \\mathbfH^l \\in \\mathbbR^N \\times f_l Hl∈RN×fl来描述l层的各个维度。
- 在图上训练深度模型可以被分为两类:
- 专注于节点的任务:这些任务专注于图中独立的节点,比如点分类,链接预测,和节点属性预测。
- 专注于图的任务:这些任务则更倾向于整个图。比如图分类,评估图的各种属性以及图生成。
3.图循环神经网络
- Graph RNN 可以被大致分为两种:node-level RNNs & graph-level RNNs,主要区别就在于各自focus的方面。
- 下表给出两种图循环神经网络的主要区别:
3.1.Node-level RNNs
- Node-level RNNs for graphs 也叫作Graph Neural Networks(GNNs),其最主要的思想就是将图结构信息编码。通过一组低维度状态向量
s
i
\\mathbfs_i
si来描述点
v
i
v_i
vi,那么对状态的递归式定义为:
s i = ∑ j ∈ N ( i ) F ( s i , s j , F i V , F j V , F i , j E ) (1) \\mathbfs_i=\\sum_j \\in \\mathcalN(i) \\mathcalF\\left(\\mathbfs_i, \\mathbfs_j, \\mathbfF_i^V, \\mathbfF_j^V, \\mathbfF_i, j^E\\right)\\tag1 si=j∈N(i)∑F(si,sj,FiV,FjV,Fi,jE)(1) - 最终输出可以表达为:
y ^ i = O ( s i , F i V ) (2) \\haty_i=\\mathcalO\\left(\\mathbfs_i, \\mathbfF_i^V\\right)\\tag2 y^i=O(si,FiV)(2) - 对graph-focused任务,可以在图中加个含有独特属性的special node来表示整个图。
- 本文的作者有个让我比较惊讶的观点:几种循环神经网络实则是一种图结构,并且大多遵循1式的形式进行迭代更新,并且相邻的节点之间基本都会交换信息。
- 为确保1式有唯一解,那就需要
F
(
⋅
)
\\mathcalF(\\cdot)
F(⋅)是一个压缩映射,如
∃
μ
,
0
<
μ
<
1
\\exists \\mu, 0<\\mu<1
∃μ,0<μ<1,则有:
∥ F ( x ) − F ( y ) ∥ ≤ μ ∥ x − y ∥ , ∀ x , y (3) \\|\\mathcalF(x)-\\mathcalF(y)\\| \\leq \\mu\\|x-y\\|, \\forall x, y\\tag3 ∥F(x)−F(y)∥≤μ∥x−y∥以上是关于文献阅读12期:Deep Learning on Graphs: A Survey - 1的主要内容,如果未能解决你的问题,请参考以下文章文献阅读17期:Deep Learning on Graphs: A Survey - 6
文献阅读16期:Deep Learning on Graphs: A Survey - 5
文献阅读17期:Deep Learning on Graphs: A Survey - 6
文献阅读15期:Deep Learning on Graphs: A Survey - 4