课程链接:CS224W: Machine Learning with Graphs
课程视频:【课程】斯坦福 CS224W: 图机器学习 (2019 秋 | 英字)
目录
1. 前言
IDEA: Aggregate Neighbors
Key idea: Generate node embeddings based on local network neighborhoods
基于邻居聚合的思想,节点使用神经网络从它们的邻居处聚集信息。
随着神经网络选择的不同,提出了多种模型变体(其他可以参考:关于GNN的一些论文)。
- Scarselli, F., Gori, M., Tsoi, A. C., Hagenbuchner, M., & Monfardini, G. (2008). The graph neural network model. IEEE Transactions on Neural Networks, 20(1), 61-80.
- Battaglia, P. W., Hamrick, J. B., Bapst, V., Sanchez-Gonzalez, A., Zambaldi, V., Malinowski, M., … & Gulcehre, C. (2018). Relational inductive biases, deep learning, and graph networks. arXiv preprint arXiv:1806.01261.
- Defferrard, M., Bresson, X., & Vandergheynst, P. (2016). Convolutional neural networks on graphs with fast localized spectral filtering. Advances in neural information processing systems, 29, 3844-3852.
- Duvenaud, D. K., Maclaurin, D., Iparraguirre, J., Bombarell, R., Hirzel, T., Aspuru-Guzik, A., & Adams, R. P. (2015). Convolutional networks on graphs for learning molecular fingerprints. In Advances in neural information processing systems (pp. 2224-2232).
- Hamilton, W. L., Ying, R., & Leskovec, J. (2017). Representation learning on graphs: Methods and applications. arXiv preprint arXiv:1709.05584.
- Kearnes, S., McCloskey, K., Berndl, M., Pande, V., & Riley, P. (2016). Molecular graph convolutions: moving beyond fingerprints. Journal of computer-aided molecular design, 30(8), 595-608.
- Kipf, T. N., & Welling, M. (2016). Semi-supervised classification with graph convolutional networks. arXiv preprint arXiv:1609.02907.
- Lei, T., Jin, W., Barzilay, R., & Jaakkola, T. (2017). Deriving neural architectures from sequence and graph kernels. arXiv preprint arXiv:1705.09037.
- Li, Y., Tarlow, D., Brockschmidt, M., & Zemel, R. (2015). Gated graph sequence neural networks. arXiv preprint arXiv:1511.05493.
- Veličković, P., Cucurull, G., Casanova, A., Romero, A., Lio, P., & Bengio, Y. (2017). Graph attention networks. arXiv preprint arXiv:1710.10903.
- Verma, S., & Zhang, Z. L. (2018). Graph capsule convolutional neural networks. arXiv preprint arXiv:1805.08090.
- Ying, Z., You, J., Morris, C., Ren, X., Hamilton, W., & Leskovec, J. (2018). Hierarchical graph representation learning with differentiable pooling. In Advances in neural information processing systems (pp. 4800-4810).
- Zhang, M., Cui, Z., Neumann, M., & Chen, Y. (2018, February). An End-to-End Deep Learning Architecture for Graph Classification. In AAAI (Vol. 18, pp. 4438-4445).
关于这一部分,可以看以下这些资料:
- 图神经网络将成AI下一拐点!MIT斯坦福一文综述GNN到底有多强
- HOW POWERFUL ARE GRAPH NEURAL NETWORKS?【上PPT中提到的一些文章的引用应该都是这篇论文里面的引用标记】(Scarselli et al., 2009b; Battaglia et al., 2016; Defferrard et al., 2016; Duvenaud et al., 2015; Hamilton et al., 2017a; Kearnes et al., 2016; Kipf & Welling, 2017; Lei et al., 2017; Li et al., 2016; Velickovic et al., 2018; Verma & Zhang, 2018; Ying et al., 2018; Zhang et al., 2018)
Network neighborhood defines a computation graph。每个节点根据其邻域定义一个计算图,通过邻居聚合获得节点表示(node embedding)。获得了节点表示之后,可以对图中的节点求和或者求平均,得到图的表示。
目前,GCN在以下任务中已经展现了最好的性能:
- Node classification——节点分类(Kipf, T. N., & Welling, M. (2016). Semi-supervised classification with graph convolutional networks. arXiv preprint arXiv:1609.02907.)
- Graph Classification——图分类(Ying, Z., You, J., Morris, C., Ren, X., Hamilton, W., & Leskovec, J. (2018). Hierarchical graph representation learning with differentiable pooling. In Advances in neural information processing systems (pp. 4800-4810).)
- Link Prediction——链接预测(Zhang, M., & Chen, Y. (2018). Link prediction based on graph neural networks. Advances in Neural Information Processing Systems, 31, 5165-5175.)
但是,GNN并不是完美的!
- Some simple graph structures cannot be distinguished by conventional GNNs.——GNN并不能很好地识别一些简单的图结构。
- GNNs are not robust to noise in graph data——GNN对数据扰动不具有鲁棒性。
2. Limitations of conventional GNNs in capturing graph structure
问题:给定两个不同的图,GNN能够将他们映射到不同的图表示么?——这是分类正确的重要前提。
这个问题本质上是graph isomorphism test problem(图同构检验问题)。对于这个问题,一般情况下并没有多项式算法可以解决。也就是说,GNNs may not perfectly distinguish any graphs!
我们重新回顾一下GCN的思想——对于图中的节点,我们先得到它的计算图,然后通过邻居聚合得到节点表示,然后得到图的表示。那么,对于上述的两个不同的图结构来说,他们得到的节点的计算图是不一样的——
而,如果我们在聚合的时候选择 mean pooling(如GCN)或者 max pooling(如GraphSAGE),那么对于不同的计算图结构,他们得到的结果可能是一样的——这就导致了一些GNN的模型无法有效地识别不同的图结构。
因此,我们要求我们的聚合函数应该是单射函数(Injectivity)
如果我们的聚合函数是单射函数,那么我们最终的聚合结果也是单射的!
那么,我们怎样用神经网络来设计单射函数呢?
定理:Any injective multi-set function can be expressed by
ϕ
(
∑
x
∈
S
f
(
x
)
)
\phi (\sum_{x\in S} f(x))
ϕ(x∈S∑f(x))
这里的
ϕ
(
⋅
)
\phi(\cdot)
ϕ(⋅)和
f
(
⋅
)
f(\cdot)
f(⋅)都可以设计成多层感知器(MLP),进行训练。
这样的网络称为Graph Isomorphism Network (GIN)。
相关的介绍和思想在How Powerful are Graph Neural Networks? 这篇论文里有详细的阐述,也可以看一下网上的论文解读(How Powerful are Graph Neural Networks? GIN 图同构网络 ICLR 2019 论文详解)。GIN和Weisfeiler-Lehman (WL) Graph Isomorphism Test一样,对于同构图有很好的鉴别能力。
WL测试首先将图结构中的不同计算图的点标记成不同的颜色,然后统计不同颜色的节点的数量,进行比较,从而判别同构图。
通过和GCN、GraphSAGE的比较,GIN目前在图的分类方面的性能是最好的。
3. Vulnerability of GNNs to noise in graph data
深度神经网络很容易受到数据扰动的影响。
比如说,要给用户返回搜索结果的时候,怎样避免受到广告页面的影响,使返回的结果尽可能不收到广告这样的“垃圾数据”的扰动。(Zügner, D., Akbarnejad, A., & Günnemann, S. (2018, July). Adversarial attacks on neural networks for graph data. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (pp. 2847-2856).)
扰动的数学表示:
想要得到上述表达式的最优解几乎是不可能的,但是有一些近似解法,例如贪心等,更多地细节可以看Zügner的那篇文章。
4. Open questions & Future direction
一些未来的可研究的方向:
目前GNN应用的挑战:
-
Scarcity of labeled data——缺少高质量的标记好的数据
-
Out-of-distribution prediction
推荐一篇论文,主要思想是对相关的GNNs进行预训练,便于获取图形数据——Hu, W., Liu, B., Gomes, J., Zitnik, M., Liang, P., Pande, V., & Leskovec, J. (2019). Strategies for Pre-training Graph Neural Networks. arXiv preprint arXiv:1905.12265.
-
下一个挑战就是如何提高GNN的鲁棒性
5. Applications of Graph Neural Networks
这一部分主要是介绍了三个案例,具体的资料可以在网上检索到,以下供参考。
5.1 PinSage——GNN recommendation
5.2 Decagon——Heterogeneous GNN
- Graph Neural Networks for Multirelational Link Prediction
- Zitnik, M., Agrawal, M., & Leskovec, J. (2018). Modeling polypharmacy side effects with graph convolutional networks. Bioinformatics, 34(13), i457-i466.
- Github项目:Decagon: Representation Learning on Multimodal Graphs
5.3 GCPN——Goal-directed generation
- You, J., Liu, B., Ying, Z., Pande, V., & Leskovec, J. (2018). Graph convolutional policy network for goal-directed molecular graph generation. In Advances in neural information processing systems (pp. 6410-6421).
- [论文简介] 目标导向分子图生成的图卷积策略网络