深度时间序列模型的综述
时间序列,特点是数据点按离散时间顺序排列,在现实应用中无处不在。与其他模态不同,时间序列因其复杂和动态特性,包括非线性模式和时间变化趋势的纠缠,而呈现出独特的挑战。在现实场景中分析时间序列数据具有重要意义,几个世纪以来已经被广泛研究。近年来,时间序列领域见证了显著的突破,技术从传统的统计方法转向先进的深度学习模型。
在本文中,我们深入探讨了深度时间序列模型在各种分析任务中的设计,并从基本模块和模型架构两个角度回顾了现有文献 。此外,我们开发并发布了时间序列库(TSLib),作为多种分析任务的深度时间序列模型的公平基准测试,TSLib实现了24个主流模型,涵盖了来自不同领域的30个数据集,并支持五个常见的分析任务。基于TSLib,我们对12个先进的深度时间序列模型在不同任务上进行了全面评估。实证结果表明,具有特定结构的模型非常适合于特定的分析任务,这为深度时间序列模型的研究和应用提供了见解。代码可在https://github.com/thuml/Time-Series-Library获取。方法
时间序列模型需要揭示观察数据中内在的时间依赖性和变量相关性 。在本节中,我们对现有的深度时间序列模型进行技术综述。正如图3所示,现有工作可以根据其主干架构分为五类,即基于MLP(多层感知机)、基于RNN(递归神经网络)、基于CNN(卷积神经网络)、基于GNN(图神经网络)和基于Transformer的模型。在时间序列分析领域,已经提出了几个基准,例如DGCRN [160]、LibCity [161]、DL-Traff [162]、TS-bench [163]和BasicTS [14]。更具体地说,Autoformer [22] 提出了一个涵盖不同实际应用的标准长期预测基准。为了验证不同时间序列分析模型的通用性,TimesNet [3] 建立了一个更全面的模型通用性基准,涵盖了五个主流的时间序列分析任务。然而,这些基准通常存在一些局限性。当前时间序列基准的一个问题是它们对时间序列分析任务和特定领域的覆盖范围有限,这限制了其实际应用。此外,这些基准往往缺乏对任务类型、模型架构和具体基线方法的详细讨论和全面总结。因此,它们未能有效指导更高效的时间序列分析方法的设计,也未能推动该领域的进一步发展。
为有效解决这些问题,我们引入并实现了时间序列库(TSLib),这是一个公平和全面的基准,用于比较和评估深度时间序列模型在各种时间序列分析任务中的表现。如图9所示,TSLib包含统一的模型实验管道、标准化的评估协议、广泛而多样的真实世界数据集、主流和先进的时间序列分析模型,以及统一的实验验证和分析过程。
在我们的时间序列库中,我们精心遵循官方代码,实施了24种广泛使用的先进深度时间序列分析模型。这些模型源自四个典型的深度学习架构。用户可以根据其具体的实际使用场景从这些模型中进行选择。代码可在https://github.com/thuml/Time-Series-Library 获得。
接下来,我们将详细描述我们的TSLib,包括设计和实现原则(第5.1节)、评估协议和指标(第5.2节)、数据集描述(第5.3节)以及不同架构模型的主要结果(第5.4节)。
结论
在本综述中,我们系统地回顾了时间序列分析中的深度模型,并引入了时间序列库(TSLib)作为各种分析任务中深度时间序列模型的公平基准 。与以往关注特定分析任务或模型架构的综述相比,本文提供了一个全面的综述和对现有时间序列分析深度模型的概览,涵盖了预测、分类、填补和异常检测。我们首先详细回顾了时间序列模型中广泛使用的通用模块,包括归一化、分解和傅里叶分析。接下来,我们从骨干架构的角度总结了现有的深度时间序列模型。基于对现有文献的回顾,我们引入了一个实用的开源库——时间序列库(TSLib),其中包含了具有代表性的深度时间序列模型,可以作为时间序列分析领域的公平评估基准。最后,我们基于AI社区的最新发展和时间序列分析在实际应用中的需求,讨论了深度时间序列模型的未来研究方向。 链接:https://github.com/thuml/Time-Series-Library🏴☠️宝藏级🏴☠️ 原创公众号『 数据STUDIO 』内容超级硬核。公众号以Python为核心语言,垂直于数据科学领域,包括 可戳 👉 Python | MySQL | 数据分析 | 数据可视化 | 机器学习与数据挖掘 | 爬虫 等,从入门到进阶!
长按👇关注- 数据STUDIO -设为星标,干货速递