CS224W: Machine Learning with Graphs
Stanford / Winter 2021
15-deep-generation
Machine Learning for Graph Generation
Machine Learning for Graph Generation
-
Tasks
-
Task 1: Realistic graph generation
- Generate graphs that are similar to a given set of graphs
-
Task 2: Goal-directed graph generation
-
Generate graphs that optimize given objectives/constraints
-
E.g., Drug molecule generation/optimization
-
-
-
Key Insight
GraphRNN: Generating Realistic Graphs
Paper : GraphRNN: Generating Realistic Graphs with Deep Auto-regressive Models
GraphRNN: Generating Realistic Graphs
-
Key Idea
-
使用一个节点和边的生成序列 S π S^{\pi} Sπ逐步添加节点和边
-
Node-level: add nodes, one at a time
-
Edge-level: add edges between existing nodes
-
-
将图生成问题转换成了序列生成问题
-
Node-level sequence
-
Edge-level sequence
-
-
-
Architecture
-
GraphRNN has a node-level RNN and an edge-level RNN
-
Training
-
-
Issue
-
前述框架每生成一个节点都需要使用EdgeRNN考虑新生成的节点与前面所有节点的连接关系,生成序列过长
-
前述框架NodeRNN生成节点是随机顺序的,现在改成以BFS node ordering,这样只需考虑当前节点与前两个节点的连接关系
-
-
如何对比生成图与原图的相似度?
-
使用Earth Mover Distance(EMD)衡量两张图的节点度分布相似性
-
使用Maximum Mean Discrepancy(MMD)衡量两个集合中元素的相似度(若元素为标量,则元素间相似度用L2距离之类的衡量;若元素为分布,则使用EMD衡量)
-
GCPN: Goal-Directed Graph Generation
Graph Convolutional Policy Network
-
Our Goal
-
Optimize a given objective (High scores)
- e.g., drug-likeness
-
Obey underlying rules (Valid)
- e.g., chemical validity rules
-
Are learned from examples (Realistic)
- Realistic Graph Generation
-
-
key Idea
-
这种目标导向的任务适合用强化学习建模,直接以目标作为reward
-
-
Overview of GCPN
-
Insert nodes
-
Use GNN to predict which nodes to connect
-
Take action (check chemical validity)
-
Compute reward
-
-
Reward