人工智能课复习:4.1 图学习基础

图学习基础

图数据

图(Graph) 是一种描述实体节点及其关系 / 交互 / 链接的通用语言。

图学习 : 面向图数据的机器学习 & 深度学习。

图神经网络 : 面向图数据的神经网络。

图神经网络的难点在于 图数据 的特点:

  • 任意大小和复杂的拓扑结构

  • 没有固定的节点顺序或参考点

  • 常常是动态的,并且具有多模态特征

图的类型

异构图(Heterogeneous Graph) 的定义为:

\[\boldsymbol{G} = (𝑽,𝑬,𝑹,𝑻) \]

  • 𝑽 \(\quad\) 不同节点类型的节点 \(𝒗_𝒊\) ∈𝑽

  • 𝑬 \(\quad\) 不同关系类型的边或链接 (\(𝒗_𝒊\), 𝒓, \(𝒗_𝒋\)) ∈ 𝑬

  • 𝑹 \(\quad\) 关系类型 𝒓 ∈ 𝑹

  • 𝑻 \(\quad\) 节点类型 𝑻 ( \(𝒗_𝒊\) )

  • 节点和边都具有属性 / 特征

有向图(directed graph or digraph) :有向图的边是具备指向性的。

无向图(undirected graph) :无向图的边不具备指向性。

二分图(Bipartite graph) :节点分为两类,只有不同类的节点之间存在边。

对给定领域 / 问题选择合适的图表示决定了能否成功地构建神经网络:

  • 在某些情况下,存在一种唯一且明确的表示方法
  • 在其他情况下,表示方法并非唯一的。
  • 边的表示方式将决定研究问题的性质

图学习的任务

节点级(Node-level)预测:预测单个节点的属性或类别

抽取节点特征:描述节点在图中的结构和位置。

邻接节点 (neighbors)

节点 \(v_i\) 的邻接节点是与节点 \(v_i\) 直接相连的节点,其被记为 \(N(v_i)\)

节点度数 (degree)

节点 \(v_i\) 记为 \(d(v_i)\)入度(in degree) 记为 \(d_{in}(v_i)\)出度(out degree) 记为 \(d_{out}(v_i)\)

  • 有向有权图:节点 \(v_i\) 的出度等于从 \(v_i\) 出发的边的权重之和;节点 \(v_i\) 的入度等于从连向 \(v_i\) 的边的权重之和。

  • 无向图是有向图的特殊情况,节点的出度与入度相等,等于与节点相连的边的数量。

  • 无权图是有权图的特殊情况,各边的权重为 1,那么节点 \(v_i\) 的出度(out degree)等于从 \(v_i\) 出发的边的数量,节点 \(v_i\) 的入度(in degree)等于从连向 \(v_i\) 的边的数量。

平均度 是一个表达网络整体性质重要的参数。对于无向图来说,平均度的计算为

\[\bar{d}(G) = \frac{1}{N} \sum_{i=1}^{N} d_i = \frac{2M}{N} \]

度分布 \(P(d)\) 表示随机选择的节点的度为 \(d\) 的概率,平均度

\[\bar{d}(G) = \sum_{d=0}^{\infty} dP(d) \]

距离(distance):最短路径(shortest path)

最短路径(shortest path):\(v_s, v_t \in V\) 是图 \(G = \{V, E\}\) 上的一对节点,节点对 \(v_s, v_t \in V\) 之间所有路径的集合记为 \(p_{st}\)。节点对 \(v_s, v_t\) 之间的最短路径 \(p_{st}^{sp}\)\(p_{st}\) 中长度最短的一条路径,其形式化定义为

\[p_{st}^{sp} = \mathop{argmin}\limits_{p \in P_{st}} |p| \]

其中,\(p\) 表示 \(p_{st}\) 中的一条路径,\(|p|\) 是路径 \(p\) 的长度。

节点子图:Graphlets

给定节点数 \(p\),那么可以确定至多包含 \(p\) 个节点的所有 Graphlets \((G_1, G_2, \dots, G_n)\)

在所给图中分别寻找这些 Graphlets,把相应的数目写成向量 \((t_1, t_2, \dots, t_n)\),这就是节点的 Graphlets 特征向量。

示例:AlphaFold解决蛋白质折叠

基于蛋白质的氨基酸序列计算预测其三维结构,即对于每个节点,预测其三维坐标。

关键概念:“空间图(Spatial graph)”

  • 节点: 蛋白质序列中的氨基酸

  • 边: 氨基酸(残基)之间的接近性

基于现有链接预测新的 / 缺失 / 未知链接。

随机缺失的链接:

移除一组随机链接,然后预测它们。

时间上的链接:

给定由时间 \(t_0'\) 之前的所有边定义的图 \(G[t_0, t_0']\),输出一个排名列表 \(L\),其中包含不在 \(G[t_0, t_0']\) 中的边,这些边预计会在时间 \(G[t_1, t_1']\) 出现。

评估:

\(n = |E_{new}|\):在测试期间 \([t_1, t_1']\) 出现的新边的数量。

\(L\) 的前 \(n\) 个元素并计算正确边的数量。

别问我这一块是啥,我也没看懂,写得不像是
能看懂的

示例

  1. 推荐系统
  • 节点:用户和物品

  • 边:用户 —— 物品的交互

  • 任务:向用户推荐相关的内容,即预测图中两个节点是否相关

  1. 药物副作用
  • 节点:药物和蛋白质

  • 边:交互

  • 目标:给定一对药物,预测不良副作用发生的概率。

图级(Graph-level)预测:预测整个图的属性

示例

  1. 交通预测

节点:道路段

边:道路段之间的连接性

图;道路网络图

预测:到达时间(ETA)

  1. 药物发现

节点:原子

边:化学键

预测:相应药物的结构

  1. 物理模拟

节点:粒子

边:粒子之间的相互作用

图:物理模拟

目标:预测图将如何随时间演变

posted @ 2025-06-15 22:17  Antimerry  阅读(35)  评论(0)    收藏  举报