论文笔记: Modeling Extreme Events in Time Series Prediction
Posted UQI-LIUWJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文笔记: Modeling Extreme Events in Time Series Prediction相关的知识,希望对你有一定的参考价值。
2019 KDD
0 摘要
时间序列预测是数据挖掘中一个深入研究的课题。尽管取得了相当大的改进,但最近基于深度学习的方法忽略了极端事件的存在,这导致将它们应用于实时序列时性能较弱。
极端事件是罕见且随机的,但在许多实际应用中确实发挥了关键作用,例如预测金融危机和自然灾害。
在本文中,我们探讨了提高深度学习建模极端事件以进行时间序列预测的能力。
我们首先发现深度学习方法的弱点源于传统形式的二次损失函数。为了解决这个问题,我们从极值理论中汲取灵感,开发了一种新的损失函数,称为极值损失(EVL),用于检测未来发生的极端事件。
此外,我们建议使用记忆网络来记忆历史记录中的极端事件。通过将 EVL 与经过调整的记忆网络模块相结合,我们实现了一个端到端的框架,用于极端事件的时间序列预测。
通过对合成数据和两个真实的股票和气候数据集的广泛实验,我们验证了我们框架的有效性。此外,我们还通过进行几个额外的实验,为我们提出的框架中的超参数提供了适当的选择。
1 introduction
从历史上看,传统方法,如自回归移动平均 (ARMA) [46] 和非线性自回归外生 (NARX) [31] 使用具有少量参数的统计模型来发掘时间序列数据中的模式。
最近,随着深度神经网络 (DNN) 在图像分类 [28] 和机器翻译 [4] 等许多领域的成功,许多基于 DNN 的技术随后被开发用于时间序列预测任务,取得了显着的进步,优于传统方法 [11, 49]。
作为这些模型的基本组成部分,循环神经网络RNN 结构的主要优点之一是它能够对时间模式进行深度非线性建模。
在最近的文献中,RNN的一些变体表现出更好的经验性能,例如著名的长短期记忆 (LSTM) [22, 36, 50] 和门控循环单元 (GRU) [10],而后者在更小和更简单的数据集上更有效[10]。
然而,观察到大多数先前研究的 DNN 在处理数据不平衡方面存在问题 [15、42、44]。
让我们考虑一个二进制分类任务,其训练集包括 99% 的正样本和只有 1% 的负样本。
这种数据不平衡可能会将任何分类器带入以下两种意外情况中的任何一种:
- 该模型几乎不学习任何模式,只是选择将所有样本识别为正样本。(欠拟合)
- 该模型完美地记住了训练集,而它对测试集的泛化能力很差。 (过拟合)
在时间序列预测中,时间序列中的不平衡数据(或极端事件)也对深度学习模型有不好的影响。
直观地说,时间序列中的极端事件通常具有极小或极大的值、不规则和罕见的事件 [24]。
作为其对深度学习模型有害性的实证证明,我们训练一个标准 GRU 来预测一维时间序列,其中某些阈值用于将一小部分数据集标记为极端事件(图 1 中的水平虚线)。
正如上图清楚地表明的那样,学习模型确实会遇到前面讨论的两种情况:
- 在图 1(a) 中,它的大部分预测都受到阈值的限制,因此它无法识别未来的极端事件,我们将其称为欠拟合现象。
- 在图 1(b) 中,尽管模型正确地学习了训练集中的极端事件,但它在测试集上的表现很差,我们将此称为过拟合现象。
以前,人们总是倾向于容忍欠拟合现象,因为模型在测试集上仍然具有平均可容忍的性能。
然而,如果时间序列预测模型能够以合理的预测识别未来的极端事件,那将是非常有价值的。通过在许多现实世界案例中对极端事件进行更准确的建模,预测模型有望通过对未来事件(如极端风 [35] 或金融危机 [41])发出警报来帮助做出有影响力的决策。
基于上述动机,在本文中,我们专注于提高 DNN 在预测具有异常的时间序列方面的性能。
首先,除了上面的经验验证之外,我们还对 DNN 在预测具有极端事件的时间序列时,容易陷入欠拟合或过拟合的现象进行了分析。通过极值理论 (EVT) 的视角,我们观察到主要原因在于先前选择的损失函数,它天生缺乏对极端事件进行精细建模的能力。因此,我们提出了一种称为极值损失 (EVL) 的新型损失函数,以改进对极端事件的预测。
此外,我们在记忆网络[45]的帮助下,提供了一种神经架构来记忆历史数据的极端事件。与我们提出的 EVL 一起,构建了我们的端到端框架,以便更好地预测具有极端事件的时间序列数据
1.1 主要贡献有
- 提供了关于为什么深度神经网络在预测具有极端事件的时间序列数据时会出现欠拟合或过拟合现象的分析。
- 我们提出了一种基于极值理论的、称为极值损失(EVL)的新型损失函数,它可以更好地预测极端事件的未来发生。
- 我们提出了一种全新的基于记忆网络的神经架构来记忆历史上的极端事件,从而更好地预测未来的极端值。
- 实验结果验证了我们的框架与最先进的技术相比在预测准确性方面的优越性。
2 preliminary
2.1 时间序列预测
假设有 N 个固定长度 T 的序列。 对于第 i 个序列,时间序列数据可以描述为,
这里和分别是t时刻的输入和输出
对于一维时间序列预测,我们有,∈R,且=
出于方便起见,我们记
时间序列预测的目标是,给定观察值 和未来输入 ,如何预测未来的输出。
假设在给定输入 xt 的情况下,模型在时间 t 预测 ot ,优化目标可以写成:
2.2 极端事件
尽管像 GRU 这样的 DNN 在预测时间序列数据方面取得了显着的进步,但正如我们在introductio部分所展示的那样,如果使用不平衡的时间序列进行训练,该模型往往会陷入过拟合或欠拟合。 我们将这种现象称为极端事件问题。 为了正式理解这一现象,引入一个辅助指标序列 会很方便:
其中大常数 ϵ1, ϵ2 > 0 称为阈值。 对于时刻t,如果 vt = 0,我们将输出 yt 定义为正常事件。 如果 vt > 0,我们将输出 yt 定义为右极端事件。 如果 vt < 0,我们将输出 yt 定义为左极端事件。
2.2.1 长(重)尾分布 Heavy-tailed Distributions
以前的工作注意到现实世界数据的经验分布似乎总是长尾的 [37]。
直观地说,如果说随机变量 Y符合长尾分布,那么它通常具有不可忽略的大值(大于阈值)的概率 [37]。
事实上,包括高斯、泊松在内的大多数广泛应用的分布都不是长尾分布,而是轻尾分布。 只有少数参数分布是长重尾分布,例如 帕累托分布和对数柯西分布。
因此,使用轻尾参数分布进行建模会在数据的尾部带来不可避免的损失。(因为实际数据大体上是长尾分布)
这样的陈述可以用图2(a)说明性地呈现,其中我们选择了一个轻尾截断正态分布-尾分布很好地拟合了中心周围的数据,但尾部的不准确性是不能容忍的。
2.2.2 极值理论 Extreme Value Theory
从历史上看,极值理论 (EVT) 在研究这些重尾数据方面更进一步。 EVT 研究观察样本中最大值的分布 [43]。
正式地说,假设有 T 个随机变量 y1, 。 . . ,yT 是从分布 Fy中独立同分布地采样的,那么最大值的分布是,
为了得到Pmax(y1,····,yT)≤y的非零形式,以前的研究是通过对最大值进行线性变换来进行的。
作为 EVT 的一个基本结果,以下定理表明,Y 在线性变换后的分布始终限于少数情况。
定理2.1:如果 Y 上存在一个线性变换,使得方程 4 中的分布不退化为 0。那么变换后的非退化分布 G(y) 的类必须是以下分布:
通常将 G(y) 形式称为广义极值分布,以 γ ≠ 0 作为极值指标。 这样的陈述有时也被认为是最大数定律[27]。 事实上,上面的定理对超过某个固定阈值的观察有一个自然的扩展,如下所示,这将在下一部分中有用。
2.2.3 建模尾部分布
以前的工作扩展了上述定理以模拟真实世界数据的尾部分布
这里是一个很大的阈值
3 极端事件带来的问题
3.1 优化有的经验分布
我们进一步研究了极端事件对时间序列预测的影响。
为了简单起见,我们只关注一个序列,即 。
从概率的角度来看,方程2中损失函数的最小化本质上等价于似然P(yt |xt)的最大化。
根据 Bregman 的理论 [5, 40],最小化这种平方损失总是具有方差 τ 的高斯形式,即,其中 θ 是 预测模型的参数,O是模型的输出。
于是方程2可以被等价替换为
根据贝叶斯理论,我们有:
通过假设模型具有足够的参数 θ [23, 29] 的学习能力,将产生 P(Y |X) 的最佳近似值。
值得注意的是,我们对参数θ学习能力的假设是先前研究中广泛采用的假设 [3, 21],并且可以在实践中使用深度神经网络结构来实现。
参数θ优化后,Y的经验分布需要满足以下形式:
是未知的标准差
考虑到它与具有高斯核的核密度估计器 (KDE) 的相似性 , 我们可以得出一个中间结论:如果序列中数据的真实分布是重尾的,那么这种模型的性能会相对较差 (因为正态分布是轻尾的)
3.2 为什么DNN会遇到问题?
如上所述,具有最优参数的学习模型的输出分布可以被视为具有高斯核的 KDE(方程 9)。
由于非参数核密度估计器仅适用于足够的样本【非参数化是因为方程9中分布是由观测值yt决定给的】,因此预计性能会在数据的尾部降低(尾部采样的数据点将相当有限 [7])。
极值的范围通常很大,很少有样本,因而很难覆盖整个范围。
如图 2(b) 所示,我们从真实分布中采样 yt ,并用高斯核拟合 KDE。
如图所示,由于只有两个 yt > 1.5 的样本,拟合的 KDE 峰的形状在这些点周围不一致(会隆起)。
此外,由于绝大多数样本以 0 为中心,因此 KDE 估计的原点周围的概率密度往往远高于真实分布。
我们假设x1,x2是两个测试数据,相应的输出应该是o1=0.5,o2=1.5
假设我们已经充分地学习了P(X)和P(X|Y),那么我们有
用相似的办法,我们有
因此,在这种情况下,来自DNN的预测值总是有界的,这使模型无法预测极端事件,即导致欠拟合现象
另一方面,正如我们在相关工作中所讨论的那样,有几种方法建议在训练期间通过增加相应训练损失的权重来强调极端点。
在我们的公式中,这些方法相当于在拟合 KDE 时在数据集中多次重复极值点。 其结果如图 2(b)中的虚线所示。
于是从 结果上,我们有
以及
直观地说,上面的不等式表明,随着极端事件的估计概率相加,对正常事件的估计也会同时变得不准确。 因此,测试集中的正常数据很容易被误分类为极端事件,从而标志着过拟合现象。
正如我们所看到的,DNN 中的极端事件问题主要是由于观测值 yt 的尾部没有足够的先验。
- 通过最大化似然性可能导致 yt 的非参数估计,这很容易导致欠拟合问题。
- 另一方面,如果我们增加这些大值的权重,DNN 很容易出现过拟合问题。
为了缓解 DNN 中的这些问题,我们将提供一个“优雅”的解决方案,旨在为 DNN 在预测时间序列数据时对极端事件施加先验。
4 预测有极端事件的时间序列
为了将先验信息强加于 DNN 观察的尾部,我们关注两个因素:记忆极端事件和建模尾部分布。
对于第一个因素,我们建议使用记忆网络来记忆历史上极端事件的特征,对于后一个因素,我们建议对观察结果施加近似的尾分布,并提供一种称为极值损失(EVL)的新分类。 最后,我们将这两个因素结合起来,介绍了预测具有极值的时间序列数据的完整解决方案。
4.1 记忆网络模块
正如 Ghil 等人所指出的,时间序列数据中的极端事件通常表现出某种形式的时间规律性 [19]。
受此启发,我们建议使用记忆网络来记忆这些极端事件,这被证明在识别历史信息中包含的固有模式方面是有效的[45]。
首先,在我们的上下文中定义窗口的概念。
4.1.1 历史窗口
对于每个时间步 t,我们首先 随机采样一系列窗口W = w1,····,wM ,其中 M 是记忆网络的大小。
每个窗口 wj 正式定义为 wj = [xtj , xtj+1,····, xtj+Δ],其中 Δ 为满足 0 < tj < t -Δ 的窗口大小。(换句话说tj+Δ也是比t要小的)
然后我们应用 GRU 模块将每个窗口嵌入到特征空间中。
具体来说,我们使用 wj 作为输入,并将GRU最后一个隐藏状态作为这个窗口的潜在表示,表示为。
同时,我们应用一个记忆网络模块来记忆每个窗口 wj 在 tj +Δ+1 中是否存在极端事件。 在实现中,我们通过 。
有关我们基于内存网络的模块的概述,请参见图 3(a)。 总之,在每个时间步 t,我们提出的架构的内存由以下两部分组成:
- 嵌入模块(sj是历史窗口j的潜在表示)
- 历史模块(qj是一个标签,表示窗口j之后的时刻,是否有极端事件)
4.1.2 注意力机制
在这一部分中,我们进一步将上面演示的模块合并到我们的不平衡时间序列预测框架中。 在每个时间步 t,我们使用 GRU 来产生输出值:
这里生成ht所使用的GRU和之前sj的生成所使用的GRU是一个GRU
正如我们之前所讨论的, 的预测可能缺乏识别未来极端事件的能力。
因此,我们还要求我们的模型回溯其记忆,以检查目标事件与历史上的极端事件之间是否存在相似性。
为了实现这一点,我们建议利用注意力机制 [4] 来达到我们的目的
(当前时间序列和M个窗口时间序列之间的相似权重【权重之和为1】)
最后,可以通过对 qj (后一时刻是否有异常值)施加注意力权重来衡量之后是否会发生极端事件的预测。
我们的模型在时间步 t 的输出计算为
定义中 ut ∈ [−1, 1] 是对时间步 t 后是否会发生极端事件的预测,b ∈ R+ 是尺度参数。
直观地说,我们模型的主要优势在于,它可以在产生正常值和极端值的预测之间灵活切换。
当当前时间步长与历史上的某些极端事件存在相似性时,ut 将通过设置 ut 非零来帮助检测这样的极端点;而当观察到当前事件与历史几乎没有任何关系时,则 输出将选择主要取决于 ,即标准 GRU 门预测的值。
损失函数可以写成公式 2 中定义的平方损失,以最小化输出 ot 和观测值 yt 之间的距离。
4.2 极端值损失
虽然记忆网络可以预测一些极端事件,但这种损失函数仍然存在极端事件带来的问题。 因此,我们继续对(14)式第二个因子进行建模。
正如我们在第 3 节中讨论的那样,用平方损失作为优化目标,会导致 yt 的非参数近似。 如果没有强加的先验 P(Y),经验估计 的P^(Y) 很容易导致过拟合/欠拟合两种现象。
因此,为了影响 P(Y) 的分布,我们建议对损失函数施加有尾数据的先验。
我们这里关注极端事件指标 ut 。 为简单起见,我们首先考虑右极端事件。(vt为0或1的情况)
为了将尾分布与 P(Y) 结合起来,我们首先考虑 Eq.6 中定义的近似值,它可以近似观察值的尾分布。 在我们的问题中,对于观测值 yt,近似值可以写为
正函数 f 是尺度函数
此外,如果我们考虑一个二进制分类任务来检测正确的极端事件。 在我们的模型中,预测指标是 ut ,它可以被视为的近似。 我们将近似值视为权重,并将它们添加到二进制交叉熵中的每个项上,
这里我觉得论文写错了?第一个式子应该是两个正号,这样后一项才是全负号
其中涉及的几个前面提到的式子:
在(16)式中, (正常事件的比例),同理P(vt=1)是右异常的比例
γ是超参数,是近似值的极值指标。我们将提出的分类损失函数称为极值损失(EVL)。
类似地,我们有二分类损失函数,用于检测未来是否会有左极端事件。结合两个损失函数,我们可以将EVL扩展到vt =−1,0,1的情形。
正如我们在第3节中所讨论的,如果在非参数估计器上没有适当地设置权值,DNN将会遇到过拟合问题。
EVL的关键是利用极值理论,通过在观测值的尾部分布上加上近似来找到合适的权值。
直观地说,当模型将事件识别为正常事件时,β0项会增加对右极端事件的惩罚。同时,也增加了模型识别可信度较低的极端事件时的惩罚。
(个人理解:因为我们是损失函数加上EVL(ut),也就是减去,那么如果t点应该是正常点,那么β0是很大的,如果ut也是0的话,那么相当于减去了β0;但是如果ut是1的话,相当于减去了一个(0,1)的数的γ次方,再乘以β,那么此时的损失函数会比ut的时候要大;所以这一项的作用是乘法右极端事件)
4.3 优化
在这一部分中,我们将为我们的框架提供优化。
首先,为了将EVL与所提出的记忆网络结合起来,一个直接的思路是将预测的输出与极端事件发生的预测结合起来,
此外,为了提高GRU单元的性能,我们建议为每个窗口j增加惩罚项,其目的是预测每个窗口j的极端指标qj:
其中pj∈[−1,1]通过全连接层sj计算,sj是窗口j经过GRU后的嵌入表示。
最后,我们将需要学习的全部参数列示如下。
- GRU中的参数:
- L2提及的计算pj的参数 全连接层
- GRU输出门的参数:
- Q 模块的参数:
- attention 中的参数
4.4 整体算法
5 实验部分
5.1 实验配置
对三种不同的数据集进行了实验:
我们收集了纳斯达克市场564家公司的股票价格,每周一个样本。我们收集的数据时间跨度为2003年9月30日至2017年12月29日。
气候数据集由Keeling、Whorf和Lucas等人分别建立的“绿色气体观测网络数据集”和“大气Co2数据集”组成[25,34]。温室数据集包含了2010年5月10日至7月31日期间,覆盖12 × 12公里面积的2921个网格单元的温室气体浓度,这些网格单元间隔6小时(每天4个样本)。二氧化碳数据集包含了1958年3月至2001年12月期间从夏威夷的莫纳洛山每周收集到的大气二氧化碳浓度。
原始数据集包含100万个数据点,分为10个部分。取值范围为[−0.5,0.5]。
对于前两个数据集,我们将时间长度设置为500用于训练,200用于测试,而对于最后一个数据集,我们将时间长度设置为300用于训练,100用于测试,每一节随机抽取150个时间序列,数据点为400个。
5.2 实验结果
我们首先验证我们的时间序列数据预测的完整框架。我们选择方根均方误差(RMSE)作为度量,其中较小的RMSE意味着更好的性能。
我们将我们的模型与几个最先进的baseling模型进行了比较:GRU、LSTM和Time-LSTM[50],其中Time-LSTM考虑了xt之间的差异。
通过交叉熵(cross entropy, CE)代替EVL,我们还将我们的模型与没有EVL的记忆网络进行了比较。结果见表3。
令人惊讶的是,GRU的表现优于其他基线,尽管它在真实世界的数据中具有最简单的结构。我们推断其原因是真实世界的数据中存在大量的噪声,如前所述,这很容易导致一维数据的过拟合问题。
此外,我们可以看到,我们的模型的RMSE一致低于GRU。值得注意的是,在合成数据集上,我们成功地在RMSE上提高了近50%
我们也将每个模块的输出可视化。
从结果中我们可以看到,我们模型的经验成功主要归因于两个部分:预测值和极端事件标签ut。
来自的输出正确地逼近了数据的趋势,但通常,它预测的值通常较小。作为补充,ut通过放大预测值来拯救当前步骤中极端事件的发生概率。
举例来说,值得注意的是图4中时间步骤600左右的可视化。尽管预测趋势为上升,但是,它只给出一个小的正值。作为补充,内存模块检测到在这个时间步骤会有一个右极端事件,因此它产生一个接近1的输出,并对进行放大,形成最终的输出,而GRU几乎不能做如此复杂的决定。
5.3 EVL的有效性
从表3可以看出,EVL在预测过程中起到了重要的作用。我们进一步验证了EVL在预测未来极端事件发生方面的有效性。
我们使用F1分数来衡量预测的有效性。具体来说,我们采用了宏观、微观和加权F1评分进行综合评价。结果如表2所示。
我们将我们提出的EVL与GRU分类器和LSTM分类器进行了比较。研究了不同超参数γ对EVL的影响。
首先,我们可以从图2中看到,我们提出的损失函数在每个数据集上都优于所有基线。特别是在气候数据集上,EVL在微F1得分上的表现比最佳基线高出47%。
有趣的是,我们观察到γ在很大程度上影响了最终的分类结果。例如,当γ = 4.0时,EVL在合成数据集上的性能比基线差。正如我们之前讨论过的,γ直观地描述了数据的尾部分布的特征,因此,一个不当的γ可能会误导模型对尾部分布进行错误的建模。
6 后记
这篇论文说的都是单变量时间序列的问题,但是其实多变量也是可以的。
还有一点是,个人认为,这篇论文中,如果是那些“史无前例”的极端事件(当前时刻虽然是异常,但是和之前异常时刻相似度都不高),还是无法探测到这些极端事件,无法进行预测的
以上是关于论文笔记: Modeling Extreme Events in Time Series Prediction的主要内容,如果未能解决你的问题,请参考以下文章
论文笔记Recursive Recurrent Nets with Attention Modeling for OCR in the Wild
《Rethinking Efficient Lane Detection via Curve Modeling》论文笔记
论文笔记:Graph WaveNet for Deep Spatial-Temporal Graph Modeling
论文笔记:Graph WaveNet for Deep Spatial-Temporal Graph Modeling
论文笔记-Joint Deep Modeling of Users and Items Using Reviews for Recommendation
论文笔记Recursive Recurrent Nets with Attention Modeling for OCR in the Wild