TimeGPT:时序预测领域终于有了第一个基础大模型

2023-11-09 13:51:38 浏览数 (2)

研究者认为,尽管深度学习在其他领域取得了成功,但其在时间序列分析中的有效性仍然受到争议。他们强调了由于缺乏标准化大规模数据集,在评估深度学习模型进行时间序列预测时所面临的挑战。

TimeGPT作为预训练模型,它能够在不进行额外训练的情况下,在不同领域生成准确的预测。研究者讨论了TimeGPT的架构,该架构基于Transformer模型,及其处理不同频率和特性的时间序列数据的能力。

从论文来看,研究者向我们展示了TimeGPT作为一种新型基础模型在时间序列预测领域的潜力和优势。通过克服当前数据集和模型架构的限制,TimeGPT有望推动时间序列分析的进一步发展,并改进现有预测方法的准确性和效率。

接下来,我们一起来看看TimeGPT的架构及其训练方式。

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

研究背景

关于深度学习方法的优越性,预测界目前存在分歧,尚未建立统一的方法。近年来,这些不同范式之间的挑战越来越激烈,质疑新发展的实用性、准确性和复杂性。尽管深度学习架构在其他领域取得了成功,但一些时间序列从业者已经证明,该领域的一些拟议创新没有实现他们的主张或期望。

然而,随着深度学习的出现,时间序列分析发生了范式转变。深度学习方法在学术界和大规模工业预测应用中变得流行起来。尽管深度学习在时间序列预测中显示出巨大的潜力,但它并不是万能的解决方案。在某些情况下,简单的统计方法或传统的机器学习模型可能更适合特定的任务。

在当前的历史背景下,深度学习模型在自然语言处理(NLP)和计算机视觉(CV)方面的优越能力是无可否认的。但值得注意的是,时间序列分析领域对于神经预测方法的性能仍然持怀疑态度。研究者认为这种怀疑有以下几方面原因:

一是不清晰或不成熟的评估设置:与其他受益于引入理想测试数据集的领域(如计算机视觉领域的ImageNet)不同,公开可用的时间序列数据集没有必要的规模和体量,以至于深度学习方法无法发挥出其优势。

二是次优模型:考虑到有限且特定的数据集,即使是设计良好的深度学习架构也可能在泛化方面遇到困难,或者需要相当大的努力来找到最优的设置和参数。

此外,缺乏满足深度学习方法需求的标准化大规模数据集也可能阻碍了这一领域的进步。虽然其他领域受益于基准数据集和清晰的评价指标,但时间序列领域仍然需要开发这些资源来促进创新和验证新技术。

而研究者在论文中利用大规模数据集训练时序基础模型,证明了更大和更多样化的数据集能够使更复杂的模型在各种任务中表现更好。

详解TimeGPT

Time

01

架构

实际上,该篇论文中对于TimeGPT的架构介绍十分简单。TimeGPT是一个基于Transformer的时间序列模型,采用历史值窗口来进行预测,并添加本地位置编码来丰富输入。该模型由多层编码器-解码器结构组成,每层都具有残差连接和层归一化。最后,线性层将解码器的输出映射到预测窗口维度。因此,该模型能捕捉过去事件的多样性,并正确地推断潜在的未来分布。

开发时间序列的大模型面临许多挑战,主要是处理来自广泛基础过程的信号的复杂任务,例如频率、稀疏性、趋势、季节性、平稳性和异方差性等特点给局部和全局模型带来了明显的复杂性。因此,任何基础预测模型必须具备管理这种异质性的能力。研究者将TimeGPT设计为处理不同频率和特点的时间序列,同时适应不同的输入大小和预测视界。这种适应性在很大程度上归因于TimeGPT所基于的底层Transformer架构。

TimeGPT并不是基于现有的大型语言模型(LLM)。虽然TimeGPT遵循在大量数据集上训练大型Transformer模型的原则,但其架构专门用于处理时间序列数据,经过训练后,旨在最小化预测误差。

02

训练数据集

TimeGPT采用了公开可用的最大时间序列数据集进行训练,包含超过1000亿个数据点。这个训练集涵盖了来自金融、经济、人口统计、医疗保健、天气、物联网传感器数据、能源、网络流量、销售、交通和银行业等广泛领域的时间序列。由于这种多样化的领域集合,训练数据集包含具有各种特征的时间序列。

在时间模式方面,训练数据集包含具有多种季节性、不同长度的周期和各种趋势类型的序列。除了时间模式,数据集还在噪声和异常值方面有所不同,提供了一个强大的训练环境。一些序列包含清晰、规律的模式,而其他序列则具有显著的噪声或意外事件,为模型提供了广泛的学习场景。大多数时间序列都以其原始形式包含在内;处理仅限于格式标准化和填充缺失值,以确保数据的完整性。

选择如此多样化的训练集对于开发强大的基础模型至关重要。这种多样性涵盖了非平稳现实世界数据的复杂现实,其中趋势和模式可能由于多种因素随时间变化。在这种丰富的数据集上训练TimeGPT使其能够处理各种场景,提高其鲁棒性和泛化能力。这有效地使TimeGPT能够准确地预测看不见的时间序列,同时消除了对单个模型训练和优化的需要。

03

训练TimeGPT

TimeGPT在NVIDIA A10G GPU集群上进行了为期多天的训练。在这个过程中,研究者进行了广泛的超参数探索,以优化学习率、批次大小和其他相关参数。进而观察到一种与研究结果相符的模式,即较大的批次大小和较小的学习率被证明是有益的。在PyTorch中实现的TimeGPT使用了Adam训练算法,并采用了学习率衰减策略,将其降低到初始值的12%。

04

不确定性量化

概率预测是指估计模型对预测的不确定性。符合预测是一个非参数框架,它提供了一种引人注目的方法来生成具有预定覆盖精度的预测区间。与传统方法不同,共形预测不需要严格的分布假设,可使其更加灵活,对模型或时间序列领域不加偏见。在推断新的时间序列时,研究者对最新可用数据进行滚动预测,以估计模型在预测特定目标时间序列时的误差。

实验结果

Time

研究者通过在一大组多样化的时间序列中,测试TimeGPT来探索其作为预测基础模型的能力。测试集包括来自多个领域的30多万个时间序列,包括金融、网络流量、物联网、天气、需求和电力。

评估是在每个时间序列的最后一个预测窗口进行的,长度因采样频率而异。TimeGPT使用先前的历史值作为输入,如Figure 3所示,而不重新训练其权重(零样本)。根据频率指定不同的预测视野,以表示常见的实际应用:月度为12,周度为1,日度为7,小时度为24。

这种评估方法能更准确地模拟现实世界的预测场景,因为在真实环境中,模型通常需要预测完全未见过的时间序列。通过这种方法,可以更好地衡量TimeGPT作为预测基础模型的性能,并评估其对各种领域和各种频率数据的泛化能力。

下图是一些数据集上的测试效果,采用rmse和rmae作为评测指标。

TimeGPT在零样本推理中表现出色,超过了一系列经过实战检验的统计模型和SoTA深度学习方法,在各个频率上都排名前三。

TimeGPT的零样本推理速度平均为0.6毫秒/序列,与简单的Seasonal Naive相当。与Numba编译结合的并行计算优化的统计方法平均训练和推理速度为600毫秒/序列,而LGBM、LSTM和NHITS等全局模型的平均速度为57毫秒/序列。由于其零样本能力,TimeGPT在总速度上优于传统的统计方法和全局模型。

总结

Time

目前的预测实践通常涉及复杂的流程,包括从数据处理到模型训练和选择的多个步骤。TimeGPT将流程简化为推理步骤,大大减少了复杂性和时间投资,并且还保持了最先进的性能。最重要的是,TimeGPT实现了大型转换器模型的优势民主化,如今这些模型仅限于拥有大量数据、计算资源和技术专长的组织。我们相信,基础模型将深刻影响预测领域,并重新定义当前的实践。

未来探索的两个主要领域:

  • 信息预测:这种预测方法将基础知识,如物理定律、经济原理或医学事实等,融入预测过程中。
  • 时间序列嵌入:传统上,从同一类别(如零售或金融)中提取的序列之间的相似性应该比跨领域的序列更高,但是需要进一步检验时间序列分类的假设。该研究提出了一种衡量序列相似性的强大指标,对该领域具有重要意义。

0 人点赞