Application of Graph ML
- 图机器学习任务分为四类
- 节点级别 node level
- 边级别 edge level
- 社区 / 子图级别 community(subgraph) level
- 图级别,包括预测任务graph-level prediction和 图生成任务graph generation
- 各类型的典型任务
- 节点分类Node classification: 预测节点属性Predict a property of a node
Example: 对在线用户或项目分类Categorize online users / items - 连接预测Link prediction: Predict whether there are missing links between two nodes
Example: Knowledge graph completion - 图分类Graph classification: Categorize different graphs
Example: Molecule property prediction - 聚类Clustering: Detect if nodes form a community
Example: Social circle detection - Other tasks:
Graph generation: Drug discovery
Graph evolution: Physical simulation
- 节点分类Node classification: 预测节点属性Predict a property of a node
- example of node-level ML tasks:解决蛋白质折叠问题——AlphaFold ^1
蛋白质由一系列氨基酸(氨基酸链chains of amino acids或amino acid residues)构成,氨基酸之间的交互使其形成不同的折叠方式,组成三维蛋白质结构(组合方式很复杂,但交互之后形成的结构是唯一的,所以理论上可预测)。
学习任务就是输入一系列氨基酸,预测蛋白质的3D结构。
AlphaFold将一个被折叠的蛋白质视作图空间spatial graph,residue视作节点,在相近的residue之间建立边,形成图结构,搭建深度学习模型,预测节点在空间中的位置(也就是蛋白质的三维结构)。 - example of link-level ML tasks:
- 推荐系统(向用户推荐商品)
点:用户和项目
边:用户和项目之间的互动,如看电影、买商品等
目标:向用户推荐他可能喜欢的东西
方法:创建双向网络bipartite network,同时考虑图和图结构 - 预测多种药物相互作用产生的副作用
点:药物和蛋白质
边:各个点之间的相互作用
目标:在已知一些药物之间存在副作用的情况下,预测未知药物间的副作用
方法:两级异构网络
- 推荐系统(向用户推荐商品)
- example of subgraph-level ML Tasks子图级机器学习:流量预测traffic prediction
点:路段road segements
边:路段之间的连接connectivity between roads segements
目标:预测从A到B需要的时间
方法:图神经网络
- examples of graph-level ML Tasks
- drug discovery:antibiotics are small molecular graphs抗生素是小分子图
点:原子atoms
边:化学键chemcial bonds
目标:对分子进行分类并预测出最有可能是抗生素的分子 - Graph Generation —— Molecule Generation / Optimization
- Graph Evolution —— Physics Simulation(粒子间的相互作用)
迭代iterate:根据邻近度proximities确定粒子间的相互作用interactions between the particles,生成接近图proximity graph应用神经网络,通过其属性如位置、速度等预测粒子下一步的位置和速度,不断进行迭代生成新的接近图预测新的位置和速度
- drug discovery:antibiotics are small molecular graphs抗生素是小分子图