【文献阅读】Pre-SMATS: A multi-task learning based prediction model for smallmulti-stage seasonal time se

本文提出了一种名为Pre-SMATS的模型,用于改善季节时间序列的预测效果。该模型利用多任务学习,通过特征提取器、子任务分类器和主要任务预测器来提取阶段特征并进行预测。Pre-SMATS通过阶段分类增强了数据特征,以更细粒度的方式表示季节性,从而提高预测精度。实验表明,这种方法在处理季节性时间序列时能有效提高预测准确性。
摘要由CSDN通过智能技术生成

目录

1.目的:

2.解决方法:

3.主要贡献:

补充知识:

ARIMA

SARIMA

TCN

Generic additive network

Multi-task learning

4. Pre-SMATS — Our model

 5.实验

 6.conclusion​​​​​​​


1.目的:

本文为了提高对季节时间序列的学习效果,我们从原始序列中提取隐式信息来增强数据特征,并利用阶段来传递季节性


2.解决方法:

考虑到许多季节时间序列都具有隐含的阶段特征,我们提出了一种基于多任务学习的小多阶段季节时间序列预测模型Pre-SMATS模型。该模型由特征提取器子任务分类器主要任务预测器三个部分组成。利用特征提取器学习输入数据的特征向量,利用子任务分类器进行阶段分类,利用主要任务预测器进行最终预测


3.主要贡献:

1.特征提取器提取输入数据的特征后,将提取的向量分别输入子任务分类器和主任务预测器。子任务分类器学习了阶段向量(即将阶段特征嵌入)后,将其输出到主任务,主任务将阶段向量与特征提取器提取的特征向量连接起来,以提高模型的预测精度。

2.我们提出了一种处理季节特征的新方法。不同于现有的方法,如差异和分解数据消除季节性成分或使用周期函数适应季节特征,本文介绍了季节性标记序列阶段的方法,这样,获取季节特征的任务转化为获取阶段特征,以更细的粒度表达季节特征

补充知识:

季节时间序列:具有季节特征,一种在固定时间段内重复出现的时间序列数据,这种重复现象的最小时间周期称为季节周期

Pseudo-Huber Loss损失函数的定义如下:

优点:

  • 对异常值鲁棒
  • 存在解析解

缺点:

  • 需要对delta参数进行微调

Pseudo-Huber损失函数是MAE函数的鲁棒性和 MSE的实际现有解的结合体。该损失函数还有一个附加参数 delta,主要用于控制函数从二次到线性切换的位置。此外该参数还用于剪裁梯度值,从而可以限制异常值的影响。


ARIMA

  • 缺点:它不能很好地解决非线性波动数据。此外,当数据是季节性时,使用ARIMA很难使其平稳,这降低了模型的可解释性。另一个缺点是它不适合进行长期预测

SARIMA

  • 它将季节时间序列中的非平稳因子分为季节因子和趋势因子,然后通过差分将其分别转化为平稳因子进行预测,弥补了ARIMA在预测季节时间序列方面的不足。然而,像ARIMA一样,SARIMA无法捕捉到系列中的非线性关系,只能做出短期预测

TCN

  • TCN的主要特征是:1)架构中的卷积是因果的;2)像RNN一样,网络可以取任意长度的序列,并将其映射到相同长度的输出序列。为了实现上述函数,它由一个一维的全卷积网络和因果卷积组成

Generic additive network

通用的可加性网络(gaNet)是由LopezMartin等人(2019年)提出的,用于监督回归。该架构的构建元素是学习块,它可能由一系列完全连接的层、更复杂的循环层和卷积层组成,并使用随机梯度下降进行端到端训练。

Multi-task learning

  • 多任务学习允许同时处理多个相关任务,并利用任务之间的相关性来提高学习性能
  • 多任务学习的泛化能力优于单任务学习
  • 在我们的工作中,我们首先分析了每个周期内小季节时间序列的阶段特征并用阶段对时间序列进行注释。该方法不仅以更细的粒度描述季节特征,而且通过特征增强弥补了数据不足的缺点。为了获得阶段特征,我们需要将序列划分为各个阶段。在实现最终的预测之前,需要完成这个任务。受多任务学习思想的启发,我们试图建立一个能够同时完成这两个任务的模型。

4. Pre-SMATS — Our model

 在图中,我们可以看到相同颜色的点在相同周期中聚集更紧密,数据点在下一个周期中在相同时间具有相同的行为。这启发我们可以根据循环中包含的数据点之间的分散程度分为阶段,换句话说,季节时间序列可以通过阶段的周期来表示。

  • 在统计学中,用于评估数据分散程度的指标是变异系数𝑐𝑣,它是用标准差(𝜎)和平均值(𝜇)的商来测量的,即𝑐𝑣=𝜎/𝜇。一般来说,变异系数随数据分散程度的增加而增大

定义3告诉我们,除了季节特征外,多阶段的季节时间序列也具有阶段特征因此,在对小的多阶段季节时间序列进行分析时,利用阶段标记信息,不仅可以增强序列的特征,还可以用更细的粒度表示季节时间序列,有利于提高预测的精度。实现这一目标的关键是如何获得小的多阶段季节时间序列的阶段特征的嵌入。

  • 第一步:阶段特征的嵌入:为了获得阶段特征的嵌入,我们需要一个特征提取器𝐻来将输入序列转换为特征向量。此外,为了获得特征向量𝐟的阶段向量,构造了一个分类器𝐺𝑝,该分类器𝐺𝑝与学习块和最后一个具有𝑆𝑜𝑓𝑡𝑚𝑎𝑥函数的全连接(FC)层相结合,以预测下一刻输入数据属于哪个阶段。在𝐺𝑝的帮助下,得到了将输入数据的特征向量与阶段相关联的向量𝐟,即𝐟是输入数据𝑆的阶段向量,即阶段特征的嵌入。
  • 第二步:通常,平稳数据更有利于时间序列的预测。因此,我们通过区分原始时间序列得到一个平稳的时间序列𝑆‘,然后使用特征提取器𝐻将𝑆’转换为特征向量𝐟‘。最后,将𝐟和𝐟‘连接得到连接的向量𝐟𝐟,然后用𝐟𝐟进行最终的预测。注意,前面的描述显示了特征提取器𝐻有两个角色,一个是将𝑆转换为𝐟,另一个是将𝑆‘转换为𝐟’。

 其中Pre-SMATS由三个组成部分组成:特征提取器、子任务分类器和主要任务预测器。特征提取器负责将数据𝑆平稳时间序列𝑆‘转换为相应的特征向量𝐟和𝐟’。子任务分类器有两个功能,一是执行数据阶段分类任务,即预测数据的下一刻阶段;二是将分类过程中学习到的阶段向量𝐟输出到主要任务预测器中,在主要任务预测器中将特征向量𝐟‘与子任务输出的阶段向量𝐟连接起来,形成连接的向量𝐟𝐟,完成预测任务。

1).特征提取器

其两个分支都是由Bi-LSTM组成的。上面的分支是提取序列𝑆的特征,下面的分支是提取平稳时间序列𝑆’的特征。将𝑆(𝑆‘)输入到Bi-LSTM中,得到𝐟(𝐟’),即输入的特征向量。

2).子任务分类器(分类器的作用是什么

 

其中YC代表各阶段的概率

  • 使用softmax交叉熵函数计算子任务的损失如:

其中,𝑛为训练集中的样本总数,𝑚为阶段数,ℎ𝑖𝑗为𝑖th样本的𝑗th阶段的标签值,𝑌𝑐𝑖𝑗为ℎ𝑖𝑗的预测值。

3).主要任务预测器

 在模型训练中,利用Huber损失函数来计算损失(Huber损失对于数据中异常值的敏感性要差一些。与普通最小二乘相比,Huber损失减少了对异常值的惩罚,同时具有MAE和MSE的优点。它还克服了MAE和MSE的缺点,即它不仅保持了损失函数的连续导数,而且获得了更准确的最小值和更好的鲁棒性.该等式表示为:

 式中,𝑛为训练集中的样本总数,𝑟𝑖为𝑖th样本的真实值,𝑌𝑓𝑖为𝑟𝑖的预测值。

 整个模型的损失函数为:


 5.实验

1).stage division

首先发现CCAPT数据集具有季节性且特征具有上升趋势,故对数据集进行阶段划分。我们使用等式对其进行了一阶差分(13)与𝑧=1获得增量系列,并对增量系列进行阶段划分。

 2).data differening

使用一阶差分度原始数据进行区分

13式中,𝑠‘𝑡𝑖为𝑠𝑡𝑖差分后的结果,𝑠𝑡𝑖为时间点𝑡𝑖处原始时间序列𝑆的值,𝑧为差分步长。在CCAPT数据集中,𝑧为12以获得𝑆‘,而在FTC数据集中,𝑧为1获得𝑆’。

3).data standardization

 注意:为了保持原始数据的阶段特性,没有对输入数据进行标准化;而是对差分后的训练集数据进行标准化

4).sliding window


 6.conclusion

由于数据的不足和对季节特征的获取,现有的预测模型难以在较小的季节时间序列中实现理想的预测效果。本文获得了原始时间序列上的隐式阶段信息,以增强数据特征,以减轻样本不足对训练效果的负面影响。为了提高预测的准确性,通过利用序列中的阶段信息,可以用更细的粒度来表示时间序列的季节特征。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值