1.文章信息
本次介绍的文章是2024年arxiv上一篇名为《UrbanGPT: Spatio-Temporal Large Language Models》的文章,UrbanGPT旨在解决城市环境中的时空预测问题,通过大语言模型(LLM)的强大泛化能力来应对数据稀缺的挑战。
2.摘要
UrbanGPT是一种旨在解决城市时空预测问题的大型语言模型。时空预测的目标是预测城市生活各个方面的未来时空模式、趋势和事件,包括交通、人口流动和犯罪率。现有方法虽然在时空数据预测方面有一定成效,但大多依赖于大量的标注数据,这在实际的城市感知场景中往往难以获取。数据稀疏性是一个普遍存在的问题,在某些情况下,甚至难以收集任何标注数据,从而进一步加剧了这个问题。因此,构建一个能够在不同时空学习场景中展示出强泛化能力的时空模型变得至关重要。
受到大语言模型(LLMs)在处理文本数据方面显著成果的启发,UrbanGPT的目标是创建一个能够在广泛的下游城市任务中展现出卓越的泛化能力的时空LLM。为此,我们提出了UrbanGPT,改模型无缝集成了时空依赖编码器和指令微调范式,使得LLMs能够理解时间和空间之间的复杂相互依赖关系,从而在数据稀疏的情况下也能进行更全面和准确的预测。我们在各种公共数据集上进行了广泛的实验,涵盖不同的时空预测任务,结果一致表明,所设计的UrbanGPT始终优于最先进的基准模型。这些发现突显了在标记数据稀疏的零样本情景下构建大型语言模型进行时空学习的潜力。
3.介绍
时空预测在城市环境中的应用至关重要,如交通流量、人口移动和犯罪率预测。然而,现有方法依赖于大量标注数据,而实际应用中数据稀疏是一个普遍问题。因此,构建能够在数据稀疏情况下表现出色的时空预测模型成为一个重要挑战。
本文的主要贡献如下:
(1) 据我们所知,这是首次尝试开发一种能够在不同数据集上预测各种城市现象的时空大语言模型,尤其是在训练样本受限的情况下。
(2) 本文提出了时空预测框架UrbanGPT,它使得大语言模型能够理解时空之间错综复杂的相互依赖关系。通过将时空依赖编码器无缝集成到指令微调范式中,有效地将时空上下文与大语言模型相结合。
(3) 在现实世界数据上进行的大量实验证明了本文提出的UrbanGPT在零样本时空学习场景中具有出色的泛化能力。这些发现突显了该模型的强大泛化能力,表明它在准确预测和理解时空模式方面的有效性,即使在零样本场景下也是如此。
4.预备知识
时空数据
时空数据通常表示为三维张量𝑋∈ℝ𝑅×𝑇×𝐹,每个元素𝑋𝑟,𝑡,𝑓代表在𝑟区域𝑡时间段内的第𝑓个特征值。例如,预测城市区域内出租车流量的场景中,数据表示特定区域在给定时间段内的出租车进出流量。
时空预测
在时空预测任务中,通常使用历史数据预测未来趋势。具体目标是根据前𝐻步信息预测接下来的𝑃步数据,模型𝑓(·)通过历史数据进行训练。时空预测任务主要分为两类:回归预测(例如交通流量或出租车需求预测)和分类预测(例如犯罪发生预测)。
时空零样本学习
尽管现有时空学习方法有效,但在泛化到广泛的下游时空学习场景中常遇到困难。本研究旨在解决时空零样本场景,即在未见过的数据集或任务中进行预测。在这种情况下,预测函数负责预测从未遇见过的下游任务中的时空数据。
5.方法
图图1 UrbanGPT整体框架
5.1时空依赖编码器
大型语言模型在语言处理方面表现出卓越的能力,但它们在理解时空数据中固有的时间演变模式方面面临挑战。为了克服这一限制,我们提出通过集成一个多层次时间卷积网络的时空编码器来增强大语言模型捕捉时空上下文中的时间依赖性的能力。时空编码器由两个关键组件组成:门控扩散卷积层和多层次关联注入层。让我们将这种架构形式化为:
𝐸𝑟∈𝑅𝑇×𝑑为时空嵌入,这个嵌入是通过一个线性层增强原始数据𝑋获得的。为了解决梯度消失的问题,使用𝐸𝑟的一个切片,记为𝐸𝑟′(𝑙)∈𝑅𝑇′×𝑑,这个切片由膨胀卷积核的大小决定,用于执行残差操作。执行残差操作时使用1-D空洞卷积核Wk和𝑊𝑔∈𝑅𝑇𝑔×𝑑𝑖𝑛×𝑑𝑜𝑢𝑡,以及相应的偏置项bk和bg∈𝑅𝑑𝑜𝑢𝑡。sigmoid激活函数𝛿被用来控制在重复卷积操作中信息保存的程度。在门控时间膨胀卷积层编码之后,我们能够有效地捕捉跨多个时间步的时间依赖性,从而产生时间表示。
这些表示包含不同级别的时间依赖性,反映了各种粒度感知的时间演变模式。为了保存这些信息丰富的模式,我们引入了一个多层次关联注入层。这一层旨在将不同层次之间的相关性结合起来,形式化为:
其中W𝑠∈𝑅𝑇s×𝑑out×𝑑𝑜𝑢𝑡'是卷积核,经过L层编码后,我们使用一个简单的线性层融合门控扩散卷积层和多层次关联注入层的结果,最终的时空依赖性表征为,为了解决下游可能出现的各种城市场景集,本文提出的时空编码器在建模空间相关性时独立于图结构。因为在零样本预测环境中,实体之间的空间关系可能是未知的或难以确定的。这确保UrbanGPT在广泛的城市环境中的适用性。
5.2时空指令微调框架
时空数据-文本对齐
为了使语言模型能够有效地理解时空模式,对齐文本和时空信息至关重要。这允许模型融合不同模态,从而产生信息更丰富的表示。通过集成文本和时空域的上下文特征,模型可以捕获互补信息并提取更具表示能力的高层语义表示。为实现这一点,本文利用轻量级对齐模块来投影时空依赖性表示。投影操作采用线性层参数Wp∈𝑅d×𝑑L进行,其中dL表示大语言模型常用的隐藏维度。所得到的投影H∈𝑅R×F×𝑑L,在指令中使用特殊的标记表示为:<ST_start>,<ST_HIS>,...,<ST_HIS>,<ST_end>。其中,<ST_start>和<ST_end>为标识时空标记的开始和结束的标识符,这些标识符可以通过扩展其词汇量来包含在大语言模型中。占位符表示时空标记,对应于隐藏层中的投影H。通过使用该技术,模型获得了识别时空依赖性的能力,从而提高了其在城市场景中成功执行时空预测任务的能力。
时空指令提示
在时空预测的场景中,时间和空间信息都包含了有价值的语义细节,有助于模型理解特定上下文下的时空模式。例如,清晨和高峰时间段的交通流量有很大的不同,并且商业区和住宅区之间的交通模式也存在差异。因此,将时间和空间信息表示为提示文本的对时空预测任务是有益的,我们利用大语言模型的文本理解能力来编码这些信息。在UrbanGPT框架中,我们集成了多粒度的时间信息和空间细节,作为大语言模型的指令输入。时间信息包括一周的日期和时间等因素,而区域信息包括城市、行政区域和附近的兴趣点(POI)数据等,如下图所示。通过合并这些不同的元素,UrbanGPT能够识别和理解复杂的时空环境下不同区域和时段的时空模式,从而增强其零样本推理能力。
图2 编码时间和位置感知信息的时空提示指令
大预言模型的时空指令微调
使用指令微调LLMs以生成文本格式的时空预测存在两个挑战。首先,时空预测通常依赖于数值数据,其结构和模式与语言模型擅长处理的自然语言不同,后者侧重于语义和句法关系。其次,LLMs通常使用多分类损失进行预训练以预测词汇,从而得到潜在结果的概率分布。而回归任务则需要连续值分布。为了解决这些挑战,UrbanGPT采用了一种不同的策略,不直接预测未来的时空值,而是生成辅助预测过程的预测标记。这些标记随后通过回归层,将隐藏表示映射为生成更准确的预测值:
上式中预测标记的隐藏表征表示为𝛤𝑟,𝑓∈𝑅𝑑𝐿,其中预测标记可通过扩充大语言模型词表的方式引入。W1,W2,W3为回归层的权重矩阵,[⋅,⋅]为拼接操作。
6.实验
实验包括(1) 零样本预测性能:相同城市内未见区域的预测、跨城市预测任务;(2) 典型的有监督预测任务;(3) 消融实验:时空上下文影响、使用多个数据集进行指令微调的影响、时空编码器的影响和指令微调中的回归层;(4) 模型鲁棒性研究;(5) 案例研究
图3 跨区域零样本预测场景性能比较
图4 跨城市零样本预测场景性能比较
图5 端到端有监督设置下的预测性能评估
图6 消融实验
图7 鲁棒性研究
图8 案例研究
7. 总结与展望
本文提出了UrbanGPT,一个能够在不同的城市场景中具有良好泛化能力的时空大型语言模型。为实现时空上下文信号与LLMs无缝对齐,本文引入了一种时空指令微调范式。这赋予UrbanGPT在各种类型的城市数据中学习通用和可迁移的时空模式的卓越能力。大量实验分析展示了UrbanGPT架构及其关键组件的卓越有效性。
然而,需要注意的是,虽然结果是令人鼓舞的,但在未来的研究中仍然存在待解决的限制。作为第一步,我们积极收集更多种类的城市数据,以增强和完善UrbanGPT在更广泛的城市计算领域的能力。此外,理解UrbanGPT的决策过程也是重要的。虽然该模型表现出卓越的性能,但提供可解释性同样重要。未来的研究也将集中于赋予UrbanGPT模型解释其预测的能力。