A Gravity-informed Spatiotemporal Transformer for Human Activity Intensity Prediction

作者:Yi Wang et.al.

论文链接:http://arxiv.org/abs/2506.13678

发布日期:2025-06-18

解读时间:2025-07-19 19:16:55

论文摘要

Human activity intensity prediction is a crucial to many location-based services. Although tremendous progress has been made to model dynamic spatiotemporal patterns of human activity, most existing methods, including spatiotemporal graph neural networks (ST-GNNs), overlook physical constraints of spatial interactions and the over-smoothing phenomenon in spatial correlation modeling. To address these limitations, this work proposes a physics-informed deep learning framework, namely Gravity-informed Spatiotemporal Transformer (Gravityformer) by refining transformer attention to integrate the universal law of gravitation and explicitly incorporating constraints from spatial interactions. Specifically, it (1) estimates two spatially explicit mass parameters based on inflow and outflow, (2) models the likelihood of cross-unit interaction using closed-form solutions of spatial interactions to constrain spatial modeling randomness, and (3) utilizes the learned spatial interaction to guide and mitigate the over-smoothing phenomenon in transformer attention matrices. The underlying law of human activity can be explicitly modeled by the proposed adaptive gravity model. Moreover, a parallel spatiotemporal graph convolution transformer structure is proposed for achieving a balance between coupled spatial and temporal learning. Systematic experiments on six real-world large-scale activity datasets demonstrate the quantitative and qualitative superiority of our approach over state-of-the-art benchmarks. Additionally, the learned gravity attention matrix can be disentangled and interpreted based on geographical laws. This work provides a novel insight into integrating physical laws with deep learning for spatiotemporal predictive learning.

AI解读

好的,我将对这篇论文进行详细分析,重点关注其方法和技术细节,并尽力用通俗易懂的语言进行解释。

1. 核心方法与创新点

这篇论文的核心是提出了一个名为“Gravityformer”(重力信息时空Transformer)的深度学习框架,用于预测人类活动强度。它属于物理信息机器学习(PIML)的范畴,即把物理规律融入到深度学习模型中。

* 核心方法论: 将万有引力定律融入到时空Transformer模型中,用于约束空间交互,并缓解Transformer模型中常见的过平滑现象。
* 主要创新点:

* 重力信息Transformer框架: 提出利用万有引力定律来建模潜在的空间交互,从而动态地、空间显式地捕获空间交互。利用重力模型,开发了一个自适应重力模型(AdaGravity)模块,将物理约束结合起来,并表示空间交互系统中的距离衰减效应。通过将自适应重力模型与Transformer注意力机制相结合,实现了可解释的重力注意力矩阵,并减轻了深度Transformer层中注意力矩阵的过平滑问题。

* 自适应重力模型 (AdaGravity): 不同于传统数据驱动的spatial correlation modeling,AdaGravity通过估计基于流入和流出的空间显式质量参数,并使用空间交互的闭式解来建模跨单元交互的可能性,从而约束空间建模的随机性。

* 并行时空图卷积Transformer结构 (ST-GC2former): 受到时空耦合和同步的启发,论文设计了一个并行时空学习模块,称为ST-GC2former。它可以动态地整合时间和空间学习,并平衡时空特征之间的耦合关系。可以理解为同时从时间和空间两个角度学习特征,并进行融合。

* 可解释性: 通过学习得到的重力注意力矩阵,可以基于地理规律进行分解和解释,为时空预测学习提供了一种将物理规律与深度学习相结合的新思路。

* 与现有方法的区别:

* 现有方法,特别是时空图神经网络(ST-GNNs),通常忽略了空间交互的物理约束,导致学习到的空间相关性可能不符合实际情况,存在一定的随机性。Gravityformer通过引入万有引力定律,显式地对空间交互进行约束,使模型更加合理,泛化性更好。
* Transformer模型容易出现过平滑现象,导致注意力矩阵稀疏,信息传播效率降低。Gravityformer利用学习到的空间交互信息来引导Transformer的注意力矩阵,缓解过平滑问题。
* 现有模型对时空关系的处理往往是分离的,Gravityformer通过并行结构同时学习时空特征,更好地捕捉时空耦合关系。

2. 算法细节与流程

Gravityformer的核心思想是将物理规律(万有引力定律)融入到Transformer模型中,从而更好地建模人类活动强度 prediction。

1. 输入:
* 历史人类活动强度数据
* 人群流入数据 (inflow)
* 人群流出数据 (outflow)
* 时间戳数据(时间,星期,节假日)
2. 时空自适应嵌入(Spatiotemporal Adaptive Embedding):

* 利用可学习的嵌入向量表示时间信息(时间、星期、节假日)。这样做的好处是,模型可以自动学习到时间周期的规律和节假日的影响,而不需要人工指定。
* 使用一个可学习的时空嵌入矩阵,捕捉潜在的时空关系。这个嵌入矩阵可以看作是一个参数化的查找表,模型可以通过学习自动调整其数值,从而更好地捕捉时空模式。
* 使用全连接层提取历史数据中的时空特征。
* 将以上所有嵌入特征拼接起来,作为GST-GC2former Block的输入。

3. 自适应重力模型(Adaptive Gravity Model,AdaGravity):

* 目的:将万有引力定律融入模型,约束空间交互,并为Transformer提供物理信息。
* 将流入和流出特征与时空嵌入特征拼接,然后通过全局平均池化,得到质量参数。全局平均池化可以有效地降低计算量,并使质量参数更具有代表性。
* 利用高斯核函数和可学习的距离缩放矩阵来表示空间距离。
* 将质量参数和空间距离代入重力模型公式,得到自适应重力矩阵。
$$A_{grav} = \sigma(G) \odot (M_i^{\alpha_1} M_j^{\alpha_2}) \oslash (d_{ij} \odot s_{ij})^\beta$$

其中,
* $A_{grav}$ 是自适应重力矩阵,表示空间交互强度。
* $\sigma(\cdot)$ 是Softplus激活函数,保证参数为非负。
* $G$ 是重力常数,可学习参数。
* $M_i$ 和 $M_j$ 是节点 i 和 j 的质量参数。
* $\alpha_1$ 和 $\alpha_2$ 是质量缩放系数,可学习参数。
* $d_{ij}$ 是节点 i 和 j 之间的距离。
* $s_{ij}$ 是距离缩放因子,由可学习的距离缩放矩阵得到。
* $\beta$ 是距离缩放系数,可学习参数。
* $\odot$ 表示哈达玛积(element-wise product)。
* $\oslash$ 表示 element-wise division.

4. 重力信息时空图卷积Transformer (Gravity-informed Spatiotemporal Graph Convolution Transformer, GST-GC2former):
* 并行时空Transformer模块: 使用两个并行的Transformer分支,分别学习时间和空间特征。每个分支都包含一个动态图卷积层,用于动态地调整特征。通过并行结构,模型可以同时捕捉时空耦合关系。
* 重力信息引导: 将自适应重力矩阵与Transformer的注意力矩阵进行融合,缓解过平滑现象。
5. Hadamard Mapper:
* 该模块的作用是在送入GST-GC2former前,将特征映射到另一个线性空间,从而抑制噪声。
6. 多层GST-GC2former叠加和残差连接: 叠加多层GST-GC2former模块,并通过残差连接保留每一层的特征。
7. MLP解码器: 使用一个简单的多层感知机(MLP)作为解码器,将学习到的特征映射到最终的预测结果。
8. 损失函数: 使用L1损失函数来衡量预测结果和真实值之间的差距。

算法流程总结:
输入时空数据 --> 时空自适应嵌入 --> AdaGravity计算重力矩阵 --> 通过Hadamard Mapper抑制噪声 --> GST-GC2former并行学习时空特征,重力信息引导注意力 --> 多层叠加和残差连接 --> MLP解码器 --> 预测结果

算法的技术优势和创新之处:
* 通过引入物理规律,对空间交互进行约束,模型更合理,泛化性更好。
* 并行时空学习结构,可以更好地捕捉时空耦合关系。
* 自适应重力模型可以动态地调整空间交互强度,适应不同的场景。
* 通过缓解过平滑现象,可以提高Transformer模型的性能。
* 算法具有较强的可解释性,可以分析学习到的空间交互模式。

3. 详细解读论文第三部分

论文第三部分详细介绍了Gravityformer的各个组件。

* A. Preliminary 定义了问题: 给定历史人类活动强度 $X_H$, 人群流入 $X_{in}$, 人群流出 $X_{out}$, 在预定义的图 $G$ 上, 预测未来的 $p$ 个时间步的人类活动强度 $Y_p$。
$$ \{X_H, X_{in}, X_{out}|G\} \xrightarrow{\mathcal{F}} Y_p = \{X_{t+1}, X_{t+2}, ..., X_{t+p}|G\}$$
其中 $\mathcal{F}$ 代表预测模型.
* B. Spatiotemporal Adaptive Embedding
* 定义了时间嵌入 $E_t, E_d, E_h$,分别表示 time-of-day, day-of-week 和 holiday effect。
* 自适应时空嵌入 $E_s$ 用于捕捉潜在的时空关系。
* 全连接层用于获取历史数据的时空特征 $E_x$。
* 将所有嵌入特征拼接起来,作为输入 $Z$。
$$E_x = W_x X + b_x$$
$$Z = W_z(E_t || E_d || E_h || E_s || E_x) + b_z$$
其中 $W_x, b_x, W_z, b_z$ 是可学习的参数, $||$ 表示拼接操作.
* C. Adaptive Gravity Model
* 公式推导和物理意义:
* 万有引力定律:
$$F = G \frac{m_1 m_2}{r^2}$$
其中,$F$ 是引力,$G$ 是引力常数,$m_1$ 和 $m_2$ 是两个物体的质量,$r$ 是它们之间的距离。
* 重力模型:
$$T_{ij} = G \frac{P_i^{\alpha_1} P_j^{\alpha_2}}{d_{ij}^\beta}$$
其中,$T_{ij}$ 是节点 i 和 j 之间的空间交互强度,$P_i$ 和 $P_j$ 是节点 i 和 j 的人口(或相关数据),$d_{ij}$ 是节点 i 和 j 之间的距离,$\alpha_1$, $\alpha_2$ 和 $\beta$ 是缩放因子。
* AdaGravity:
* 为了适应高维时空数据并方便与神经网络集成,提出了 AdaGravity 模块。它通过全局平均池化得到质量参数,使用高斯核函数和可学习的距离缩放矩阵表示空间距离,并引入 Softplus 激活函数保证参数非负。
* 首先将流入和流出转换为 hidden features:
$$E_{in} = W_{in}X_{in} + b_{in}, \quad E_{out} = W_{out}X_{out} + b_{out}$$
这里 $W_{in}, W_{out}$ 是全连接层的权重, $b_{in}, b_{out}$ 是 biases.

* 接着计算质量参数 $M_i, M_j$:
$$M_i = Avg(E_{in} || Z || Z^{(l-1)}), \quad M_j = Avg(E_{out} || Z || Z^{(l-1)})$$
其中 $Avg$ 表示平均池化, $Z^{(l-1)}$ 是第 $l-1$ 层的输入 features.

* 然后计算自适应距离 scaling matrix $A_d$:
$$E_d^{(i)} = \rho(\kappa S^{(i)}), \quad E_d^{(j)} = \rho(\kappa S^{(j)})$$
$$A_d = \phi(\rho_1 \kappa_1 E_d^{(i)} {E_d^{(j)}}^T - {E_d^{(i)}}^T E_d^{(j)} = D)$$
其中 $\rho$ 是 Tanh 函数, $\phi$ 是 ReLU 函数, $\kappa$ 是一个超参数, $S^{(i)}$ 和 $S^{(j)}$ 是 adaptive node vectors.
* 最终的 AdaGravity 计算公式:
$$A_{grav} = \sigma(G) \odot (M_i^{\alpha_1} M_j^{\alpha_2}) \oslash (d_{ij} \odot s_{ij})^\beta = \sigma(G) \odot (M_i^{\alpha_1} M_j^{\alpha_2}) \oslash (A \odot A_d)^\beta$$
其中 $\sigma$ 是 Softplus 函数, 用于保证 $G, \alpha_1, \alpha_2, \beta$ 非负. $A$ 是原始距离矩阵.

* 物理意义: 万有引力定律表明,空间交互强度与质量成正比,与距离成反比。AdaGravity 将这一规律融入模型,可以更好地捕捉人类活动的本质特征。

* 关键定理和引理的证明思路: 这部分没有明确的定理和引理,但是重力模型的推导基于熵最大化原理,可以参考相关文献。
* 实现细节和技术要点:
* 使用 Softplus 激活函数保证参数非负。
* 使用全局平均池化降低计算量。
* 引入距离缩放矩阵提高模型灵活性。
* D. Gravity-informed Spatiotemporal Graph Convolution Transformer
* Parallel Spatiotemporal Transformer Module:
* 现有 Transformer 模型通常分开建模时空模式。
* 本论文提出并行时空图卷积 Transformer,称为 ST-GC2former,用于实现空间和时间学习的平衡整合。
* ST-GC2former 由两个并行 Transformer 分支组成。受 Conv2former 的启发,在动态图卷积(DyGCN)中引入了 V* 和 V_E 之间的新分支,用于动态特征调整。
* 该分支便于在 DyGCN 层中的时间和空间维度上进行同步特征调整,从而实现来自不同地理位置的差异耦合学习。
* 具体公式如下:
$$E_{q_t} = Z^{(l-1)} W_{q_t}, \quad E_{k_t} = Z^{(l-1)} W_{k_t}$$
$$E_{q_s} = Z^{(l-1)} W_{q_s}, \quad E_{k_s} = Z^{(l-1)} W_{k_s}$$
$$V_t = Z^{(l-1)} W_{v_t}, \quad V_s = Z^{(l-1)} W_{v_s}$$
$$A_t = E_{q_t} {E_{k_t}}^T / \sqrt{C_t}, \quad A_s = E_{q_s} {E_{k_s}}^T / \sqrt{C_s}$$
$$Z_t' = \phi(A_t) Z^{(l-1)} W_t + b_t, \quad Z_s' = \phi(A_s) Z^{(l-1)} W_s + b_s$$
$$(Z^{(l)}_{st}) = W_{fc}((Z_t' \odot V_t) || (Z_s' \odot V_s)) + b_{fc}$$

* 这里 $W$ 和 $b$ 均为可学习的参数, $\phi$ 是激活函数, $||$ 是拼接操作.
* Gravity-informed ST-GC2former Block:
* 为解决模型深度增加导致的 Transformer 注意力矩阵过平滑问题,将重力矩阵引入 GC2former 中的空间动态注意力矩阵,以缓解过平滑问题。

* 具体通过哈达玛积 ⊙ 将重力矩阵直接应用于动态注意力矩阵。公式如下:
$$Z_s'' = \phi((A_s \odot A_{grav})Z^{(l-1)} W_s + b_s)$$
$$(Z^{(l)}_{st}) = W_{fc}((Z_t' \odot V_t) || (Z_s'' \odot V_s)) + b_{fc}$$

* 另外,使用门控线性单元前馈网络 (GLU-FFN) 代替标准 FFN,实现信息过滤并改善通过门控机制的梯度流动。

$$Z^{(l-1)}_{res} = (Z^{(l)}_{st}) + Z^{(l-1)}$$
$$Z^{(l)} = FFN(Z^{(l-1)}_{res}) + Z^{(l-1)}_{res}$$
这里 $$FFN(X) = \epsilon(W_1 X + b_1) \odot (W_2 X + b_2)$$
$\epsilon(\cdot)$ 是 GELU 激活函数, $W_1, W_2, b_1, b_2$ 是可学习的参数.

* E. Gravityformer

* 在进入 GST-GC2former 之前,嵌入特征 Z 通过 Hadamard mapper 进行处理,旨在有效地将特征转换为另一个线性空间以进行噪声抑制。具体来说,它采用块对角矩阵 H 来将异常信息分配给矩阵中的附近 token:
$$H = \frac{1}{\sqrt{2}} \begin{bmatrix} H^{(l-1)} & H^{(l-1)} \\ H^{(l-1)} & -H^{(l-1)} \end{bmatrix}$$
$$Z_{hm} = (Z H) H^T (W_h (Z H) H^T)$$
其中 $W_h$ 是可学习的参数。
* 经过 L GST-GC2former 层后,进行多个残差跳跃连接以保留每一层的隐藏特征。然后,这些特征通过一个简单的 MLP head 进行解码:
$$Z^{(l)}_{skip} = \sum_{i=1}^{L} W_{skip}^{(i)} FFN(Z^{(i-1)}) + b_{skip}^{(i)} + Z^{(i-1)}$$
$$Y_{pred} = W_{dec2} \phi(W_{dec1} Z^{(L)} + b_{dec1}) + b_{dec2}$$

* 损失函数选择 L1 loss :
$$Loss = \frac{1}{N} \sum |Y - Y_{pred}|$$
其中 Y 是人类活动强度的真实值,Y_{pred} 是 Gravityformer 的预测值。

4. 实现细节与注意事项

* 关键实现细节:
* 自适应重力模型的参数初始化和约束,例如使用 Softplus 激活函数保证参数为非负。
* 并行时空Transformer模块的结构设计和参数设置。
* 重力信息与Transformer注意力矩阵的融合方式。

* 实现难点和解决方案:
* 重力模型的参数选择:不同的数据集可能需要不同的参数设置,需要进行调优。
* Transformer模型的过平滑问题:可以通过多种方法缓解,例如引入残差连接、使用更小的网络深度或采用正则化技术。

* 优化建议和最佳实践:
* 可以尝试不同的激活函数和损失函数。
* 可以探索其他的空间交互建模方法。
* 可以使用更先进的优化算法。

* 参数设置和调优:
* GST-GC2former的通道数、自适应嵌入参数、缩放参数需要根据数据集进行调整。
* 学习率、batch size、epochs等超参数也需要根据数据集进行调整。
* 可以使用网格搜索或贝叶斯优化等方法进行参数调优。

总的来说,这篇论文提出了一个新颖的、有效的时空预测模型,将物理规律与深度学习相结合,为相关领域的研究提供了新的思路。希望我的分析能帮助你更好地理解这篇论文。
返回论文列表