课程简介
之前深度学习主要关注例如文字的序列结构、例如图片的平面结构,现在处理这些数据的做法也比较成熟,关注序列任务的NLP领域多用RNN、Transformer、CNN对数据进行Encoder,而关注平面结构的CV领域更多使用CNN及其各种变体对数据进行Encoder。在现实世界中更多的数据表示并不是序列或者平面这种简单的排列,而是表现为更为复杂的图结构,如社交网络、商品-店铺-人之间的关系、分子结构等等。
图(graph)是一个非常常用的数据结构,现实世界中很多很多任务可以描述为图问题,比如社交网络,蛋白体结构,交通路网数据,以及很火的知识图谱等,甚至规则网格结构数据(如图像,视频等)也是图数据的一种特殊形式,因此图是一个很值得研究的领域。
目标收益
1. 从基础开始,理解图数据结构特点和特征向量表示
2. 了解图的应用领域和应用方法
3. 由浅入深学习图神经网络的构建、分类
4. 掌握图神经网络的设计和训练方法
5. 以GNN为基础学习知识图谱的表示和推理
6. 进阶学习图生成网络、图对抗训练和图模型的规模化
培训对象
对GNN算法原理和应⽤感兴趣,具有⼀定编程(Python)和数学基础(线性代数、微积分、概率论)的技术⼈员。
课程大纲
图和图神经⽹络发展 |
1.1.为何需要图 复习/了解图数据结构,以及如何在图数据上应⽤机器学习 1.2.图神经⽹络应⽤ 介绍图神经⽹络的应⽤场景和⽅式 1.3.图的表示 Graph Representation |
图神经⽹络基础 |
2.1.传统基于特征的⽅法:节点 2.2.传统基于特征的⽅法:边 2.3.传统基于特征的⽅法:图 |
图嵌⼊向量 Graph Embedding |
3.1.节点嵌⼊向量 Node Embeddings 3.2.节点嵌⼊的随机游⾛⽅法 Random walk approaches for node embeddings 3.3.图整体的嵌⼊向量 Embedding entire graphs |
使⽤矩阵⼯具研究图 |
4.1.PageRank:问题和⽅案 4.2.PageRank:如何解决 4.3.带重启的随机遍历 Random walk with restarts 4.4.矩阵分解和节点嵌⼊ Matrix factorizing and node embedding |
图神经⽹络预备 |
5.1.消息传递和节点分类 Message passing and node classification 5.2.关系和迭代分类 Relational and iterative classification5.3.集体分类 Collective classification |
图神经⽹络⼊⻔ |
6.1.图神经⽹络介绍 6.2.深度学习基础 6.3.图的深度学习 Deep learning for graph |
图神经⽹络概述 |
7.1.对GNN的⼀般观点 7.2.单层GNN A single layer of a GNN 7.3.多层GNN Stacking layers of a GNN |
图神经⽹络设计和训练 |
8.1.GNN的图扩展 Graph augmentation for GNNs 8.2.训练图神经⽹络 8.3.⽤图神经⽹络作预测任务 Setting up GNN prediction tasks |
图神经⽹络理论 |
9.1.图神经⽹络的表达⼒ How expressive are GNN 9.2.如何设计强表达⼒图神经⽹络 |
知识图谱 |
10.1.异构和知识图谱嵌⼊ Heterogeneous and knowledge graph embedding 10.2.知识图谱KG完全⽅法 Knowledge graph KG completion 10.3.多种知识图谱完全⽅法 Knowledge graph completion |
知识图谱推理 |
11.1.在知识图谱上进⾏推理 Reasoning in knowledge graphs 11.2.回答预测性查询 Answering predictive queries 11.3.在知识图谱上进⾏ Query2box 推理 Query2box reasoning over KGs |
⼦图问题 |
12.1.快速神经⼦图匹配和计数 Fast Neural Subgraph Matching & Counting 12.2.神经⼦图匹配 Neural subgraph matching 12.3.查找频繁⼦图 Finding Frequent Subgraphs |
⽹络社区 |
13.1.⽹络中的社区检测 Community Detection in Networks 13.2.⽹络中的社区 Network Communities 13.3.Louvain 算法 13.4.检测重叠社区 detecting overlapping communities |
图⽣成模型 |
14.1.图⽣成模型介绍 Generative Models for Graphs14.2.Erdos Renyi随机图 Erdos Renyi Random Graphs 14.3.⼩世界模型 The small world model 14.4.Kronecker 图模型 |
深度图⽣成模型 |
15.1.深度图⽣成模型 Deep generative models for graphs 15.2.图 RNN ⽣成逼真的图 Graph RNN Generating Realistic Graphs 15.3.规模化和评估图⽣成 Scaling up and Evaluating Graph Gen 15.4.深度图⽣成模型应⽤ |
图模型的局限性和对抗训练 |
16.1.图模型的局限性 16.2.节点位置感知的图神经⽹络 Position aware GNN 16.3.身份感知的图神经⽹络 Identity-Aware Graph Neural Networks 16.4.图神经⽹络的健壮性(相对于对抗攻击) Robustness of Graph Neural Networks |
图模型的规模化 |
17.1.将图形神经⽹络扩展到⼤图 Scaling up Graph Neural Networks to Large Graphs 17.2.GraphSAGE 邻⾥采样 GraphSAGE Neighbor Sampling 17.3.集群 GCN 规模化图神经⽹络 Cluster GCN Scaling up GNNs 17.4.通过简化图神经⽹络实现规模化 Scaling up by Simplifying GNNs |
图和图神经⽹络发展 1.1.为何需要图 复习/了解图数据结构,以及如何在图数据上应⽤机器学习 1.2.图神经⽹络应⽤ 介绍图神经⽹络的应⽤场景和⽅式 1.3.图的表示 Graph Representation |
图神经⽹络基础 2.1.传统基于特征的⽅法:节点 2.2.传统基于特征的⽅法:边 2.3.传统基于特征的⽅法:图 |
图嵌⼊向量 Graph Embedding 3.1.节点嵌⼊向量 Node Embeddings 3.2.节点嵌⼊的随机游⾛⽅法 Random walk approaches for node embeddings 3.3.图整体的嵌⼊向量 Embedding entire graphs |
使⽤矩阵⼯具研究图 4.1.PageRank:问题和⽅案 4.2.PageRank:如何解决 4.3.带重启的随机遍历 Random walk with restarts 4.4.矩阵分解和节点嵌⼊ Matrix factorizing and node embedding |
图神经⽹络预备 5.1.消息传递和节点分类 Message passing and node classification 5.2.关系和迭代分类 Relational and iterative classification5.3.集体分类 Collective classification |
图神经⽹络⼊⻔ 6.1.图神经⽹络介绍 6.2.深度学习基础 6.3.图的深度学习 Deep learning for graph |
图神经⽹络概述 7.1.对GNN的⼀般观点 7.2.单层GNN A single layer of a GNN 7.3.多层GNN Stacking layers of a GNN |
图神经⽹络设计和训练 8.1.GNN的图扩展 Graph augmentation for GNNs 8.2.训练图神经⽹络 8.3.⽤图神经⽹络作预测任务 Setting up GNN prediction tasks |
图神经⽹络理论 9.1.图神经⽹络的表达⼒ How expressive are GNN 9.2.如何设计强表达⼒图神经⽹络 |
知识图谱 10.1.异构和知识图谱嵌⼊ Heterogeneous and knowledge graph embedding 10.2.知识图谱KG完全⽅法 Knowledge graph KG completion 10.3.多种知识图谱完全⽅法 Knowledge graph completion |
知识图谱推理 11.1.在知识图谱上进⾏推理 Reasoning in knowledge graphs 11.2.回答预测性查询 Answering predictive queries 11.3.在知识图谱上进⾏ Query2box 推理 Query2box reasoning over KGs |
⼦图问题 12.1.快速神经⼦图匹配和计数 Fast Neural Subgraph Matching & Counting 12.2.神经⼦图匹配 Neural subgraph matching 12.3.查找频繁⼦图 Finding Frequent Subgraphs |
⽹络社区 13.1.⽹络中的社区检测 Community Detection in Networks 13.2.⽹络中的社区 Network Communities 13.3.Louvain 算法 13.4.检测重叠社区 detecting overlapping communities |
图⽣成模型 14.1.图⽣成模型介绍 Generative Models for Graphs14.2.Erdos Renyi随机图 Erdos Renyi Random Graphs 14.3.⼩世界模型 The small world model 14.4.Kronecker 图模型 |
深度图⽣成模型 15.1.深度图⽣成模型 Deep generative models for graphs 15.2.图 RNN ⽣成逼真的图 Graph RNN Generating Realistic Graphs 15.3.规模化和评估图⽣成 Scaling up and Evaluating Graph Gen 15.4.深度图⽣成模型应⽤ |
图模型的局限性和对抗训练 16.1.图模型的局限性 16.2.节点位置感知的图神经⽹络 Position aware GNN 16.3.身份感知的图神经⽹络 Identity-Aware Graph Neural Networks 16.4.图神经⽹络的健壮性(相对于对抗攻击) Robustness of Graph Neural Networks |
图模型的规模化 17.1.将图形神经⽹络扩展到⼤图 Scaling up Graph Neural Networks to Large Graphs 17.2.GraphSAGE 邻⾥采样 GraphSAGE Neighbor Sampling 17.3.集群 GCN 规模化图神经⽹络 Cluster GCN Scaling up GNNs 17.4.通过简化图神经⽹络实现规模化 Scaling up by Simplifying GNNs |