掌桥专利:专业的专利平台
掌桥专利
首页

一种基于多级分解和融合的时序预测系统及方法

文献发布时间:2023-06-19 16:09:34



技术领域

本申请涉及基于神经网络算法的深度学习技术领域,尤其涉及一种基于多级分解和融合的时序预测系统及方法。

背景技术

在大数据时代,各类数据的规模迎来爆发式增长,面对海量且持续更新的时间序列数据,构建有效的准确性高的预测模型具有重要的研究意义。时间序列预测作为人工智能、数据挖掘的重要技术,已被广泛应用于生产生活中并产生了巨大的经济和社会效益,例如气象预报、新能源发电、金融股市、市场营销、城市交通等。上述例子都以时间序列作为数据形式,却存在着各自的时序特性,如气象数据因为地球的公转和自转具有明显的季节性(以一定频率上下波动),新能源发电受生产要素即风和光资源特性的影响时序差异明显,金融数据由于交易方博弈、业绩和政策等影响极易波动。时间序列的数值是许多外界因素综合作用的结果,因此其具备一定的随机性,对时间序列的准确分析与预测一直是学界和业界的研究重点。

近年来,深度学习在许多领域的优势逐渐凸显,特别是基于Transformer架构的神经网络在自然语言处理、计算机视觉、时间序列预测等人工智能主要领域中相继取得突破性进展。相比于传统方法,深度神经网络具有强大的特征提取和非线性拟合能力,已成为时间序列预测的首选模型。

但当前的方法仍不能很好地应对时序预测中一些问题,例如难以准确地预测长时间序列,随着预测步长的增加,模型所产生的误差可能累积到使得预测失去意义的程度,这种缺陷使得大多数模型仅能用于短期预测。此外,一个时间序列往往是几种模式(Patterns)的叠加或耦合,对于时间序列中存在的多种潜在模式,通常会使用时间序列分解方法显式提取。但是这些分解往往仅作为特征工程方法与神经网络预测模型结合使用,没有深层次的融合,它们作为独立的参数无法通过反向传播参与全局优化,因此当前的混合模型仍难以有效提取复杂的全局时序特征和模式。

发明内容

本发明目的在于提供一种基于多级分解和融合的时序预测系统和方法,基于小波分解、季节性-趋势分解两种常见的序列分解思想对系统内部编码器和解码器进行改进,并通过多级分解与交叉融合策略增强模型学习时序特征及模式的能力,有效提升了模型进行时序预测任务的性能。

本发明提供一种基于多级分解和融合的时序预测系统,包括:

编码器,包含多个相同的编码器块;所述编码器的每一个编码器块包含:

第一级编码器时序分解及融合单元,包含第一个多头自注意力模块(Multi-HeadSelf-Attention),第一个用于神经网络的小波分解模块(WTDU1),第一个用于神经网络的季节性-趋势分解模块(STDU1);所述第一级编码器时序分解及融合单元获取上一级编码器块的输出序列做为第一编码序列;所述第一个多头自注意力模块基于所述第一编码序列提取相关性得到第二编码序列;所述WTDU1将所述第一编码序列分解得到第一高频分量和第一低频分量;所述STDU1将所述第一编码序列与所述第二编码序列相加得到的序列分解得到第一季节分量;采用交叉融合策略将所述第一高频分量、所述第一低频分量融合到所述第一季节分量进行连接,得到第一次季节信息增强表达的序列;将所述第一次季节信息增强表达的序列与所述第一季节分量进行相加后得到第三编码序列,将所述第一次季节信息增强表达的序列与所述第一低频分量进行相加后得到第四编码序列;

第二级编码器时序分解及融合单元,包含第二个用于神经网络的小波分解模块(WTDU2),第二个用于神经网络的季节性-趋势分解模块(STDU2);所述WTDU2将所述第四编码序列分解得到第二高频分量和第二低频分量;所述STDU2将所述第三码序列分解得到第二季节分量;采用交叉融合策略将所述第一高频分量、所述第二高频分量和所述第二低频分量融合到所述第二季节分量进行连接,得到第二次季节信息增强表达的编码序列;所述第二次季节信息增强表达的编码序列为所述每一个编码器块的输出序列。

本发明提供一种基于多级分解和融合的时序预测系统,其特征在于,所述系统包括:

解码器,包含多个相同的解码器块;所述解码器的每一个解码器块包含:

第一级解码器时序分解单元,包含第二个多头自注意力模块,第三个用于神经网络的小波分解模块(WTDU3),第三个用于神经网络的季节性-趋势分解模块(STDU3);所述第一级解码器时序分解单元获取上一级解码器块的输出序列做为第一解码序列;所述第二个多头自注意力模块基于所述第一解码序列提取相关性得到第二解码序列;所述WTDU3将所述第一解码序列分解得到第三高频分量和第三低频分量;所述STDU3将所述第一解码序列和所述第二解码序列相加得到的序列分解得到的第三季节分量和第三趋势分量;

第二级解码器时序分解及融合单元,包含一个多头交叉注意力模块(Multi-HeadCross-Attention),第四个用于神经网络的小波分解模块(WTDU4),第四个用于神经网络的季节性-趋势分解模块(STDU4);所述多头交叉注意力模块基于所述第三季节分量提取相关性得到第三解码序列;所述WTDU4将所述第三低频分量分解得到第四高频分量和第四低频分量;所述STDU4将所述第三季节分量和所述第三解码序列相加得到的序列分解得到第四季节分量和第四趋势分量;采用交叉融合策略将所述第三高频分量、所述第四高频分量和所述第四低频分量融合到所述第四季节分量进行连接,得到季节信息再次增强表达的序列;将所述季节信息再次增强表达的序列与所述第四低频分量进行相加后得到第四解码序列;将所述季节信息再次增强表达的序列与所述第四季节分量进行相加后得到第五解码序列;

第三级解码器时序分解单元,包含第五个用于神经网络的小波分解模块(WTDU5),第五个用于神经网络的季节性-趋势分解模块(STDU5);所述WTDU5将所述第四解码序列分解得到第五高频分量和第五低频分量;所述STDU5将所述第五解码序列分解得到的第五季节分量和第五趋势分量;将所述第三趋势分量、所述第四趋势分量、所述第五趋势分量、所述第五高频分量和所述第五低频分量求和得到所述每一个编码器块的趋势分量;所述第五季节分量做为所述每一个解码器块的输出序列。

优选的,所述时序预测系统基于Transformer的神经网络,所述神经网络遵循编码器-解码器结构;所述多头自注意力模块和多头交叉注意力模块都有三个输入向量:Query、Key、和Value,基于所述三个输入向量的相关性加权求和得到输出;

所述第一个多头自注意力模块将所述第一编码序列做为Query、Key和Value向量;

所述第二个多头自注意力模块将所述第一解码序列做为Query、Key和Value向量;

所述多头交叉注意力模块将所述第三季节分量作为Query向量,所述编码器的输出做为Key和Value向量;

所述编码器的输出为所述编码器的最后一个编码器块的所述第二次季节信息增强表达的编码序列。

优选的,依据预测任务设置初始序列,做为所述编码器的第一个编码器块的初始输入;

可选的,取所述编码器的第一个编码器块的初始输入的后一半做为所述解码器的第一个解码器块的初始输入。

优选的,所述解码器包含有L

优选的,所述用于神经网络的小波分解模块设计了两种线性层来行使小波变换的功能,并且线性层的权重矩阵、偏置为可学习参数;其中,两个可学习参数权重矩阵为W

W

其中,f∈R

其中,H,L∈R

H,L=WTDU(X),

所述用于神经网络的小波分解模块内部参数的初始化以及优化过程均是独立的,且权重矩阵的初始化可以根据需要选择其他小波。

优选的,所述用于神经网络的季节性-趋势分解模块将输入序列分解为季节部分和趋势部分;因为不包含短期扰动,所述趋势部分相比于原始序列通常更加平滑,用移动平均(Moving Average)来消除短期不平稳因素,得到序列的趋势部分;根据加法分解的规则,去除平滑的趋势部分后,包含了短期和周期性扰动的剩余部分被认为是季节部分,具体的分解过程如下:

T=MovingAvg(Padding(X)),

S=X-T,

其中,X,S,T∈R

S,T=STDU(X)。

优选的,所述交叉融合(Cross-Fusion)策略在季节部分和多级频率信息间建立连接,用于加强分解分量之间的信息交互,其设计理论为序列的季节部分本质上是一种频率分量,因此将季节部分与多级频率信息进行交叉融合,有助于下一级的分解,对于需要交叉融合的N个分量,有如下过程:

Y=Conv

Y=Conv

其中,Conv

Y&=CrossFusionCrossFusion([X

定义第i级分解为:

H

S

如果在第i+1级分解时使用交叉融合策略,则有:

其中,Cross-Fusion将输入的季节和多级频率分量映射到同一个语义空间,并输出融合后的带有多级频率信息的季节分量

本发明提供一种基于多级分解和融合的时序预测方法,遵循编码器-解码器结构,所述方法包括:

依据预测任务设置初始序列;

通过编码器对所述初始序列进行编码,获得包含增强季节信息的向量序列;

通过解码器对所述向量序列进行解码,获得预测任务场景所需要的时间序列。

本发明提供一种基于多级分解和融合的时序预测系统和方法,基于小波分解、季节性-趋势分解两种常见的序列分解思想对系统内部的编码器和解码器结构进行改进,并通过多级分解与交叉融合策略增强模型学习时序特征及模式的能力,有效提升了模型进行时序预测任务的性能。

附图说明

为了更简单说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例中基于多级分解和融合的时序预测系统的Transformer模型示意图;

图2为本申请实施例中基于多级分解和融合的时序预测系统的编码器结构示意图;

图3为本申请实施例中基于多级分解和融合的时序预测系统的解码器结构示意图;

图4为本申请实施例中基于多级分解和融合的时序预测方法的流程示意图;

图5为本申请实施例中基于多级分解和融合的时序预测结果与真实值的对比图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了便于更好的理解本发明,在实施例中,作为一种可选方案,采用基于seq2seq(Sequence to Sequence)架构的Transformer模型完成对时间序列的预测。Transformer模型可以完成NLP(Natural Language Processing)领域的一些典型任务,如机器翻译,文本生成,同时又可以通过构建预训练语言模型,用于不同任务的迁移学习。

如图1所示,Transformer模型可以分为四个模块:输入模块、编码器、解码器和输出模块。输入模块:是为了将文本中词汇的数字表示转变为向量表示,希望在高维向量空间中捕捉词汇间的关系。编码器:由N个编码器块(Encoder Block,或称Encoder Layer)堆叠而成,作为编码器的组成单元,每个编码器块完成一次对输入的特征提取过程,即编码过程。解码器:由N个解码器块(Decoder Block,或称Decoder Layer)堆叠而成,作为解码器的组成单元,每个解码器块根据给定的输入向目标方向进行特征提取操作,即解码过程。根据编码器的结果以及上一次预测的结果,对下一次可能出现的‘值’进行特征表示。输出模块结构:通过对上一步的线性变化得到指定维度的输出。

在一个实施例中,编码器由多个相同的编码器块堆叠而成,每一个编码器块包含:

第一级编码器时序分解及融合单元,包含第一个多头自注意力模块(Multi-HeadSelf-Attention),第一个用于神经网络的小波分解模块(WTDU1),第一个用于神经网络的季节性-趋势分解模块(STDU1);所述第一级编码器时序分解及融合单元获取上一级编码器块的输出序列做为第一编码序列;所述第一个多头自注意力模块基于所述第一编码序列提取相关性得到第二编码序列;所述WTDU1将所述第一编码序列分解得到第一高频分量和第一低频分量;所述STDU1将所述第一编码序列与所述第二编码序列相加得到的序列分解得到第一季节分量;采用交叉融合策略将所述第一高频分量、所述第一低频分量融合到所述第一季节分量进行连接,得到第一次季节信息增强表达的序列;将所述第一次季节信息增强表达的序列与所述第一季节分量进行相加后得到第三编码序列,将所述第一次季节信息增强表达的序列与所述第一低频分量进行相加后得到第四编码序列;

第二级编码器时序分解及融合单元,包含第二个用于神经网络的小波分解模块(WTDU2),第二个用于神经网络的季节性-趋势分解模块(STDU2);WTDU2将第四编码序列分解得到第二高频分量和第二低频分量;STDU2将第三编码序列分解得到第二季节分量;采用交叉融合策略将第一高频分量、第二高频分量和第二低频分量融合到第二季节分量进行连接,得到第二次季节信息增强表达的编码序列;第二次季节信息增强表达的编码序列为每一个编码器块的输出序列。

在一个实施例中,解码器由多个相同的解码器块堆叠而成,每一个解码器块包含:

第一级解码器时序分解单元,包含第二个多头自注意力模块,第三个用于神经网络的小波分解模块(WTDU3),第三个用于神经网络的季节性-趋势分解模块(STDU3);所述第一级解码器时序分解单元获取上一级解码器块的输出序列做为第一解码序列;所述第二个多头自注意力模块基于所述第一解码序列提取相关性得到第二解码序列;所述WTDU3将所述第一解码序列分解得到第三高频分量和第三低频分量;所述STDU3将所述第一解码序列和所述第二解码序列相加得到的序列分解得到的第三季节分量和第三趋势分量;

第二级解码器时序分解及融合单元,包含一个多头交叉注意力模块(Multi-HeadCross-Attention),第四个用于神经网络的小波分解模块(WTDU4),第四个用于神经网络的季节性-趋势分解模块(STDU4);所述多头交叉注意力模块基于所述第三季节分量提取相关性得到第三解码序列;所述WTDU4将所述第三低频分量分解得到第四高频分量和第四低频分量;所述STDU4将所述第三季节分量和所述第三解码序列相加得到的序列分解得到第四季节分量和第四趋势分量;采用交叉融合策略将所述第三高频分量、所述第四高频分量和所述第四低频分量融合到所述第四季节分量进行连接,得到季节信息再次增强表达的序列;将所述季节信息再次增强表达的序列与所述第四低频分量进行相加后得到第四解码序列;将所述季节信息再次增强表达的序列与所述第四季节分量进行相加后得到第五解码序列;

第三级解码器时序分解单元,包含第五个用于神经网络的小波分解模块(WTDU5),第五个用于神经网络的季节性-趋势分解模块(STDU5);WTDU5将第四解码序列分解得到第五高频分量和第五低频分量;STDU5将第五解码序列分解得到的第五季节分量和第五趋势分量;将第三趋势分量、第四趋势分量、第五趋势分量、第五高频分量和第五低频分量求和得到每一个编码器块的趋势分量;第五季节分量即为每一个解码器块的输出序列。

在一个实施例中,时序预测系统基于Transformer的神经网络,神经网络遵循编码器-解码器结构;多头自注意力模块和多头交叉注意力模块都有三个输入向量:Query、Key、和Value,基于三个输入向量的相关性加权求和得到输出;

第一个多头自注意力模块将第一编码序列做为Query、Key和Value向量;

第二个多头自注意力模块将第一解码序列做为Query、Key和Value向量;

多头交叉注意力模块将第三季节分量作为Query向量,编码器的输出做为Key和Value向量;

编码器的输出为编码器的最后一个编码器块的第二次季节信息增强表达的编码序列。

在一个实施例中,依据预测任务设置初始序列,做为编码器的第一个编码器块的初始输入;

可选的,取编码器的第一个编码器块的初始输入的后一半做为解码器的第一个解码器块的初始输入。

在一个实施例中,解码器包含有L

在一个实施例中,用于神经网络的小波分解模块设计了两种线性层来行使小波变换的功能,并且线性层的权重矩阵、偏置为可学习参数;其中,两个可学习参数权重矩阵为W

W

具体的,f∈R

具体的,H,L∈R

H,L=WTDU(X),

用于神经网络的小波分解模块内部参数的初始化以及优化过程均是独立的,且权重矩阵的初始化可以根据需要选择其他小波。

在一个实施例中,用于神经网络的季节性-趋势分解模块将输入序列分解为季节部分和趋势部分;因为不包含短期扰动,趋势部分相比于原始序列通常更加平滑,用移动平均(Moving Average)来消除短期不平稳因素,得到序列的趋势部分;根据加法分解的规则,去除平滑的趋势部分后,包含了短期和周期性扰动的剩余部分被认为是季节部分,具体的分解过程如下:

T=MovingAvg(Padding(X)),

S=X-T,

其中,X,S,T∈R

S,T=STDU(X)。

在一个实施例中,交叉融合(Cross-Fusion)策略在季节部分和多级频率信息间建立连接,用于加强分解分量之间的信息交互,其设计理论为序列的季节部分本质上是一种频率分量,因此将季节部分与多级频率信息进行交叉融合,有助于下一级的分解,对于需要交叉融合的N个分量,有如下过程:

Y=Conv

Y=Conv

其中,Conv

Y&=CrossFusionCrossFusion([X

定义第i级分解为:

H

S

如果在第i+1级分解时使用交叉融合策略,则有:

具体的,Cross-Fusion将输入的季节和多级频率分量映射到同一个语义空间,并输出融合后的带有多级频率信息的季节分量

图2中,提供了一种基于多级分解和融合的时序预测系统的编码器结构示意图,编码器由L

进一步的,

在一个实施例中,Transformer模型编码器初始输入长度为历史1天,比如,96个时间点的数据。

具体的,进行第一次进行编码混合时序分解,在第l个编码器块中,

具体的,多头自注意力模块有三个输入向量:Query、Key、和Value,基于三个输入向量的相关性加权求和得到输出。

可选的,将第一编码序列做为多头自注意力模块的Query、Key和Value向量;

再次进行编码混合时序分解,将第三编码序列输入到第2级STDU分解出季节分量S

当l=L

图3中,提供了一种基于多级分解和融合的时序预测系统的解码器结构示意图,解码器由L

可选的,取编码器初始输入的后一半作为解码器的初始输入。

具体的,进行第一次解码混合时序分解,在第l个解码器块中,

具体的,多头自注意力模块、多头交叉注意力模块都有三个输入向量:Query、Key、和Value,基于三个输入向量的相关性加权求和得到输出。

可选的,将第一解码序列做为多头自注意力模块的Query、Key和Value向量。

可选的,将S

进一步的,进行第二次解码混合时序分解及融合,将季节分量S

进一步的,进行第三次解码混合时序分解,将第五解码序列输入到第5级STDU分解出季节分量S

当l=L

其中,具体的细节为:在第4级STDU分解前使用多头交叉注意力以利用编码器学习的季节信息,之后将第二次解码混合时序分解的结果进行交叉融合。与编码器块不同的是,解码器块对解码序列总共使用了3次混合时序分解,并且最后一次分解后没有进一步交叉融合这3级的高、低频分量。这是因为第5级得到的H

本发明可以用于多个典型的时序预测场景。

图4中,本发明提供一种基于多级分解和融合的时序预测方法,遵循编码器-解码器结构,包括:

步骤S410,依据预测任务设置初始序列;

步骤S420,通过编码器对所述初始序列进行编码,获得包含增强季节信息的向量序列;

步骤S430,通过解码器对所述向量序列进行解码,获得预测任务场景所需要的时间序列。

本实施例以Transformer模型进行说明,将多级分解和融合思想引入到Transformer中,结合可用于神经网络的小波单元和季节性-趋势分解单元改进其编码器、解码器和内部构造。

图5中,基于本领域一个公开常用的数据集——电力变压器数据集(ETT)对本发明进行具体说明。该数据集记录了含有2个电力变压器的数据,包括了时间、各类负载、油温等特征,时间分辨率为15分钟,本实施例选取其中的油温进行预测。

在对数据集进行初步的预处理后,按照时间顺序以7:1:2的比例将数据集划分为训练集、验证集和测试集。对训练集进行归一化,以消除数据中各属性的数量级差异,便于模型训练与收敛。设置模型相关的超参数,如确定Adam为优化算法、选取均方误差(MSE)作为损失函数、训练时输入的批处理大小为32、模型编码器层数为2、模型解码器层数为1等。

训练时,输入长度为历史1天(96个时间点)的数据,模型基于给出的未来96个时间点的真实数据与自身的预测结果进行误差计算,并回传误差以对自身的参数进行优化。训练过程中,通过验证集选择最优的模型参数。训练完成后,在测试集上分析模型在该任务场景下的预测性能。最后,可将训练好的模型应用于目标场景的实际预测任务中。

参考图1-4为本实施例中基于transformer架构时序预测模型的原理框图和方法图,得到电力变压器油温数据的预测值,由图5可知,油温数据的预测值与样本值十分接近,样本值就是参数样本对应的油温数据实际值。因此,所述油温数据时序预测模型能准确的按照时间顺序进行油温数据的预测,满足实际电力变压器的生产要求,有利于推动成产过程的绿色制造和智能制造。

本发明提出一种基于多级分解和融合的时序预测方法和系统,基于多级时序分解和融合的通用时序预测Transformer模型,相比于其他模型,具有更高的时序预测性能。可在神经网络内部工作的时序分解单元WTDU与STDU能够直接参与到全局参数优化中,并提升模型对季节性、趋势、高低频信息的提取能力。带有交叉融合策略的多级分解可以在季节性和频率信息之间建立连接,将多级的频率信息融入到季节分量中,增强了模型对季节信息的表达。

需要说明的是,在此提供的方法和系统不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定的编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明内容,并且上面对特定语言、系统功能模块的调用所做的描述仅仅是为了披露发明的最佳实施方式。

在此处所提供的说明书中,说明了大量的具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下完成实现。在一些示例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要去及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。

技术分类

06120114722683