图结构数据上的深度学习
这门课学什么
这门课讲图神经网络(GNN):图学习任务、GNN 设计与表达能力、可扩展架构、图注意力与图 Transformer、自监督学习、知识图谱嵌入、图生成模型、LLM 与图。课程网站提供每讲幻灯片、书面作业和 Colab 编程作业。
内容摘要
这门研究生课讲图结构数据上的深度学习,讲师是应智韬(Rex Ying)。Fall 2024 共 24 讲,每讲 75 分钟,其中 1 讲是客座讲座。主线是:先定义图上的学习任务,再设计和分析图神经网络(GNN),最后扩展到前沿方向和应用。
第 1–6 讲打基础:图学习任务、深度学习背景、GNN 的设计、实现与损失函数,以及可扩展的 GNN 架构。第 7–14 讲讲架构与理论:图注意力网络、异构图、GNN 与 Transformer 的关系、GNN 理论和表达能力、图学习工具和图 Transformer。
第 15–24 讲讲前沿主题:图上的自监督学习、LLM 与图、双曲嵌入与双曲 GNN、分布式节点嵌入、图生成模型、知识图谱嵌入、图的可解释性、多模态图学习,最后是图形学、神经科学和科学模拟中的应用。
成绩由 4 部分组成:书面作业占 30%,题型结合数据分析、算法设计和数学推导;4 次 Colab 编程作业占 20%,使用 PyTorch Geometric;最后 1 讲有 1 小时闭卷考试,占 20%;课程项目占 30%。向 PyG 等开源项目贡献代码,最多可加 10%。
讲师是 GraphSAGE 和 GNNExplainer 的作者,课程内容多来自 2017 年以后的研究论文。学完后学员能设计 GNN 模型,并能读懂图学习方向的会议论文。
为什么值得学
讲师应智韬是 GraphSAGE、PinSAGE、GNNExplainer 的作者。专门讲图深度学习的完整大学课程很少。
课程信息
- 学校
- 耶鲁(Yale)
- 课程号
- CPSC 483/583
- 讲师
- 应智韬(Rex Ying)
- 学期
- Fall 2024
- 平台
- 课程官网
- 费用
- 免费
- 难度
- 高级
- 学时
- 约 24 讲 × 75 分钟
- 先修
- 需要数据结构、离散数学和算法课,并熟悉线性代数、多元微积分、Python 和 PyTorch。
- 材料
- 幻灯片、作业、代码
- 许可证
- 未注明
课程大纲 · 共 24 节
大纲依据:Fall 2024 课程网站 Syllabus 页源码(24 讲,不含无课日)(查看原始页面 ↗)
- 1导论Introduction
介绍图结构数据的来源,例如社交网络、分子和知识图谱,并说明课程安排。
- 2图学习任务Graph Learning Tasks
区分节点级、边级和图级预测任务。发布 HW1。
- 3深度学习背景与 GNN 基础Deep Learning Background and GNN basics
补充神经网络和梯度优化的背景,引入消息传递形式的 GNN。发布 Colab 1。
- 4GNN 设计Graph Neural Networks Designs
讲 GNN 层的设计空间:消息怎样计算,邻居怎样聚合,层与层怎样连接。
- 5GNN 实现、目标与损失函数GNN Implementations, Objectives and Loss Functions
讲 GNN 的代码实现,以及节点分类、链接预测等任务的训练目标和损失函数。
- 6可扩展的 GNN 架构Scalable GNN Architectures
讲邻居采样、子图采样等方法,让 GNN 能在大图上训练。
- 7图注意力网络与异构图Graph Attention Networks and Heterogeneous graphs
讲用注意力权重聚合邻居,以及处理多种节点和边类型的异构图模型。
- 8GNN 与 TransformerGNNs and Transformers
比较 GNN 与 Transformer 的计算结构,说明 Transformer 可以看作全连接图上的 GNN。
- 9GNN 理论Theory of Graph Neural Networks
讲 GNN 的理论性质,为分析表达能力做准备。
- 10客座讲座 1Guest Lecture 1
外请嘉宾讲座,课程网站没有写题目。
- 11GNN 表达能力(一)GNN Expressive Power
讨论 GNN 能区分哪些图结构,并与 Weisfeiler-Lehman 图同构测试对比。
- 12GNN 表达能力(二)GNN Expressive Power (2)
继续讲表达能力,介绍突破 Weisfeiler-Lehman 上限的 GNN 设计。
- 13图学习工具Graph Learning Tools
介绍 PyTorch Geometric、DeepSNAP 和 GraphGym 等图学习库与实验平台。
- 14图 TransformerGraph Transformers
讲怎样给 Transformer 加入位置编码和结构编码,让它处理图数据。
- 15图自监督学习(一)Self-supervised Learning with GNNs
讲没有标签时怎样训练 GNN,例如对比学习和预训练任务。发布 Colab 3。
- 16LLM 与图LLMs and Graphs
讨论大语言模型与图的结合:用 LLM 理解图,或用图增强 LLM。
- 17图自监督学习(二)Self-supervised Learning with GNNs (2)
继续讲图自监督学习的方法。发布 HW4。
- 18双曲嵌入与双曲 GNNHyperbolic Embeddings and Hyperbolic GNNs
讲为什么树状和层级结构适合嵌入双曲空间,以及双曲空间上的 GNN。
- 19分布式节点嵌入Distributed Node Embeddings
讲 DeepWalk、node2vec 等基于随机游走的节点嵌入方法。
- 20图生成模型Graph Generative Models
讲怎样学习图的分布并生成新图,例如用于分子设计。
- 21知识图谱嵌入Knowledge Graph Embeddings
讲把实体和关系嵌入向量空间的方法,用于知识图谱补全和推理。
- 22图的可解释性XAI for Graphs
讲怎样解释 GNN 的预测,例如找出对结果最关键的子图。
- 23多模态图学习Multimodal Graph Learning
讲把图与文本、图像等其他模态结合的学习方法。
- 24应用:图形学、神经科学与科学模拟Applications in Graphics, Neuroscience and Scientific Simulations
介绍 GNN 在计算机图形学、脑网络分析和物理模拟中的应用。