时序必读论文04|Non-stationary Transformers:序列平稳性优化【NeurIPS 2022】

图片

我们在先前的一篇文章中已经总结了直接把Transformer应用到时间序列数据存在的问题,其中序列平稳化是transformer也是其他很多模型都未解决好的一个不足。实际上,序列平稳和非平稳是矛盾的存在,这篇文章探索了:原始数据-->平稳化-->建模-->去平稳化-->输出结果的方式。期望通过改进Attention计算,在两者之间达到平衡。

什么是序列平稳/非平稳性?

首先,让我们简要说明一下什么是平稳和非平稳序列,这是两种不同的数据模式。

平稳序列(Stationary Series)

  • 常态不变性(Stationarity):其统计特性如均值、方差和自相关性等统计特性在不同时间段内保持不变。具体来说,平稳序列在时间上不会显示出趋势、季节性或周期性等变化。这种序列的特点是其统计性质不随时间变化而改变。

  • 平稳性质的重要性:平稳序列的分析更加可靠,因为它的统计性质不随时间变化而改变,使得模型的预测和分析更加准确和可靠。

非平稳序列(Non-stationary Series)

  • 统计特性随时间变化:非平稳序列是指其统计特性在时间上发生变化。这种序列可能具有趋势(随着时间变化的整体增长或减少)、季节性(周期性变化)或者其他随机的不规则变化。

  • 处理的挑战:非平稳序列的分析更加复杂,因为它们的统计特性随时间变化而改变,需要在建模和分析中采取相应的措施来处理趋势、季节性或其他非平稳性,以确保模型的准确性。

带来的问题

如前所述,非平稳数据难以预测,而平稳序列序列统计性质稳定,许多时间序列模型都首先对数据进行normalization等转换,以使其变得平稳,然后再建模进行分析和预测。

图片

但是,经过平稳化处理后,序列会丧失很多固有的特征,如子图b中,虽然左侧attention权重更明显,但右侧很多特征直接就被丢掉,对于真实世界中的突发事件预测可能不够有指导性。这个问题在这篇论文中被称为"过度平稳化"。

Non-stationary Transformers的改进做法

为了兼顾序列可预测性(平稳)和模型能力(非平稳),作者提出Non-stationary Transformer框架,包含两个核心模块:(a)序列平稳化(b)去平稳化模块。是的没错,先进行Normalization平稳化,然后去平稳化恢复统计特性,使其转换为更具有可预测性的特征表示。

图片

序列平稳化

序列平稳化过程没有需要特别讲解的,就是图中的Normalization,假设原序列为  ,则按照如下公式处理后的平稳化序列计作  , 同时  为均值,  为方差。

图片

序列去平稳化(重点)

序列去平稳化则有两部分,第一是:对上述平稳化统计指标  均值,  方差的回加。

  • 配合以下公式和模型图看,我们发现是利用原始数据的统计信息(  和   )对模型输出进行De-normalization。

  • 首先,我们看图中最右侧部分,记encoder和decoder所有的处理过程为   ,那么把平稳化后的序列计作  ,  经过   运算的输出是  。

  • 然后,将模型输出  加上  (平均值),然后乘以   (标准差)得到最终的预测结果 ŷ。

  • 通过以上步骤,能够部分的将经过平稳化处理的模型输出,还原为原始数据的预测结果。

    图片

但是,仅通过以上步骤显然并不能完全恢复原始序列的非平稳性。举例来说,不同的时间序列是可以生成相同的平稳化输入  。然后,模型会得到相同的注意力权重,这样就无法捕捉与非平稳性纠缠在一起的重要时间依赖关系。换句话说,由过度平稳化引起的削弱效应发生在深度模型内部,特别是在注意力计算中。

这就到了本篇文章最核心的部分,去平稳注意力机制(De-stationary Attention),我手工推导了整个过程。而要理解这个过程,你首先得知道transformer的注意力机制是如何计算的,如下公式所示。

图片

  • 还记得transformer中的Q,K,V是怎么来的吗?在Transformer模型中,Q(Query)、K(Key)、V(Value)是通过对输入  进行线性变换获得的,以Q为例,是输入向量  乘以一个权重  得到的,这个过程可记作  。

  • 此时,我们把序列  的平稳化过程的公式1,代入注意力查询向量Q的计算过程公式2,并进行整理,就能得到红框中的结果,  就表示平稳化后的查询向量。本质上,是通过公式1,建立了平稳化前和平稳化后的联系。同理,我们也能得到K的前后关联。

图片

  • 有了  和  的表示,两者相乘就到了公式3,注意公式三是同时具有平稳化前后的Q 和K的,于是经过简单的移项,我们就可以把来自公式3的  代入公式4。

    图片

  • 公式4的分子后两项中,最后都乘了1向量的转置(1^T),也就是元素全为1的行向量,而前面的东西是个列向量,乘以这个1^T就相当于列向量复制,所以加上后两项,就等价于对矩阵的每行元素加上相同的值。因此,公式4简化为下面公式:

图片

  • 到这一步,我们期望利用平稳化后的  来恢复平稳化前的  和  ,观察上面的公式,  和   两项是重点。于是,文章又用多层感知机,从未经过平稳化的  的统计数据  和  中分别学习去平稳因子  和  。

    图片

    至此,就全部推理结束了,这篇文章我看了几遍,以上是我的笔记,有错误请大家指正。


欢迎大家关注我的公众号【科学最top】,回复‘论文2024’可获取,2024年ICLR、ICML、KDD、WWW、IJCAI五个顶会的时间序列论文整理列表和原文。

非静态变压器是指通过探索时间序列预测中的静态性。在时间序列分析和预测中,静态性是指时间序列的平均值、方差和自协方差在时间上都保持不变。然而,许多实际应用中的时间序列数据往往是非静态的,其平均值、方差和自协方差在时间上变化。 非静态变压器是为了解决这个问题而提出的一种方法。通过探索时间序列的非静态性,可以更好地捕捉时间序列数据中的动态特征和趋势。非静态变压器采用了一种自适应的方式来处理时间序列数据,使得模型能够随着时间的推移自动调整参数和权重。 非静态变压器的核心原理是通过引入可学习的非静态参数,将时间序列的静态性和非静态性相结合。这样,模型可以根据数据的变化自动调整参数和权重,以适应时间序列的动态特征。通过这种方法,非静态变压器能够更准确地预测非静态时间序列数据的未来趋势和变化。 非静态变压器在时间序列预测领域具有广泛的应用。它可以应用于金融市场预测、经济指标预测、天气预测等各个领域。与传统的静态模型相比,非静态变压器具有更好的适应性和预测能力,能够更准确地捕捉时间序列数据中的动态特征和趋势,提高预测的准确性和精度。 总之,非静态变压器是一种通过探索时间序列的非静态性来提高预测精度的方法。它通过引入可学习的非静态参数,使得模型能够根据数据的变化自动调整参数和权重,更准确地预测非静态时间序列数据的未来趋势和变化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值