UniTS:构建统一的时间序列模型 UniTS: Building a Unified Time Series Model


论文名称:UniTS: Building a Unified Time Series Model

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

Github:https://github.com/mims-harvard/UniTS.

摘要

基础模型,尤其是LLMs,正在深度学习领域发生深刻变革。我们可以通过少量提示或微调,将单个预训练模型适应于许多任务,而不是训练许多特定任务的模型。然而,当前的基础模型适用于序列数据,而不适用于时间序列,后者由于固有的多样性和多领域时间序列数据集、在预测、分类和其他类型任务之间存在差异的任务规范,以及对任务专用模型的明显需求,因此具有独特挑战。我们开发了UNITS,这是一个统一的时间序列模型,支持通用任务规范,适用于分类、预测、填补和异常检测任务。这是通过一种新颖的统一网络骨干实现的,该骨干结合了序列和变量注意力以及动态线性算子,并作为一个统一模型进行训练。在38个多领域数据集上,与特定任务模型和重新利用基于自然语言的LLMs相比,UNITS表现出优越的性能。在评估新数据领域和任务时,UNITS展现出出色的零-shot、少-shot和提示学习能力。源代码和数据集可在https://github.com/mims-harvard/UniTS获取。

引言

机器学习社区长期以来一直追求开发能够处理多个任务的统一模型。这样的统一和通用模型已经为语言(Brown等,2020;Touvron等,2023)和视觉(Rombach等,2022;Kirillov等,2023;Gao等,2023)开发出来,在这些领域,一个单一的预训练基础模型可以通过多任务学习(Zhang & Yang,2021)、少样本学习(Wang等,2020)、零样本学习(Pourpanah等,2022)和提示学习(Liu等,2022a)进行很少或没有额外训练即可适应新任务。

图1:UNITS是一个统一的时间序列模型,可以处理多个领域中的各种任务,具有共享参数,并且没有任何特定任务的模块。

然而,用于时间序列的通用模型相对较少探索。时间序列数据集在许多领域中丰富多样,包括医学(Goldberger等,2000b)、工程(Trindade,2015)和科学(Kaltenborn等,2023),用于广泛的任务,如预测、分类、填补和异常检测。然而,当前的时间序列模型要么需要微调,要么需要指定新的任务和数据集特定模块才能转移到新的数据集和任务,这可能导致过拟合,阻碍少量或零-shot转移,并给用户带来负担。

构建一个统一的时间序列模型面临着独特的挑战:1)多领域时间动态: 统一模型通过在不同数据源上共同训练来学习通用知识,但是时间序列数据在不同领域的时间动态方面存在广泛变异(He等,2023)。此外,时间序列数据可能具有异构的数据表示,例如变量数量、传感器定义和观测长度。这种时间序列数据的异构性阻碍了为其他领域开发的统一模型的使用(Zhang等,2023)。因此,必须设计和训练一个统一模型,以捕获通用的时间动态,从而将其转移到新的下游数据集,而不考虑数据表示。2)不同的任务规范: 时间序列数据上的常见任务具有根本不同的目标。例如,预测涉及预测时间序列中的未来值,类似于回归问题,而分类是在整个样本上进行的离散决策过程。此外,不同数据集上的相同任务可能需要不同的规范,例如在长度上变化的生成任务和具有多个类别的识别任务。现有的时间序列模型(Zhou等,2023;Wu等,2023)定义了任务特定的模块来处理每个任务,这会影响它们适应不同类型任务的能力。统一模型必须能够适应用户对任务规范的变化。3)需要任务特定的时间序列模块: 统一模型在各种任务之间使用共享权重,增强了它们的泛化能力。然而,以前方法中每个数据集的不同任务特定模块需要对这些模块进行微调。这个过程通常需要精细调整的训练参数以及每个任务的适度数据集大小,阻碍了对新任务的快速适应。这种策略与设计用于同时处理多个任务的统一模型的概念相矛盾。

本文工作。 为了解决这些挑战,我们引入了UNITS,这是一个统一的时间序列模型,通过共享参数处理各种任务,而无需使用任何特定任务的模块。UNITS在训练任务中表现出竞争性能,并且可以在新任务上进行零-shot推断,无需额外参数。UNITS解决了以下挑战:1)基于提示的通用任务规范: UNITS使用基于提示的框架将各种任务转换为统一的标记表示,为所有任务创建通用规范。2)数据域不可知网络: UNITS在序列和变量维度上都使用自注意力来适应各种数据形状。我们引入了一个动态线性算子来模拟任意长度序列中数据点之间的密集关系。因此,UNITS可以处理具有不同变量和长度的多领域时间序列,而无需修改网络结构。3)具有完全共享权重的统一模型: 利用通用任务规范和数据域不可知网络,UNITS在各任务之间具有共享权重。为了提高UNITS的泛化能力,引入了一个统一的掩码重构预训练方案,用于处理统一模型内的生成和识别任务。

在具有挑战性的多领域/任务设置中,一个具有完全共享权重的UNITS成功处理了38个不同任务,显示出其作为统一时间序列模型的潜力。UNITS通过在总共38个任务中取得最高平均性能,并在其中27个任务中取得最佳结果,优于顶尖基线模型(需要数据和任务特定模块)。此外,UNITS可以进行零-shot和基于提示的学习。它在处理新的预测任务时表现出色,处理新的预测视野和变量/传感器数量。例如,在具有新长度的一步预测中,UNITS的表现优于依赖滑动窗口的顶级基线模型10.5%。在提示学习模式下,一个固定的自监督预训练UNITS被适应到新任务,实现了与UNITS的监督对应模型相当的性能;在20个预测数据集中,提示的UNITS优于监督版本,将MAE从0.381提高到0.376。UNITS在少样本迁移学习中表现出色,有效处理填补、异常检测和跨领域预测和分类等任务,而无需专门的数据或任务特定模块。例如,UNITS在填补任务上比最强基线模型提高了12.4%(MSE),在异常检测任务上提高了2.3%(F1分数)。总的来说,UNITS展示了时间序列统一模型的潜力,并为时间序列中的通用模型铺平了道路。

相关工作

传统时间序列建模。 时间序列在统计学和机器学习社区中已经研究了很多年(Hyndman & Athanasopoulos,2018)。已经为特定时间序列任务开发了许多神经架构,例如预测(Wu等,2021;Liu等,2021;2023b)、分类(Xiao等,2022;Lu等,2023;Liu等,2023c)、异常检测(Ding等,2023;Li & Jung,2023;Chen等,2023b)和填补(Chen等,2023c;Kim等,2023;Ashok等,2024)。这些模型通常通过为一个下游任务设计的策略进行训练,通常通过监督学习在一个数据集上。一些工作专门为不规则采样的时间序列构建模型(Zhang等,2022b;Chen等,2023d;Naiman等,2024)。关于时间序列表示学习的最新进展的综述,请参阅最近的一项调查(Trirat等,2024)。
基础模型用于一般时间序列建模。 基础模型通常被定义为在广泛数据上训练的模型,可以适应各种不同的下游任务(Bommasani等,2021)。基础模型已经在许多领域变得普遍,包括语言建模(Brown等,2020;Touvron等,2023)和计算机视觉(Liu等,2022b;2023a;Kirillov等,2023)。最近在时间序列方面的研究试图开发类似于其他领域基础模型中观察到的能力。一些研究开发了通用的预训练策略,促进对新数据集和/或任务的有效迁移学习。常见的自监督预训练方法包括预测掩码时间段(Nie等,2023;Zerveas等,2021;Dong等,2023;Lee等,2024),在时间序列的增强视图之间进行对比学习(Luo等,2023;Wang等,2023;Xu等,2024;Fraikin等,2024),或者在时间序列的不同表示之间进行一致性学习(Zhang等,2022c;Queen等,2023)。一些研究旨在构建能够捕获多样时间序列信号的新颖架构(Wu等,2023;Liu等,2024)。其中一个特例是TimesNet(Wu等,2023),它使用通过傅立叶变换获得的多个频率特征级别,据称可以捕获复杂的时间序列信号。此外,一些研究建议将大型语言模型重新编程为时间序列(Nate Gruver & Wilson,2023;Chang等,2023;Zhou等,2023;Rasul等,2023;Jin等,2023;Cao等,2024)。在GPT4TS(Zhou等,2023)中,GPT-2(Radford等,2019)的嵌入层、归一化层和输出层被选择性地调整以适应各种时间序列任务。然而,它们仍然需要针对每个任务的特定模块和调整,而UNITS支持各种任务而无需特定于任务的模块。

提示学习。 提示学习已经成为大型神经网络高效任务适应的一种形式(Lester等,2021)。一些方法依赖于在模型的输入域中构建提示,例如语言模型的文本提示(Arora等,2023),而其他方法调整冻结语言模型的软标记输入(Li & Liang,2021)。除了语言建模,提示已经在计算机视觉(Radford等,2021;Zhang等,2022a;Chen等,2023a)和图学习(Huang等,2023)中使用。时间序列中唯一的提示学习实例之一是TEMPO(Cao等,2024),它引入了一个在推断时检索的提示词典。然而,这些提示仅在预测的情况下使用。对于冻结UNITS的提示学习使其能够适应超出预测之外的各种新任务。附录A中提供了更多相关工作的内容。

问题表述

符号表示。 我们有一组多领域数据集 D = { D i ∣ i = 1 , … , n } D=\left\{D_i \mid i=1, \ldots, n\right\} D={Dii=1,,n},其中每个数据集 D i D_i Di 可能包含不同数量的时间序列样本;样本长度和传感器/变量数量可能不同。每个数据集被描述为 D i = ( X i , Y i ) D_i=\left(\mathcal{X}_i, \mathcal{Y}_i\right) Di=(Xi,Yi),其中 X i \mathcal{X}_i Xi 表示时间序列样本, Y i \mathcal{Y}_i Yi 指定了在 X i \mathcal{X}_i Xi 上定义的任务。在本文中,我们考虑四种常见的时间序列任务:预测、分类、异常检测和填补。此外,每种任务类型可以以多种方式实例化,例如,短期与长期预测以及具有不同类别数量的分类。我们使用 F ( X i , θ ) F\left(\mathcal{X}_i, \theta\right) F(Xi,θ) 表示一个带有权重 θ \theta θ X i \mathcal{X}_i Xi 上训练的模型, F ( X , θ ) F(\mathcal{X}, \theta) F(X,θ) 表示在 D D D 中的所有数据集上训练的模型,即所有 i i i X i \mathcal{X}_i Xi X ^ \hat{\mathcal{X}} X^ 是一个不包含在 X \mathcal{X} X 中的领域外数据集合, Y ^ \hat{\mathcal{Y}} Y^ 用于表示不包含在 Y \mathcal{Y} Y 中的新任务。

一个时间序列样本表示为 x ∈ R l i × v \mathbf{x} \in \mathbb{R}^{l_i \times v} xRli×v,其中 v v v l i l_i li 分别是变量数量和样本/序列长度。我们引入几种令牌类型,即序列令牌 z s ∈ R l s × v × d \mathbf{z}_s \in \mathbb{R}^{l_s \times v \times d} zsRls×v×d,提示令牌 z p ∈ R l p × v × d \mathbf{z}_p \in \mathbb{R}^{l_p \times v \times d} zpRlp×v×d,掩码令牌 z m ∈ R 1 × v × d \mathbf{z}_m \in \mathbb{R}^{1 \times v \times d} zmR1×v×d,CLS 令牌 z c ∈ R 1 × v × d \mathbf{z}_c \in \mathbb{R}^{1 \times v \times d} zcR1×v×d,以及类别嵌入 z e ∈ R k × v × d \mathbf{z}_e \in \mathbb{R}^{k \times v \times d} zeRk×v×d,每种都具有特定的用途。发送到网络的令牌表示为 z in  ∈ R l × v × d \mathbf{z}_{\text {in }} \in \mathbb{R}^{l \times v \times d} zin Rl×v×d,其中 l l l 是序列维度中所有令牌的总和。

统一时间序列模型。 专门的时间序列模型已经为特定任务设计。由于时间序列的多样性和任务规格的潜在差异(见介绍),主导模型设计任务特定网络以处理数据/任务差异,并为每个任务训练具有精心调整的训练参数的单独模型(Liu等,2024;Wu等,2023)。

统一时间序列模型的期望。 一个统一的时间序列模型 F ( X , θ ) F(\mathcal{X}, \theta) F(X,θ) 是一个具有共享权重 θ \theta θ 的单一模型,适用于所有类型的任务,并满足以下三个期望:

  • 多领域时间序列: 虽然统一模型从所有来源收集信息,但模型 F F F 必须对任何输入样本 X \mathcal{X} X 保持不可知,考虑到来自不同来源的时间序列序列 x x x 的序列长度 l i n l_{i n} lin 和变量计数 v v v 的多样性。

  • 通用任务规范: 与使用单独的任务特定模块不同,这些模块阻碍对新任务的快速适应,统一模型 F F F 应采用适用于所有类型任务 Y \mathcal{Y} Y 的通用任务规范 F ( X , θ ) → Y F(\mathcal{X}, \theta) \rightarrow \mathcal{Y} F(X,θ)Y

  • 无任务特定模块(通用主义者): 在任务之间共享权重 θ \theta θ 使得统一模型 F F F 能够在不需要为每个任务进行任务特定微调的情况下同时处理多个任务。这与通常在任务特定数据集上训练模型、通常涉及精心调整的训练参数的现有方法形成对比。

问题陈述(UNITS)。 实现上述期望,UNITS结合了多任务、零样本、少样本和提示学习。多任务学习: UNITS利用单一模型 F ( θ ) F(\theta) F(θ) 处理多个任务 Y \mathcal{Y} Y,跨多样数据源 X \mathcal{X} X 在多样数据集合中,消除了需要进行任务特定微调的必要性。这被形式化为 F ( X , θ ) → Y F(\mathcal{X}, \theta) \rightarrow \mathcal{Y} F(X,θ)Y。多任务学习展示了模型在学习和应用跨不同领域和任务的知识方面的灵活性。零样本学习: UNITS具有零样本学习能力,其中模型 F ( X , θ ) F(\mathcal{X}, \theta) F(X,θ) D D D 中的所有数据集上训练,然后在多种未经训练的新任务上进行测试,即 F ( X , θ ) → X ^ , X ^ ∉ X F(\mathcal{X}, \theta) \rightarrow \hat{\mathcal{X}}, \hat{\mathcal{X}} \notin \mathcal{X} F(X,θ)X^,X^/X。零样本学习的新任务包括具有新长度的长期预测和在具有新变量数量的领域外数据集上进行预测。零样本学习展示了UNITS对不同时间序列任务的适应能力。少样本学习: UNITS模型 F ( X , θ ) F(\mathcal{X}, \theta) F(X,θ) X \mathcal{X} X 上预训练,可以在新数据 X ^ \hat{\mathcal{X}} X^ 上的少量样本和新任务 Y ^ \hat{\mathcal{Y}} Y^ 上进行微调,即 KaTeX parse error: Unexpected end of input in a macro argument, expected '}' at end of input: …hat{\mathcal{Y}。我们验证了UNITS在新的领域外数据集和新类型任务上,包括填补和异常检测的预测和分类任务上的少样本学习能力。提示学习:受益于使用提示作为通用任务格式,UNITS支持提示学习。这使其能够通过简单地使用适当的提示令牌处理任务,而无需进行任何微调,即,提示 { F ( X , θ ) \{F(\mathcal{X}, \theta) {F(X,θ),提示令牌 } → Y \} \rightarrow \mathcal{Y} }Y

图2:a)将UNITS与现有模型进行比较,UNITS模型可以处理多样输入并实现多个时间序列任务;先前的模型需要为不同任务和输入数据集使用单独的模块。b)用于预测的UNITS;输入被描述为文本中所述的令牌化,并且掩码令牌被解除以推断预测的时间跨度。c)用于分类的UNITS;使用CLS令牌表示类信息,然后与类别令牌进行比较以获取预测类别。d)UNITS模型的架构。

UNITS模型

我们构建了一个统一时间序列模型(Unified Time Series model,UNITS),作为一个基于提示的模型,具有统一的网络架构。受到LLMs(Touvron等人,2023年)的启发,为了构建一个统一的时间序列模型,我们使用标记来表示各种时间序列数据领域和任务。与现有方法不同,现有方法需要数据/任务特定的模块(图2a),UNITS采用基于标记的格式来描述任务,这统一了来自不同领域的不同类型任务和数据。我们引入了三种不同的标记类型:序列标记、提示标记和任务标记。输入时间序列样本被标记为序列标记。提示标记提供有关任务和数据的基本上下文,引导模型完成任务。任务标记,如掩码和CLS标记,与提示标记和序列标记连接在一起。然后,UNITS处理标记,并将模型输出中的任务标记转换为任务预测,而无需修改模型。

UNITS中的提示标记

我们介绍如何使用提示、序列和任务标记来统一不同类型的任务,并进行推断。

序列标记。 我们遵循(Nie等人,2023年)将时间序列输入样本 x ∈ X i \mathbf{x} \in \mathcal{X}_i xXi沿着 l i l_i li维度划分为大小为 p p p的非重叠补丁,得到长度为 l s l_s ls z s ^ \mathbf{z}_{\hat{s}} zs^,其中 l s = l i / p l_s=l_i / p ls=li/p。线性层将 z s ^ \mathbf{z}_{\hat{s}} zs^中的每个补丁投影到固定维度,得到序列标记 z s \mathbf{z}_s zs。然后,序列标记与可学习的位置嵌入相加。由于 v v v在不同的时间序列数据领域中变化,我们在标记中保留了变量维度。这种方法防止了从其他领域直接应用统一模型,例如基于自然语言的LLMs,这些模型仅支持固定数量的变量。为了解决这个问题,我们提出了一个灵活的网络结构,能够处理任意数量的变量/传感器 ( v ) (v) (v)

提示标记。 提示标记 z p z_p zp被定义为可学习的嵌入。在多任务设置中,每个任务都有自己的提示标记集。这些标记包含了模型需要的与数据领域和任务相关的特定上下文。对于提示学习,UNITS通过利用适当的提示标记适应新任务,而无需微调模型。鉴于时间序列的提示标记不像LLMs中的自然语言提示那样直观易懂,我们使用提示调整来获取每个任务所需的标记。

任务标记。 在图2(b, c)中,我们将任务标记分为两种主要类型:1)掩码标记,用于生成建模,如预测、插补和异常检测,以及2)CLS(分类)标记和类别嵌入,用于识别任务,如分类。任务标记定义了表示任务的通用格式,并支持灵活适应新任务。对于预测,掩码标记 z m \mathbf{z}_m zm在模型输入中重复用于任意长度的预测,UNITS输出中重复的掩码标记被转换回序列。对于分类,UNITS输出中的CLS标记 z c \mathbf{z}_c zc与类别嵌入 z e \mathbf{z}_e ze匹配。对于插补,可以使用掩码标记填充缺失部分。在异常检测中,模型返回的去噪序列标记用于识别异常数据点。所有任务的任务标记的实现细节在附录C.1中。

UNITS中的统一网络

UNITS旨在普遍适用于广泛的任务领域,消除了对特定任务参数的需求。如图2(d)所示,UNITS是一个统一模型,由N个重复堆叠在一起的块和轻量级的掩码/CLS塔组成。我们将这些块称为UNITS块,其包括以下组件:序列多头自注意力(MHSA)、变量MHSA、动态MLP和门模块。UNITS在动态MLP中,对输入 z i n \mathbf{z}_{in} zin的序列维度应用3个内核的卷积,以捕获局部细节。然后,在 d d d维度内的特征被分成两个块,设计用于处理来自多个领域的数据,适应不同数量的变量和序列点。UNITS接受如4.1节中介绍的标记,并使用UNITS块处理这些标记。随后,与任务相关的标记被传递到掩码和CLS塔,将标记转换为用于生成或识别任务的预测。我们以下介绍UNITS块的关键设计,并在附录C.2中提供门模块、掩码塔和CLS塔的详细信息。

UNITS块:序列和变量MHSA。 为了模拟不同数据领域中序列和变量之间的全局关系,该块利用序列和变量MHSA进行自注意力跨序列和变量维度。对于序列维度的注意力,标准MHSA被应用,就像(Nie等人,2023年)所做的那样。对于变量MHSA,为了在最小化与长序列相关的计算开销的同时捕获所有序列点之间的全局关系,我们对序列维度上的 Q Q Q K K K进行平均,得到共享的 Q ^ \hat{Q} Q^ K ^ \hat{K} K^,如下所示:

Q ^ , K ^ = mean ⁡ l ( Q , K ) ; Q , K , V = Linear ⁡ ( z in  ) , \hat{Q}, \hat{K}=\operatorname{mean}_l(Q, K) ; Q, K, V=\operatorname{Linear}\left(\mathbf{z}_{\text {in }}\right), Q^,K^=meanl(Q,K);Q,K,V=Linear(zin ),

其中mean l _l l是沿序列维度的平均。然后,输出 = Attn ⁡ v V = Softmax ⁡ ( Q ^ K ^ T d ) V =\operatorname{Attn}_v V=\operatorname{Softmax}\left(\frac{\hat{Q} \hat{K}^T}{\sqrt{d}}\right) V =AttnvV=Softmax(d Q^K^T)V,其中 Attn ⁡ v ∈ R v × v \operatorname{Attn}_v \in \mathbb{R}^{v \times v} AttnvRv×v是变量之间的注意力图,对于所有序列点都是共享的。为简单起见,省略了多头注意力的符号。

UNITS块:DyLinear(图2(d))。 与序列MHSA采用的基于相似性的关系建模相反,我们引入了一个动态线性操作符(Dylinear),用于模拟不同序列长度的标记之间的密集关系。该操作符特别设计用于适应不同数据源中不同长度的序列。我们的方法集中在一个权重插值方案上,以适应这些不同的序列长度。具体地,对于给定长度为 l s l_s ls的序列标记 z s \mathbf{z}_s zs,和预定义的权重 w ∈ R w i × w o \mathbf{w} \in \mathbb{R}^{w_i \times w_o} wRwi×wo,Dylinear的操作如下:

DyLinear ⁡ ( z s ; w ) = W Interp  z s ; W Interp  = Interp ⁡ ( w ) ,  \operatorname{DyLinear}\left(\mathbf{z}_s ; \mathbf{w}\right)=\mathbf{W}_{\text {Interp }} \mathbf{z}_s ; \mathbf{W}_{\text {Interp }}=\operatorname{Interp}(\mathbf{w}) \text {, } DyLinear(zs;w)=WInterp zs;WInterp =Interp(w)

其中Interp是一个双线性插值,将 w w w从形状 w i × w o w_i \times w_o wi×wo调整为匹配输入序列和预期输出长度 l s × l out  l_s \times l_{\text {out }} ls×lout 。DyLinear有效地捕获了不同序列点之间的关系模式,显著提升了生成任务中的性能,如表13所示。

UNITS块:动态MLP(图2(d))。 基于DyLinear,我们提出了一个动态MLP模块,提取序列中的局部细节和全局关系。在动态MLP中,对输入 z in  \mathbf{z}_{\text {in }} zin 的序列维度应用3个内核的卷积,以捕获局部细节。然后,在 d d d维度内的特征被分成两组,得到 ( z mid  1 , z mid  2 ) ∈ R l × v × d / 2 . z mid  1 \left(\mathbf{z}_{\text {mid }}^1, \mathbf{z}_{\text {mid }}^2\right) \in \mathbb{R}^{l \times v \times d / 2} . \mathbf{z}_{\text {mid }}^1 (zmid 1,zmid 2)Rl×v×d/2.zmid 1 z mid  2 \mathbf{z}_{\text {mid }}^2 zmid 2被处理如下:

z out  = Linear ⁡ ( Concat ⁡ ( DyLinear ⁡ M ( z mid  1 ) , z mid  2 ) ) , \mathbf{z}_{\text {out }}=\operatorname{Linear}\left(\operatorname{Concat}\left(\operatorname{DyLinear}_M\left(\mathbf{z}_{\text {mid }}^1\right), \mathbf{z}_{\text {mid }}^2\right)\right), zout =Linear(Concat(DyLinearM(zmid 1),zmid 2)),

其中DyLinear M { }_M M使用两个DyLinear操作符处理 z mid  1 \mathbf{z}_{\text {mid }}^1 zmid 1中的序列和提示标记,而CLS标记被跳过以确保所有任务的一致性。对于 z mid  1 \mathbf{z}_{\text {mid }}^1 zmid 1 z mid  2 \mathbf{z}_{\text {mid }}^2 zmid 2的路径分离导致了一个尺度组合效应,增强了多尺度处理(Gao等人,2019)。

UNITS模型训练

统一掩码重建预训练。为了增强UNITS学习适用于生成和识别任务的通用特征的能力,我们引入了一个统一的掩码重建预训练方案。这种方法不同于传统的主要关注预测掩码标记的掩码重建方案(He等人,2021)。我们的方案利用了提示和CLS标记的语义内容,用于有效的重建。统一预训练损失定义如下:

L u = ∣ H m ( z p , z s ) − x ∣ 2 + ∣ H m ( z ^ c , z s ) − x ∣ 2 . L_u=\left|H_m\left(\mathbf{z}_p, \mathbf{z}_s\right)-x\right|^2+\left|H_m\left(\hat{\mathbf{z}}_c, \mathbf{z}_s\right)-x\right|^2 . Lu=Hm(zp,zs)x2+Hm(z^c,zs)x2.

这里, x x x是未掩码的完整序列, z ^ c = H c ( z C L S ) \hat{\mathbf{z}}_c=H_c\left(\mathbf{z}_{CLS}\right) z^c=Hc(zCLS)表示经过CLS塔 H c H_c Hc处理的CLS标记特征, H m H_m Hm是掩码塔。为了利用CLS标记的语义,我们使用 z ^ c \hat{\mathbf{z}}_c z^c来帮助掩码重建。我们还添加了使用提示标记帮助重建的掩码重建损失。这种统一的预训练策略涉及对UNITS网络和掩码/CLS塔进行预训练。在第5节中,对一个固定的预训练UNITS进行提示,实现了与监督学习竞争性性能,展示了统一预训练的有效性。
多任务监督训练。 对于监督训练,我们每次从一个数据集中随机抽取一个样本批次,并累积数据集级别的损失值: L total  = L_{\text {total }}= Ltotal = ∑ i = 1 I λ i ⋅ L i ( D i ) \sum_{i=1}^I \lambda_i \cdot L_i\left(D_i\right) i=1IλiLi(Di),其中 L i L_i Li 是抽取批次的损失, λ i \lambda_i λi 是每个损失的权重, I I I 表示抽取的批次数量。我们遵循 (Wu et al., 2023) 的方法,使用均方误差(MSE)进行预测,使用交叉熵进行分类。

实验

数据集。 我们从多个来源(Middlehurst et al., 2023; Godahewa et al., 2021; Nie et al., 2023)汇编了38个数据集。这些数据集涵盖人类活动、医疗保健、机械传感器和金融领域,包括20个预测任务,预测长度从60到720不等,以及18个分类任务,涵盖2到52个类别。时间序列样本具有不同数量的读数(从24到1152)和传感器(从1到963)。详细信息请参见表7。

表1:多任务学习与现有网络在20个预测任务和18个分类任务下的比较。UNITS处理所有任务使用统一模型,没有任务特定模块,而基准模型具有共享骨干,但对于每个数据集/任务有任务特定的输入/输出模块。GPT4TS将预训练的LLM(GPT2)重新编程为时间序列领域,并需要数据集/任务特定的模块。 “P”表示预测长度。粗体表示该数据集的最佳模型,而下划线表示次佳。

基线。 我们将UNITS与7种时间序列方法进行比较;iTransformer(Liu et al., 2024)、TimesNet(Nie et al., 2023)、PatchTST(Nie et al., 2023)、Pyraformer(Liu et al., 2021)和Autoformer(Wu et al., 2021)。此外,我们还将UNITS与已经重新编程为时间序列的基于自然语言的LLM方法进行比较;GPT4TS(Zhou et al., 2023)和LLMTime(Nate Gruver & Wilson, 2023)。许多这些方法仅设计用于一种类型的任务,例如GPT4TS和LLMTime是预测模型。当需要支持多个任务时,我们为这些方法添加任务特定的输入/输出模块,并将它们纳入基准测试。那些过于依赖任务特定模块且缺乏共享骨干的模型被排除在分析之外(Zeng et al., 2023)。

训练和评估。 详细信息请参见附录 D.1。

对多任务学习的UNITS进行基准测试

设置。 UNITS模型使用完全共享的架构支持各种任务。这与现有方法形成对比,现有方法需要任务特定的模型来处理数据类型和任务规范之间的差异,例如变量/传感器数量、分类类别和预测长度。为了对比它们,现有方法使用共享的骨干处理所有任务,并通过特定于数据的输入模块和特定于任务的输出模块进行增强。我们考虑UNITS的两个变体;一个是完全监督的变体,使用与基线相同的训练方案,另一个是提示学习模型,其中一个自监督预训练的UNITS被固定,只生成所有任务的提示。所有模型都与包括20个预测任务和18个分类任务在内的38个数据集共同训练。

表2:在5个领域外数据上进行零样本学习的预测任务。我们为UNITS设置了共享的提示标记和掩码标记。按照 (Nate Gruver & Wilson, 2023) 的方法,每个数据集使用一个样本。

结果:UNITS的基准测试。 表1显示了多任务学习的性能。尽管基线方法中的专门模块简化了多任务学习的挑战(例如不同任务之间的干扰(Zhu et al., 2022)),但UNITS在没有任何专门模块的情况下始终优于基线方法。UNITS在20个预测任务(MSE)中有17个取得最佳结果,在18个分类任务(准确性)中有10个取得最佳结果。性能提升尤为显著,因为UNITS没有任务或数据集特定的模块,而所有现有方法都需要任务或数据集特定的模块。我们发现基线方法在不同类型任务中表现良好存在困难。例如,在分类任务中表现出色的TimesNet在预测任务中表现不佳。相反,在预测任务中表现最佳的iTransformer在分类任务中遇到困难。相比之下,UNITS模型在分类和预测任务中表现稳健。在预测任务中,UNITS在均方误差(MSE)上超过领先的基线iTransformer 5.8%(0.439 vs. 0.466),在平均绝对误差(MAE)上超过 3.3%(0.381 vs. 0.394)。在分类任务中,UNITS的平均准确率比最强基线(TimesNet)高出 0.7%(81.6% vs. 80.9%)。UNITS展现出统一处理时间序列领域数据和任务多样性的潜力。

最近的研究已经将预训练的自然语言处理模型适应到时间序列领域(Jin et al., 2023; Chang et al., 2023; Zhou et al., 2023; Gruver et al., 2023)。大多数方法(Jin et al., 2023; Chang et al., 2023; Zhou et al., 2023),如GPT4TS,都会加入额外的任务特定模块,以使时间序列和自然语言的模态对齐。我们将UNITS与重新编程为时间序列的GPT4TS(Zhou et al., 2023)进行比较,该模型重新编程了GPT-2模型的预训练权重(Radford et al., 2019)。尽管存在大量数据和模型规模差距,例如,GPT4TS比UNITS大48倍(164.5M vs. 3.4M模型参数),UNITS仍然与GPT4TS相媲美。在预测任务中,UNITS甚至比GPT4TS表现更好 2.2%(0.439 vs. 0.449;MSE)。

结果:提示学习与监督训练竞争力相当。 仅使用标记提示固定的UNITS,自监督预训练的UNITS的性能与监督训练的UNITS相当(表1)。值得注意的是,UNITS-Prompt在预测任务上超过了监督学习,MAE得分更低(0.379 vs. 0.381),表明提示学习在UNITS中是有效的。此外,UNITS的提示学习已经超过了具有单独模块的监督基线方法的性能。这表明自监督预训练模型包含了时间序列任务的有价值特征,提示学习可以是这些任务的有效方法。在表16中,我们进一步探讨了SSL预训练UNITS模型在不同模型大小下的提示学习能力。随着UNITS模型大小的增长,我们观察到分类和预测性能持续改善,这表明更大的SSL模型包含更加稳健的提示学习表示。相比之下,简单地扩大监督训练模型并没有带来这种持续的性能改善。

图3:对新的预测长度进行零样本预测。UNITS通过统一的一步推理实现任何新的预测长度。基线方法使用滑动窗口推理,因为它们不支持一步推理。

表3:在领域外数据集上进行9个预测和6个分类任务的少样本学习。

UNITS用于零样本新长度预测

设置。 通过在不同预测窗口长度上训练多个预测器,已经实现了跨不同长度的预测。这种方法使得现有方法无法用于新的未经训练的预测长度。在统一框架下,UNITS可以通过简单重复掩码标记来执行新长度的预测。由于现有方法不支持这一点,为了与基线方法进行比较,我们开发了一个滑动窗口预测方案。该方法使模型能够预测一个固定的窗口大小,然后滑动以适应新的长度。我们排除了没有提供广泛长度范围的数据集,保留了14个预测数据集。模型的任务是通过从训练长度调整来预测新长度,偏移范围从0到384。

结果:UNITS的一步推理优于多步推理。 如图3所示,与使用滑动窗口方法相比,UNITS在各种预测长度上的性能明显优于基线方法。例如,在最长的+384预测扩展情况下,UNITS在均方误差(MSE)上超过iTransformer 8.7%,得分为0.451对0.494。此外,当应用UNITS上不支持的统一一步推理方法时,UNITS比iTransformer取得了更大的优势,将MSE提高了10.5%(0.442 vs. 0.494)。这种方法将平均推理步骤数量从3.66减少到1,推理步骤加速约3倍。这表明UNITS的提示框架在促进新的预测长度的零样本学习方面是有效的。

表4:在块状插补任务上的少样本学习。模型在使用10%数据的多任务设置下进行训练。报告了6个任务的平均性能。

表5:在异常检测任务上的少样本学习。报告了跨5个数据集的多任务平均性能。模型在这些留出数据集的5%时间序列样本上进行微调。

UNITS用于新数据集的零样本预测

实验设置. 我们在五个新的预测任务上以零样本设置评估了 UNITS,如表9所示。这些任务与 UNITS 在预训练过程中见过的具有不同预测长度和变量数量。我们以 LLMTime(Nate Gruver & Wilson, 2023)作为基准,该模型专为使用LLM进行零样本预测而设计。按照LLMTime的做法,我们利用每个数据集中的一个样本来管理庞大的推理成本。我们在实验中排除了一个相关方法,Time-LLM(Jin等,2023)。Time-LLM支持零样本学习,但要求预测长度和用于零样本预测的变量/传感器数量与训练时使用的相同。

结果. UNITS在大多数测试数据集上明显优于LLMTime,在处理不同的预测长度和变量数量方面表现出色(表2)。例如,在River数据集上,UNITS的均方误差比LLMTime提高了45.2%(0.456比0.832)。值得注意的是,UNITS的推理速度大约比LLMTime快106倍。

UNITS 用于少样本分类和预测

实验设置. 在评估分类和预测任务中的少样本学习时,我们使用了一个包含6个分类任务和9个预测任务的新数据集。如表8所示,预训练模型经过5%、15%和20%的训练集微调。报告包括了提示学习和完全微调的平均性能指标。

结果. UNITS在所有训练数据比例下均优于iTransformer(表3)。在20%数据比例下,UNITS的分类准确率提高了8.8%,预测均方误差降低了5.7%。此外,UNITS的提示学习超过了完全监督的iTransformer,在分类准确率上提高了6.2%,预测均方误差降低了3.1%。当在有限的5%数据比例下训练时,提示的UNITS超过了其完全微调的预测性能,表明在训练数据稀缺时,提示学习对于迁移学习是有效的。

UNITS 用于少样本插补

实验设置. 我们评估了UNITS在块状插补任务中的少样本学习性能,使用了Wu等人(2023)的6个数据集。在38个数据集上预训练的模型使用新训练数据的10%进行微调,要求插补25%和50%的缺失数据点。

结果. 如表4所示,通过完全微调,具有完全共享模型结构和权重的UNITS显著优于采用单独任务特定模块的基线模型。这表明UNITS在插补任务中具有强大的少样本学习能力。具体来说,在25%的屏蔽比率下,UNITS在均方误差上比排名第一的基线iTransformer提高了12.4%,在平均绝对误差上提高了7.9%。在50%的屏蔽比率下,UNITS在均方误差上超过iTransformer 8.8%,在平均绝对误差上超过6.8%。值得注意的是,使用自监督预训练的UNITS模型进行提示学习,具有适当提示标记的固定模型不仅优于所有基线方法,而且实现了与其完全微调对应的可比结果。这表明仅选择合适的提示标记就能有效地使UNITS适应插补任务。

UNITS 用于少样本异常检测

实验设置. 我们在五个数据集上评估了少样本异常检测的性能,这些数据集与Wu等人(2023)使用的相同。评估报告了在多任务设置下所有数据集的平均分数。预训练模型使用了5%的训练数据进行微调。

结果. UNITS在所有指标上均优于排名第一的基线(PathTST)(表5)。UNITS的F1分数为86.3,而PathTST为84.3。在检测异常点方面也有明显改进;UNITS的召回率从79.8提高到82.8。

其他结果和消融实验

其他结果和详细的消融实验见附录E。

结论

我们开发了UNITS,这是一个用于时间序列分析的统一模型,支持各种任务的通用任务规范。它能够处理具有异构表示的多领域数据。UNITS在38个多领域和多任务数据集上优于特定任务模型和重新编程的基于语言的LLM。此外,它在新领域和任务中展现了零样本、少样本和基于提示的学习性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数智笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值