前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TKDE 2024 | 基于提示学习的时序预测模型:PromptCast

TKDE 2024 | 基于提示学习的时序预测模型:PromptCast

作者头像
VachelHu
发布2024-01-14 20:40:24
7540
发布2024-01-14 20:40:24
举报
文章被收录于专栏:时序人

对时间序列数据构建大模型,并适配各种时序任务(比如:时序预测)是最近时序研究的新视角。最近来自澳大利亚新南威尔士大学的几位研究者提出了一种新的预测范式:基于提示的时间序列预测(PromptCast)。在这项任务中,时序数字输入和输出被转换为提示,预测任务以句子对句子的方式构建,从而可以直接应用语言模型进行预测。

为了支持和促进这项任务的研究,研究者还提出了一个大规模数据集(PISA),其中包括三个真实世界的预测场景。现在该论文被数据挖掘领域顶级期刊 TKDE 收录,本文将为大家解析这个研究工作。

论文地址:https://arxiv.org/pdf/2210.08964.pdf

论文源码:https://github.com/HaoUNSW/PISA

概述

目前时序预测的 SOTA 模型大多基于 Transformer 架构,以数值序列为输入,如下图a所示:

这种模式主要通过多重编码融合历史数据信息,预测未来一定窗口内的序列数值。然而现今大模型主流主要是采用提示工程,受此技术的启发,该工作的研究者们提出了一种时序预测新范式,即通过设计提示词模版将数值输入转化为语句,利用大语言模型进行预测,把时序预测转变成了一个对话任务,如上图b 所示。

数据集介绍

研究者开源的 PISA 数据集包含三个实际场景的数据,分别是:电力负荷预测数据、天气预报数据和人类活动预测数据。

  • 电力负荷数据采集自 UCI 数据集仓库,原始数据包含321个用户每小时的电力消耗数据,研究者剔除了那些记录不完整的用户数据,并从中随机选择了50个记录完整的用户数据。
  • 天气预报数据采集自美国戴顿大学数据集仓库,PISA从中随机选择了 110 个城市的每日平均温度。
  • SafeGraph 人类活动数据采集自 SafeGraph Weekly Patterns3 记录的每日访问 POI 的访客数,随机选择了 324 个记录完整的 POI 15个月的访客数。

详情如下表所示:

研究者依次将上述数据集按照7:1:2的比例,沿时间轴划分成了训练、验证和测试数据集,同时采用滑窗的方式构建样本。为了区分数值数据和为语言模型处理的基于语言的数据集,通过上述滑动窗口处理的数值序列称作 PISA-numerical,整个数据集包含三十万左右的样本点。研究者对所有的数据都进行了脱敏处理,避免信息泄漏。

此时构建的 PISA-numerical 并不能直接送入语言模型中进行预测,文章进一步利用templeta实现data-to-text的转变,具体使用的模版如下:

模型与实验

研究者设计的实验围绕如下两个问题展开:

  • RQ1: 能否使用语言模型在 PromptCast 任务设置下预测时间序列?其性能如何?
  • RQ2: 使用提示以及语言生成模型进行时间序列预测能否实现更好的泛化能力?

除了使用均方根误差(RMSE)和平均绝对误差(MAE)作为评价指标,研究者还充分考虑到了语言模型推理过程中的不确定性,以及无法保证每个测试实例都能解码出数值的问题。因此,引入了缺失率作为额外的评估指标。

在语言模型部分,研究者对10个不同的语言模型进行了对比验证,这些模型包括:T5、Bart、BERT、RoBERTa、Electra、Bigbird、ProphetNet、LED、Blenderbot和Pegasus。这些模型各有特点,涵盖了当前最先进的语言模型技术。

传统数值预测方法部分,研究者选择了三种简单但实用的预测方法进行对比:复制昨天(CY)、历史平均(HA)和复制上周(CLW)。这些方法虽然简单,但在某些情况下可能具有一定的预测价值。

基于深度学习的数值预测模型部分,演技组合选择了AutoARIMA、LSTM、TCN、Transformer、Informer、Autoformer、FEDformer 等模型进行对比。这些模型在深度学习领域具有广泛的应用,并展现出了强大的预测能力。

通过对比不同模型的性能,文章旨在为相关领域的研究者提供有价值的参考,并为时间序列预测任务提供新的思路和方法。

数值模型和语言模型的结果如下:

其中只有基于 transforme r的模型可以采用不同的方式构造 temporal embedding(position embedding),这里文章对比了三种不同temporal embedding的效果,其中fixed embedding展现出最好的效果。

对于所有的语言模型,研究者都采用了 HuggingFace 提供的预训练权重进行初始化。这些预训练权重是基于通用英语语料库数据集,这些数据集主要涵盖了一般的文章,并不包含时间序列数据。值得一提的是,PISA数据集虽然公开,但我们仅在线获取了其csv格式的数据,确保了预训练过程中未使用PISA数据,从而避免了潜在的文本泄漏问题。

在实验环节,研究者针对每个语言模型在PISA的对应训练集上进行了微调。实验结果显示,Bigbird在众多语言模型中表现最佳。对比数值模型和语言模型,语言模型在CT和ECL子集上展现出更好的性能,在SG上也取得了与数值模型相当的结果。值得注意的是,除了BERT、Electra、Bigbird和ProphetNet之外,其他语言模型的缺失率均为0,这意味着它们均成功地解码出了包含数值的回复。

这一系列的实验结果,解答了研究中的第一个问题:通过PromptCast的方式,语言模型确实能够完成时间序列预测任务,并且其性能与数值预测模型相当。

接着研究者进一步测试了在零样本(用两个数据集训练或微调,用另一个数据集做测试)和从头开始用PISA数据集训练语言模型两种不同设定下,数值模型和语言模型的对比效果。

大部分数值模型在零样本设定下表现出较差的性能,相反不论是从头开始训练还是零样本微调,三个语言模型都表现出不错的效果,具有更好的泛化性能。

总结

该研究工作巧妙地将时序数据转化为文本数据,将传统的时序预测任务创新性地转化为对话预测任务。这一突破性方法,借助语言模型的强大能力,成功应用于时序数据的预测。实验结果充分证明了语言模型在时序预测任务中的有效性和泛化性。此外,研究者还构建了首个基于提示词的时序预测任务数据集,为后续研究提供了宝贵的资源。

为何语言模型在时序预测中能发挥如此重要的作用?研究者深入探索后发现,关键在于提示词的应用。借助提示词,语言模型能够充分运用辅助信息,如时间、场景语义信息等,更深入地理解这些信息与时序数据之间的关系,从而显著提升预测性能。

研究者还强调,他们的研究旨在为同行提供新的研究思路。例如,如何生成适用于数值数据的文本提示,以及如何避免因使用固定模板而产生的偏见。他们提出一个前瞻性的设想:是否可以利用语言模型自动生成对时序数据的描述,这将为未来的研究开辟新的可能。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-01-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 时序人 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档