目录
写在前面
- 文章标题:UniST: A Prompt-Empowered Universal Model for Urban Spatio-Temporal Prediction
- 论文链接:【1】
- 代码链接:【2】
- 仅作个人学习记录用
1. 通用时空模型的挑战与能力特性
挑战1:
城市地区普遍存在数据稀缺问题。不同领域和城市的数字化程度不同,往往导致不平衡和不完整的数据集。尽管现有的时空建模方法取得了显著的进展,但其有效性通常局限于单个城市的特定领域。对大量训练数据的依赖进一步限制了模型的泛化能力。因此,目前的模型还远未达到“普适性”,仍然具有狭隘的适用性。
挑战2:
时空数据集固有的多样化格式。与具有自然统一的序列结构的语言或遵循标准化维度的图像和视频不同,从不同来源收集的时空数据表现出高度变化的特征。这些变量包括变量维度、时间长度和空间覆盖范围差异显著,对其结构标准化造成困难。
挑战3:
来自多个场景中时空数据分布高度变化。面对高度不同的时空模式,模型可能难以适应这些差异。与语言从共享词汇中获益不同,不同领域和城市的各种场景往往运行在完全不同的空间和时间尺度上,缺乏有效训练和泛化的共同元素。
特性1:
通用时空模型必须能够利用来自不同城市场景的大量且丰富的数据进行训练。基础模型的训练要保证获取足够丰富的信息。
特性2:
通用时空模型需要在不同的时空场景中表现出强大的泛化能力。特别是在训练数据有限或者没有训练数据的场景下,模型仍然可以很好的工作,没有出现明显的性能下降。
2. 构建通用时空模型UniST
2.1 大规模时空预训练
与现有的局限于单一数据集的方法不同,UniST利用了来自不同领域和城市的大量时空数据进行预训练。
1. 数据预处理:
使用网格系统将城市划分为等距、不重叠的区域。
将时空数据分为四维张量:
T
×
C
×
H
×
W
T × C × H × W
T×C×H×W,其中
T
T
T 代表时间步数,
C
C
C 代表变量数量,
H
H
H 和
W
W
W 代表空间网格。
2. 空间时间补丁:
由于 Transformer 架构处理的是一维序列数据,而时空数据是四维结构,因此需要进行空间时间补丁转换:将原始数据分割成独立的实例,每个实例是三维张量。使用三维卷积层将三维张量转换为多个较小的三维张量,形成一维序列数据。
3. 位置编码:
为了考虑序列中元素的顺序,采用正弦和余弦函数进行位置编码,分别应用于空间和时间维度。
4. 编码器-解码器结构:
借鉴掩码自编码器 (MAE) 的结构,使用编码器和解码器框架。
编码器处理输入补丁,解码器根据编码器的输出和掩码补丁重建图像。重点关注捕获全面的时空依赖关系,包括高级和低级关系,以准确预测特定时间和空间坐标的值。
5. 自监督预训练:
采用生成式预训练策略——掩码标记建模 (MTM)。使用四种不同的掩码策略:
(1)随机掩码:捕获细粒度的时空关系。
(2)管道掩码:模拟某些传感器可能失效的真实情况,提高空间外推能力。
(3)块掩码:更复杂的管道掩码,提高空间迁移能力。
(4)时间掩码:仅使用历史信息重建未来,提高捕捉时间依赖关系的能力。
2.2 时空知识规则引导提示学习
UniST引入了一个用于语境学习的提示网络,其中提示的生成由充分发展的时空领域知识自适应地指导,如空间层次性和时间周期性。UniST 模型利用时空知识引导提示学习来增强其泛化能力,并使用时空记忆池来存储和提取相关信息:
不同的时空数据集具有不同的特征和分布,导致模型难以适应不同的场景。UnisT首先提供了一些适用于提示即时时空泛化的假设:
假设 1: 对于一个新的数据集
B
B
B,可以识别与训练数据集
A
A
A 相关的细粒度模式。
假设 2: 不同的时空模式对应不同的提示。
假设 3: 存在一个函数
f
θ
f_θ
fθ,它捕捉时空模式
x
i
x_i
xi 到提示
P
i
∗
P_i^*
Pi∗ 的映射关系。
核心思想: 对于具有不同时空模式的输入,应该生成定制的提示。
时空知识引导提示学习利用了时空建模领域的知识,例如空间层次结构、时间周期性等,来指导提示的生成。这些知识帮助模型理解时空数据背后的潜在规律,例如空间邻近性、时间依赖性以及周期性模式。例如,模型可以识别城市不同区域之间的交通流量模式,或者识别一周内特定时间段内的交通高峰。
时空属性的提取主要分为两个维度:在空间维度上:,使用注意力机制将时间维度合并成一个称为 E s E_s Es 的表示,然后使用不同内核大小的 CNN 捕获空间依赖性和空间层次结构。在时间维度:上,使用注意力网络聚合前 M M M 步的表示 X c X_c Xc,并选择对应于前 N N N 天的相应时间点进行聚合,以捕获长期时间模式。
时空记忆池结构如下:
空间记忆池
K
M
s
K_Ms
KMs: 存储空间相关信息的键值对。
时间记忆池
K
M
t
K_Mt
KMt: 存储时间相关信息的键值对。
键值对: 由可学习的参数
k
s
,
i
k_{s,i}
ks,i,
m
s
,
i
m_{s,i}
ms,i,
k
t
,
i
k_{t,i}
kt,i,
m
t
,
i
m_{t,i}
mt,i 组成,其中 i 表示索引。
在提示学习过程中,空间记忆池和时间记忆池被优化以存储关于时空域知识的宝贵信息。需要提取信息时,使用时空属性提取的表示作为查询,从记忆池中提取相关信息。
3. UniST的实验与分析
UnisT文章中主要安排了如下实验:
3.1 模型预测效果
1. 实验设置:
- 数据集: 使用了超过 20 个时空数据集,涵盖多个城市和领域,例如人群流动、动态人口、交通速度、蜂窝网络使用、出租车行程和自行车需求等。
- 基线模型: 将 UniST 模型与多种最先进的时空预测模型进行比较,包括启发式方法、深度城市预测方法、视频预测方法、多变量时间序列预测方法和元学习方法。
- 指标: 使用常用的回归指标,例如平均绝对误差 (MAE) 和均方根误差 (RMSE),来衡量模型的预测性能。
2. 短期预测:
评估模型在短期预测任务中的性能,即预测未来 6 步的时空数据。结果表明,UniST 模型在所有数据集上都优于所有基线模型,并且相对于每个数据集的最佳基线模型,平均改进了 10.1%。这表明 UniST 模型能够有效地捕捉时空数据中的模式,并泛化到不同的数据集。
3. 长期预测:
评估模型在长期预测任务中的性能,即预测未来 64 步的时空数据。结果表明,即使预测时间更长,UniST 模型仍然优于所有基线模型,并且相对于每个数据集的最佳基线模型,平均改进了 10.1%。这表明 UniST 模型能够有效地理解时间模式,并泛化到更长的预测时间。
4. 少样本学习:
评估模型在少样本学习任务中的性能,即在没有或只有少量训练数据的情况下,对新的时空数据集进行预测。结果表明,UniST 模型在少样本学习任务中仍然优于所有基线模型,并且相对于长期和短期预测,具有更大的相对改进。这表明 UniST 模型能够有效地从少量示例中学习,并泛化到新的数据集。
5. 零样本学习:
评估模型在零样本学习任务中的性能,即在没有训练数据的情况下,对新的时空数据集进行预测。结果表明,UniST 模型在零样本学习任务中表现出色,甚至优于许多在训练数据上进行微调的基线模型。这表明 UniST 模型能够有效地从先前学习到的知识中提取细粒度相似模式,并将其应用于新的数据集。
3.2其他实验分析
1. 消融实验:
- 时空属性的重要性:
评估删除四种时空属性(空间接近性、空间层次结构、时间接近性和时间周期性)对 UniST 性能的影响。分析了每种属性在不同数据集上的贡献,并解释其必要性。 - 时空记忆池的大小:
探索不同大小的时空记忆池对 UniST 性能的影响。确定最佳记忆池大小,并解释其选择理由。
2. 时空提示学习器:
- 嵌入可视化:
利用 t-SNE 可视化时空记忆池中嵌入的初始状态和优化状态。分析嵌入在优化过程中如何变得多样化,以及这如何有助于记忆独特的时空模式。 - 时间记忆池中的记忆模式:
根据注意力权重选择输入,并计算每个嵌入对应的时空数据的平均值。分析不同数据集下记忆模式的相似性,并验证模型对不同时空场景的适应性。 - 注意力权重分布:
比较不同数据集下每个嵌入的注意力权重分布。分析注意力权重分布的差异性,以及这如何表明模型根据输入数据动态调整其关注点的能力。
3. 时空数据格式:
- 可扩展性:
探索模型参数规模对训练损失和预测性能的影响。分析可扩展性的趋势,并解释其背后的原因。与大型语言模型和视觉模型的可扩展性进行比较,并讨论时空数据格式的独特性。
4. 其他消融实验:
- 掩码策略:
评估删除每种掩码策略对 UniST 性能的影响。分析每种掩码策略对不同时空任务(预测、插值、空间外推)的贡献,并解释其选择理由。 - 知识引导提示:
评估删除四种时空属性对 UniST 性能的影响。分析每种属性对模型性能的贡献,并解释其必要性。