本发明属于机器学习及预测,涉及一种区间值长短期记忆网络模型(ilstm)的构建、训练方法及系统,应用于经济、金融和社会生活中的区间值时间序列预测中,为决策过程提供重要信息。
背景技术:
1、区间值时间序列(interval-valued time series,its)是一种时间序列数据的表示形式,序列中每个时间点的取值是一个区间值(interval value)而不是单个数值(pointvalue)。它广泛存在于经济、金融和社会生活中,在决策过程中提供重要的信息,具有丰富的数据信息优势。一方面,当数据本身带有模糊性或不确定性时,可以表示为区间值,能够很好地反映数据的不确定性。另一方面,将细粒度的数值时间序列按照时间或空间进行聚合,得到的区间值时间序列能够从粗粒度角度展现数据的波动趋势,蕴含了丰富的不确定性信息。例如,在股票交易市场中,每天的股票价格是不规律波动的,而当天的最高价和最低价构成的区间值能够反映该天的波动幅度。由股票价格区间值构成的区间值股票价格时间序列则不仅展现了一段时间内的价格波动趋势,还展现了价格的日内波动幅度和不确定性。总的来说,区间值时间序列能够很好地反映数据的不确定性和模糊性,对区间值时间序列的预测建模,在需要处理这种不确定性的应用场景中具有重要意义。
2、专利号为cn201710696129.4的中国发明专利提供了一种基于信息论学习的股票市场波动区间预测方法,是一种基于信息论学习的股市波动区间预测模型的构建方法,引入信息论学习中的相关熵来定义新的代价函数进行imlp模型的训练。但这种方法采用的是mlp这种浅层结构的模型,在处理时间序列数据的连续性和长期依赖性方面性能较差,对时间序列特征的学习能力较差。
3、专利号为cn201710696129.4的中国发明专利提供了一种基于信息论学习的股市波动区间预测模型的构建方法。该方法针对imlp模型设计了基于信息论学习的代价函数,并通过最大化代价函数对区间神经网络预测模型进行训练。然而,跟cn201710696129.4类似,该技术仍然局限在mlp这种浅层结构的模型。
4、目前,区间值时间序列预测模型的构建存在很大挑战。第一,目前应用于区间值序列预测问题的模型大多为浅层结构模型,在处理复杂数据时无法有效捕捉数据特征表示,对时序特征的拟合较差。第二,当前没有专门处理区间值数据的深度学习模型,大多模型本质上仍然是传统点值时间序列模型。lstm模型使用的循环结构和门控机制可以很好地解决时间序列预测中的长期依赖问题,因此有必要将lstm模型改造成适应区间值输入和输出的区间值长短期记忆网络模型(interval long-short-term memory network,ilstm),以解决区间值序列预测的问题。第三,在构建ilstm时,如何进行区间值数据间的乘法运算是非常关键的,但以往研究在设计区间值模型时并未对该问题加以重视。第四,为了处理区间值的输入和计算,需要将ilstm模型的权重和偏置参数设置为区间值,这意味着ilstm模型的参数空间相比于传统的lstm模型的参数空间要成倍扩张。由此,在一定的资源条件下,ilstm模型收敛到最优结果要比lstm模型更加困难。
技术实现思路
1、本发明旨在从模型层面提出创新的区间值长短期记忆网络模型(interval long-short-term memory network,ilstm),并提出基于迁移学习的预训练-微调的ilstm模型训练方法,进一步提高ilstm模型的预测精准度和稳定性。
2、第一方面,本发明提供了一种区间值长短期记忆网络模型构建方法:所述区间值长短期记忆网络模型ilstm(以下简称为ilstm模型)的输入、输出和参数均是区间数据;其中,输入代表n个样本,每个样本有d维特征分量,每个分量均是一个由[low,high]表示、维度为1*2的区间值;输出代表n个样本,每个样本输出都是一个1*2维的区间值;表示实数集;
3、ilstm模型的循环单元包括输入门、遗忘门和输出门三个门控机制;通过对循环单元进行循环设置,构建出复杂的、深层的ilstm模型;
4、所述遗忘门ft,用于控制上一时刻的单元状态ct-1需要遗忘多少信息;通过将当前t时刻的输入xt和t-1时刻的输出ht-1整合为一个单独的向量[ht-1,xt],并采用sigmoid函数进行非线性映射,然后输出一个向量ft,该向量的每个分量均是一个[0,1]范围的概率值;最后,通过与t-1时刻的单元状态ct-1相乘,完成对ct-1中信息的记忆与遗忘;其中,ct表示当前t时刻的单元状态,ht表示当前t时刻的隐藏状态或输出;
5、所述输入门it,用于控制当前t时刻的候选状态有多少信息需要记忆,通过与当前t时刻的候选状态相乘,控制的输入;
6、所述输出门ot,用于控制当前t时刻的单元状态ct有多少信息输出给隐藏状态ht。
7、作为优选,所述遗忘门ft,输入门it和输出门ot的计算逻辑为:
8、
9、其中,为σ为sigmoid激活函数;权重参数wf、wi和wo的形状为偏置参数bf、bi和bo的形状为遗忘门ft、输入门it和输出门ot的形状为s为隐藏层神经元个数;权重参数、偏置参数以及三个门控机制的输出均为三维张量,每个分量均为区间值;表示两个区间矩阵的乘法运算;
10、当前t时刻的候选状态是用tanh函数从整合后的向量[ht-1,xt]中将有效信息提取出来,创建一个新的候选值向量;
11、
12、其中,为权重参数,为偏置参数;两个参数的分量均为区间值;
13、当前t时刻的单元状态表示存储单元在t时刻后的记忆,由经过遗忘门的ct-1和经过输入门的相加得到;
14、
15、当前t时刻的隐藏状态或输出是由经过tanh函数处理后的单元状态与输出门相乘得到的;
16、
17、作为优选,在进行前向传播过程中,两个区间的乘法运算有三种方式,分别是点积、哈达玛积、区间值乘法。针对三维张量和两个分量x··2和w··2均为区间值,其点积、哈达玛积、区间值乘法的运算规则分别为:
18、
19、其中,i,j,k分别代表样本、维度和区间上下界的序号;xilm∈x,wljm∈w。
20、第二方面,本发明还提供了一种基于迁移学习的ilstm模型的预训练-微调训练方法,包括以下步骤:
21、步骤1:采用choquet积分将区间值时间序列数据转换为点值序列数据,然后利用转换得到的点值序列数据对点值lstm进行训练,获得点值lstm预训练模型;
22、步骤2:将点值lstm预训练模型的结构及参数进行迁移,用以初始化所述区间值ilstm模型的结构和参数;其中,点值lstm模型的结构用于设定ilstm模型的结构,将点值lstm模型的参数w构造为特殊的区间值[w,w],用于初始化ilstm的参数。
23、步骤3:在ilstm模型上采用随时间反向传播算法(bptt)对初始化后的所述区间值ilstm模型进行微调训练,学习更优的网络权重和区间型序列间的隐含关系,获得训练好的区间值ilstm模型。
24、作为优选,步骤3中,训练过程中采用的损失函数e(w)为:
25、
26、其中,n是训练样本数,w是模型的参数集合,为第n个样本的预测区间值,yn=[ynl,ynu]为第n个样本的实际区间值;l2为模型参数的正则项,用以防止模型过拟合;λ为正则化系数。采用随时间反向传播算法对损失函数e(w)进行梯度求导,得到各参数的梯度更新值,通过基于梯度的迭代优化算法,逐步调整模型参数,直至达到最优状态。
27、第三方面,本发明还提供了一种区间值长短期记忆网络模型构建系统,包括:
28、一个或多个处理器;
29、存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现所述的区间值长短期记忆网络模型构建方法。
30、第四方面,本发明还提供了一种区间值长短期记忆网络模型训练系统,包括以下模块:
31、模块1,用于采用choquet积分将区间值时间序列数据转换为点值序列数据,然后利用转换得到的点值序列数据对点值lstm进行训练,获得点值lstm预训练模型;
32、模块2,用于将点值lstm预训练模型的结构及参数进行迁移,用以初始化所述区间值ilstm模型的结构和参数;其中,点值lstm模型的结构用于设定ilstm模型的结构,将点值lstm模型的参数w构造为特殊的区间值[w,w],用于初始化ilstm的参数。
33、模块3,用于在ilstm模型上采用随时间反向传播算法(bptt)对初始化后的所述区间值ilstm模型进行微调训练,学习更优的网络权重和区间型序列间的隐含关系,获得训练好的区间值ilstm模型。
34、第五方面,本发明还提供了一种基于区间值长短期记忆网络模型的区间序列预测方法,采用所述方法构建的区间值长短期记忆网络模型,进行区间序列预测。
35、第六方面,本发明还提供了一种基于区间值长短期记忆网络模型的区间序列预测系统,包括:
36、一个或多个处理器;
37、存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现所述的基于区间值长短期记忆网络模型的区间序列预测方法。
38、相对于现有技术,本发明的有益效果包括:
39、1.本发明公开了具有区间值输入和输出的ilstm模型,并用来预测区间值序列。以往研究中大多利用浅层结构的机器学习模型,如imlp、msvr等,来预测区间值序列。然而,在处理复杂数据时,浅层结构的模型无法有效捕捉数据特征表示。事实上,具有深度结构的模型能更好地处理复杂数据,但很少用于区间值序列预测领域。本发明将lstm模型引入区间值序列预测问题中,将lstm模型改造成ilstm模型,利用lstm模型的循环结构和门控机制,能够有效地捕捉和建模区间值序列数据中的长期依赖关系以及复杂的非线性动态变化,提高区间值序列预测的精准度。
40、2.本发明采用三种区间计算法则(点积、哈达玛积和区间值乘法)增强ilstm模型对区间值数据的处理能力。以往的相关研究在设计浅层区间型模型时,基本只采用其中一种计算法则,未考虑其他的计算法则来处理区间值的计算过程。基于三种区间计算方式,实现了三种版本的ilstm模型,即ilstm_dot、ilstm_hada和ilstm_int。在ilstm模型内部,可以灵活调用不同的区间计算法则完成区间值的计算,提高了模型在实际应用中的泛用性。
41、3.本发明提出了一种基于迁移学习的ilstm模型的预训练-微调训练方法,提升ilstm模型的训练效率和预测性能。在序列预测的迁移学习相关研究中,大多是将预训练模型迁移至目标数据上进行训练得到最终模型。这种方法对于单值时间序列数据的模型有效,但是对于ilstm模型来说,由于模型的权重和偏置参数均为区间值,模型的参数量相比于单值模型是成倍扩张的,在有限的资源条件下,要使ilstm模型收敛到最优结果比较困难。因此,直接在源域数据上预训练ilstm模型也会比较困难。本发明提出在单值数据上训练lstm模型作为ilstm模型的预训练模型,然后将lstm模型的参数迁移至ilstm模型上,用以初始化ilstm模型的结构和参数。本发明提出的基于迁移学习的训练方式有助于提升ilstm模型的训练效率,提高ilstm模型在区间值序列预测任务中的预测精度。