论文笔记:从时序到时空再到城市大模型的演进

引言

在大语言模型(large language model,LLM)快速发展的当下,研究人员对聊天、代码生成等各种LLM显然擅长的领域中进行了充分而广泛的探索,已经产生了一批诸如GPT、BERT、Llama、Qwen等快速迭代的模型。同时,为了最大化利用大语言模型强大的泛化和推理能力,许多研究开始尝试让大语言模型解决其它领域的问题。一方面,LLM可以嵌入原始模型内部,为模型提供外部信息或加快收敛速度(如RAG);另一方面,LLM也可以将原始问题进行拓宽,从而产生新赛道新问题。近年来,在金融、医疗、时序等诸多领域,都产生了重量级的成果。

本文总结了近两年来时间序列领域(尤其是与轨迹、大模型相结合)的重要文章,并对他们进行梳理,以期找到时序、时空、城市大模型等方向的发展线索与未来启示。

时序

1. TimeGPT-1

论文:https://arxiv.org/pdf/2310.03589

在这篇文章中,作者构建了第一个时间序列领域的基座模型TimeGPT-1,并开辟了使用预训练大模型用于时间序列的新赛道。由于不同数据集的时间尺度、波动范围以及样本量差异很大,因此使用大模型捕捉时间序列内的深层次规律是合理的想法,特别是训练样本很少时(zero-shot)。作者还使用了conformal prediction来量化大模型的波动性,进行了简单的异常检测。论文的实验部分较为完整,可惜缺失zero-shot下与相似基座模型的比较;模型代码没有公开;文章的行文也有几处较为发散。

2. Timer: Generative Pre-trained Transformers Are Large Time Series Models

论文:https://aacrjournals.org/cancerres/article/77/21/e108/662567/TIMER-A-Web-Server-for-Comprehensive-Analysis-of

作者首先通过数据证明深度学习模型在样本量较少时效果会指数级变差,所以使用大模型技术构建一个大时间序列模型(large time series models,LTSM)是必要的。由于现有数据集无法满足作者要求,作者构建了一个约12G的复杂时间序列数据集,涵盖了7个主要时间序列领域。模型方面,作者将所有不同的序列统一化首尾拼接,并利用类似滑动窗口的技术构建输入单一序列(single-series sequence,S3)作为输入,最后用标准的transformer架构模型解决问题。这篇文章的模型架构较为简单,但复杂数据集的构建弥补了这一点。

3. Time-llm: Time series forecasting by reprogramming large language models

论文:https://arxiv.org/pdf/2310.01728

Time-llm同样想用LLM强大的推理能力强化时间序列预测的性能,但与先前工作不同的是,Time-llm想要使用NLP相关的大模型进行推理。为了解决从时间序列数据到自然语言的转化,作者将原始数据分patch进行了从数据到语义的对应。同时,作者将其它信息整合为辅助信息同时输入也是一个亮点。这种包括先验prompt和数据reprogramming的prompt驱动的LLM-时间序列分析方法在2024年的论文中成为了一股潮流。Time-llm在零样本和少样本时的实验效果提升较大。

Time-llm模型架构

时空

4. TrajGDM: A New Trajectory Foundation Model for Simulating Human Mobility

论文:https://dl.acm.org/doi/pdf/10.1145/3589132.3628362

TrajGDM尝试用扩散模型的方法构建轨迹基座模型,以此统一地指导各种下游任务。具体到方法层面,作者将轨迹映射到了轨迹图中;然后使用轨迹扩散器往轨迹图中不断加噪声直到达到正态分布;最后使用轨迹生成器找到原始轨迹。作者采用了Generative Adversarial Network (GAN)和马尔科夫链相结合的方式计算轨迹的位置。美中不足的是,TrajGDM似乎没有考虑轨迹的时序,仅仅将轨迹的地理位置嵌入模型;对于轨迹领域除轨迹生成外其它下游任务也有些言之不详。

5. Towards A Foundation Model For Trajectory Intelligence

论文:https://arxiv.org/pdf/2312.00076

作者在这篇文章中想要构建一个预训练大轨迹模型(large trajectory model,LTM),并通过fine-tune解决轨迹下游任务,当某地区轨迹数量少时,这种思路尤其有效。数据处理方面,作者为了合并相似轨迹点以减少收敛时间和vocabulary大小,提出了使用<地点,时序>输入+编码+聚类+hash的轨迹tokenizer方法。训练中,作者将轨迹随机遮盖(Masked Trajectory modeling,MTM)来构建子监督学习模型。模型在子轨迹预测、终点预测和轨迹-用户对应三个不同的下游任务中都展现出了较好的效果。但这篇文章的时序可能没有考虑具体的时间戳信息,这限制了模型质量。

6. TrajFM: A Vehicle Trajectory Foundation Model for Region and Task Transferability

论文:https://arxiv.org/pdf/2408.15251

万怀宇老师近期在时空大模型方面成果频出,TrajFM是较新的一篇。TrajFM认为区域的轨迹和周围的POI密不可分,所以可以使用POI中蕴含的信息增强大轨迹模型效果。TrajFM将每个轨迹点表示为(位置、时间戳、POI信息)三部分,其中POI部分是使用openAI的text2embedding增强POI语义理解实现的,让人眼前一亮。作者还设计了Learnable Spatio-Temporal Rotary Position Embedding (STRPE)来计算轨迹点之间的相关性。实验部分,作者比较了TrajFM与多种方法在时间预测方面的效果,TrajFM在跨区域的实验中也展现出了不俗的结果,这展现了模型的通用性。

TrajFM模型架构

城市大模型

7. Urbangpt: Spatio-temporal large language models

论文:https://arxiv.org/pdf/2403.00813

时间序列预测致力于从过往数据中得到未来数据的信息,这与城市治理这一领域不谋而合,因此最近出现了多篇以城市治理为故事、主要进行时间或时空序列任务的论文。UrbanGPT使用编码器和额外的回归层将时空依赖信息编码到向量空间,然后进行数据到文字的对齐。为了向大模型中输入复杂的城市相关信息,所有的prompt都被分为了时间信息、空间信息、任务描述三部分,便于多模态模型理解语言和时序信息。最终大模型预测出的数据也会使用卷积层与输入一起解码成答案。UrbanGPT与Time-llm有相似之处,但UrbanGPT通过城市信息的注入增强了模型对空间信息的泛化能力。

UrbanGPt模型架构

8. UniST: a prompt-empowered universal model for urban spatio-temporal prediction

论文:https://dl.acm.org/doi/pdf/10.1145/3637528.3671662

UniST采用了大规模预训练和提示学习,通过捕捉复杂的时空动态,提高了在少样本和零样本场景中的泛化能力。与UrbanGPT不同的是,UniST将时空数据编码后,使用多种不同的切片方式获取轨迹片段,再进行注入,从而捕获时空数据内部的特征。除此之外,作者在生成prompt时将时空信息分别投入记忆池,方便使用时空数据的编码从中获取额外信息。UniST在20多个时空场景中表现优异,尤其在少样本和零样本预测任务中,实现了比当前最先进模型更好的性能.

UniST模型架构

9. CityGPT: Empowering Urban Spatial Cognition of Large Language Models

论文:https://arxiv.org/pdf/2406.13948

CityGPT的框架包括两个核心组件:CityInstruction是一个多样化的数据集,通过构建包含地理信息的自然语言示例,使模型能够理解不同地点的地理位置及其相互关系;CityEval是一个评估基准,分为四个任务组:城市图像、城市语义、空间推理和综合任务,用于评估LLMs在不同城市场景下的能力。CityGPT使用原创数据集训练小型LLM,这些模型在城市任务(如出行预测、空间导航和城市语义理解)中表现出色,甚至在某些城市场景中超越了商业LLMs。

总结

本文总结了近几年在时序、时空以及城市大模型领域的代表性研究,展示了大语言模型在时间序列和时空数据中的应用潜力,并探讨了从时序模型到城市大模型的演进路径。

总体而言,从时间序列到时空模型再到城市大模型的演进,展现了大语言模型在这些新兴领域的巨大潜力。未来,如何更好地将时空信息与城市数据整合,并进一步提升模型的泛化和推理能力,将是这一领域的主要挑战和发展方向。