一种时间序列预测方法与流程

文档序号:24186632发布日期:2021-03-09 13:52阅读:95来源:国知局
一种时间序列预测方法与流程

1.本说明书涉及预测技术领域,特别是一种时间序列预测方法。


背景技术:

2.时间序列分析法是根据过去的变化趋势预测未来的发展,它的前提是假定事物的过去延续到未来。时间序列分析,正是根据客观事物发展的连续规律性,运用过去的历史数据,通过统计分析,进一步推测未来的发展趋势。事物的过去会延续到未来这个假设前提包含两层含义:一是不会发生突然的跳跃变化,是以相对小的步伐前进;二是过去和当前的现象可能表明现在和将来活动的发展变化趋向。这就决定了在一般情况下,时间序列分析法对于短、近期预测比较显著,但如延伸到更远的将来,就会出现很大的局限性,导致预测值偏离实际较大而使决策失误。在工业互联的时代,伴随着云计算和iot的飞速发展,集聚了大量有意义的时间序列数据,如何高效的利用这些时序数据,使之产生价值,成为当下的研究热点。本专利提出了一种基于小波分解的多模型联合学习的时间序列预测技术,旨在提高时序预测的准确度。
3.时间序列预测法可用于短期、中期和长期预测。根据对资料分析方法的不同,又可分为:简单序时平均数法、加权序时平均数法、移动平均法、加权移动平均法、趋势预测法、指数平滑法、季节性趋势预测法、市场寿命周期预测法等。传统的时序预测方法(arma和arima)适应于短期,平稳的时序数据预测,即使做了若干次差分变换来消除序列的周期性、季节性特性,但还是难以满足平稳性条件,而且会使预测序列具有较大的误差;最近几年流行深度学习方法,但是对不稳定的,长时序的数据来说,仅使用单一的lstm神经网络进行预测,不仅不能灵活的处理数据中的不稳定因素,而且造成预测误差过大。


技术实现要素:

4.本说明书实施例提供了一种时间序列预测方法,包括:
5.对获取的时序数据进行小波分解,获取第一近似序列和至少两个第一细节序列;
6.对所述第一近似序列和所述至少两个第一细节序列分别进行小波逆变换,获取第二近似序列和至少两个第二细节序列,所述第二近似序列的长度和所述第二细节序列的长度与所述时序数据的长度一致;
7.分别建立与所述第二近似序列和所述至少两个第二细节序列一一对应的神经网络模型;
8.基于所述一一对应的神经网络模型,对所述第二近似序列和所述至少两个第二细节序列进行预测,获取预测结果;
9.基于多模型联合学习策略和所述神经网络模型,学习所述第二近似序列和所述至少两个第二细节序列的预测结果的权重参数,基于所述权重参数,对所述预测结果进行加权;
10.对加权后的预测结果进行重构,获取最终预测结果。
11.由以上本说明书实施例提供的技术方案可见,本发明可解决非稳态长时序数据的预测问题,可提高时序预测的准确度。
附图说明
12.图1为本说明书一些实施例的时间序列预测方法的流程图。
13.图2为本说明书一些实施例的小波分解的流程图。
14.图3为本说明书一些实施例的时间序列预测方法的细化流程图。
15.图4为本说明书一些实施例的针对前300个时序数据进行小波分解的结果图。
具体实施方式
16.为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
17.如图1所示,本说明书一些实施例中提供了一种时间序列预测方法,该方法包括以下步骤:
18.s102、对获取的时序数据进行小波分解,获取第一近似序列和至少两个第一细节序列;
19.对第一近似序列和至少两个第一细节序列分别进行小波逆变换,获取第二近似序列和至少两个第二细节序列,第二近似序列的长度和第二细节序列的长度与时序数据的长度一致;
20.s104、分别建立与第二近似序列和至少两个第二细节序列一一对应的神经网络模型;
21.基于一一对应的神经网络模型,对第二近似序列和至少两个第二细节序列进行预测,获取预测结果;
22.s106、基于多模型联合学习策略和所述神经网络模型,学习所述第二近似序列和所述至少两个第二细节序列的预测结果的权重参数,基于所述权重参数,对所述预测结果进行加权;
23.s108、对加权后的预测结果进行重构,获取最终预测结果。
24.在s106中,权重越高表示该预测序列越重要。
25.在本说明书一些实施例中,对获取的时序数据进行小波分解,具体为,基于离散小波变换,对时序数据进行分解。
26.在本说明书一些实施例中,基于离散小波变换,将时序数据分解为第一高频序列d1和第一低频序列a1。
27.在本说明书一些实施例中,基于离散小波变换,将第一低频序列a1分解为第二高频序列d2和第二低频序列a2;基于离散小波变换,将第二低频序列a2分解为第三高频序列d3和第三低频序列a3;基于离散小波变换,将第三低频序列a3分解为第四高频序列d4和第四低频序列a4;第四低频序列a4属于第一近似序列,第一高频序列d1、第二高频序列d2、第
三高频序列d3、第四高频序列d4均属于第一细节序列。
28.在本说明书一些实施例中,对第一近似序列a4和4个第一细节序列d1、d2、d3、d4分别进行小波逆变换,获取第二近似序列a4和4个第二细节序列d1、d2、d3、d4。
29.在本说明书一些实施例中,建立第二细节序列d1的第一lstm网络神经模型,第一lstm网络神经模型包括,一个输入层、2个lstm的隐藏层、一个输出层、tanh激活函数和adma优化器;建立第二细节序列d2的第二lstm网络神经模型,第二lstm网络神经模型包括,一个输入层、2个lstm的隐藏层、一个输出层、tanh激活函数和rmsprop优化器;建立第二细节序列d3的第三lstm网络神经模型,第三lstm网络神经模型包括,一个输入层、2个lstm的隐藏层、一个输出层、tanh激活函数和adma优化器;建立第二细节序列d4的第四lstm网络神经模型,第四lstm网络神经模型包括,一个输入层、2个lstm的隐藏层、一个输出层、tanh激活函数和adma优化器;
30.建立第二近似序列a4的第五lstm网络神经模型,第五lstm网络神经模型包括,一个输入层、3个lstm的隐藏层、一个输出层、tanh激活函数和adma优化器。
31.在本说明书一些实施例中,
32.获取第一lstm网络神经模型的第一预测结果,
33.获取第二lstm网络神经模型的第二预测结果,
34.获取第三lstm网络神经模型的第三预测结果,
35.获取第四lstm网络神经模型的第四预测结果,
36.获取第五lstm网络神经模型的第五预测结果,
37.基于预设的第一评测标准分别对第一预测结果、第二预测结果、第三预测结果、第四预测结果和第五预测结果进行评测,第一评测标准为其中,m表示总样本数,y
m
表示第小m个样本真值,表示第小m个样本的预测结果。
38.在本说明书一些实施例中,
39.设置第一评测阈值;
40.当第一预测结果超过第一评测阈值时,才获取第二细节序列d1的权重参数λ;
41.当第二预测结果超过第一评测阈值时,才获取第二细节序列d2的权重参数ε;
42.当第三预测结果超过第一评测阈值时,才获取第二细节序列d3的权重参数δ;
43.当第四预测结果超过第一评测阈值时,才获取第二细节序列d4的权重参数β;
44.当第五预测结果超过第一评测阈值时,才获取第二细节序列d5的权重参数α。
45.在本说明书一些实施例中,
46.当第一预测结果、第二预测结果、第三预测结果、第四预测结果和第五预测结果均超过第一评测阈值时,基于各自的权重参数,进行加权组合,并基于预设的第二评测标准进行评测,
47.第二评测标准为
[0048][0049]
其中,
[0050][0051][0052]
第一lstm网络神经模型、第二lstm网络神经模型、第三lstm网络神经模型、第四lstm网络神经模型、第五lstm网络神经模型的第小m个样本预测结果分别记做:
[0053][0054]
第一lstm网络神经模型、第二lstm网络神经模型、第三lstm网络神经模型、第四lstm网络神经模型、第五lstm网络神经模型的第小m个样本真值分别记做:
[0055][0056]
输出重构后的最终预测结果。
[0057]
总结来说,本发明包括以下步骤:
[0058]
1.对时序数据进行小波分解,得到一组性能较好的近似序列和若干组细节序列;
[0059]
2.为了保证后期处理的准确性和便利性,对分解后的序列分别进行小波逆变换,得到与原时序数据长度一致的近似序列和这些细节序列;
[0060]
3.对逆变换后的近似序列和这些细节序列分别建立神经网络模型,分别对各个序列进行预测;
[0061]
4.采用多模型联合学习的策略,将各序列预测结果的重要程度做为权重参数,让模型自主学习这些权重参数,权重的大小表明了各个序列的重要程度;
[0062]
5.对加权后的预测结果进行重构,得到最终的预测数据;
[0063]
结合图2、图3和图4具体步骤说明如下:
[0064]
针对小波分解,小波分解通常有两种方式,一种叫连续小波变换,一种叫离散小波变换,连续小波变换运算量很大,而且只有数值解,没有解析解,为了减少变换运算量,去除不必要的重复的系数,实际中使用的通常是离散小波变换,这里也是采用离散小波变换,如图2所示。
[0065]
非平稳的时序数据相当于含有噪声的信号,小波分解就是把原始的信号分解为低频和高频部分,分解层次越高,去掉的低频成分越多,去噪效果越明显,但是为了避免失真度增大,根据经验分解层次一般不超过4层。在我们时序数据的表现上,分解4层可以取得不错的效果。这里的a4是近似序列,d4,d3,d2,d1是细节序列。图4为针对前300个时序数据进行小波分解的效果图。
[0066]
我们将序列a4,d4,d3,d2,d1做逆变换后的序列分别记做:a4,d4,d3,d2,d1,
[0067]
将逆变换后的序列相加就可以还原原始的时序数据x,即时序数据x=a4+d4+d3+d2+d1对逆变换后的各序列分别建立lstm神经网络模型,具体为,
[0068]
(1)细节序列d1的lstm神经网络模型:一个输入层,含有2个lstm的隐藏层,以及一个输出层,激活函数使用tanh,优化器选择adma。
[0069]
(2)细节序列d2的lstm神经网络模型:一个输入层,含有2个lstm的隐藏层,以及一个输出层,激活函数使用tanh,优化器选择rmsprop。
[0070]
(3)细节序列d3的lstm神经网络模型:一个输入层,含有2个隐藏层,第一个隐层含义1个lstm,第二个隐层也含义1个lstm,以及一个输出层,激活函数使用tanh,优化器选择
adma。
[0071]
(4)细节序列d4的lstm神经网络模型:一个输入层,含有2个隐藏层,第一个隐层含义1个lstm,第二个隐层也含义2个lstm,以及一个输出层,激活函数使用tanh,优化器选择adma。
[0072]
(5)近似序列a4的lstm神经网络模型:一个输入层,含有3个lstm的隐藏层,以及一个输出层,激活函数使用tanh,优化器选择adma。
[0073]
为以上各序列分别建模,在于让各模型学习不同时序的特征,避免单一模型只学习到某方面的特征而忽略时序数据的其他特征。
[0074]
针对多模型联合学习策略,
[0075]
如图3所示,展示了模型的整体架构。
[0076]
其中,分枝1到分枝5,各分枝独自训练;评测1至评测5的评测标准是mse:
[0077]
m表示总样本数。
[0078]
各个分枝的r
2 score需要大于等于阈值γ,阈值可以为0.7,在满足阈值的条件下,用该分枝的预测结果进行stacking。stacking的过程就是将各自模型学习到的不同特征进行加权组合,以提高模型的预测能力。
[0079]
评测6的评测标准如下:
[0080]
评测公式也是mse,
[0081][0082][0083][0084]
权重参数α,β,δ,ε,λ分别表示序列5
‑‑‑
序列1的重要程度,权重越高表示该序列越重要,其取值范围是:0≤权重参数≤1.5。
[0085]
虽然上文描述的过程流程包括以特定顺序出现的多个操作,但是,应当清楚了解,这些过程可以包括更多或更少的操作,这些操作可以顺序执行或并行执行(例如使用并行处理器或多线程环境)。本发明是参照根据本发明实施例的方法的流程图和/或方框图来描述的。
[0086]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法或者设备中还存在另外的相同要素。
[0087]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于方法实施例而言,由于其基本相似于实施例,所以描述的比较简单,相关之处参见实施例的部分说明即可。以上仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等
同替换、改进等,均应包含在本说明书的权利要求范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1