一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于对抗训练和序数回归的金融时间序列分类预测方法与流程

2021-11-03 21:08:00 来源:中国专利 TAG:


1.本发明涉及金融时间序列分析领域,尤其涉及一种基于对抗训练和序数回归的金融时间序列分类预测方法。


背景技术:

2.在过去的二十年里,人们对时间序列的分类越来越感兴趣,国内外越来越多的学者加入到研究中。随着5g时代的到来,大数据与我们的生活息息相关,其中的时间序列数据更是无处不在,在金融行业、医疗行业、工业行业和气象中更是如此。时间序列分类(tsc)一直被认为是数据挖掘中最具有挑战性的问题之一。
3.随着时间序列可用性的增加,自2015年以来,已有数百种tsc算法被提出,大致分为以下几类:第一类,基于模型的分类方法,该方法首先为每条时间序列生成一个特定的模型,随后寻找模型之间的相似性来实现时间序列分类。如拟合回归模型、及核函数模型等。通常情况下,基于模型的分类方法一般都是针对具体的数据集进行相应的优化设计,因此不具有通用性。对于绝大部分数据集,单独使用基于模型的分类方法,分类效果并不理想,因此它们通常作为最终分类策略的一个子策略进行使用。第二类:基于全局特征的分类方法,基于全局特征的时间序列分类算法将整条时间序列作为一个完整的特征,通过计算整条时间序列之间的相似性来进行分类。通常情况下,基于全局特征的时间序列分类方法利用最近邻分类器(1nearest neighbour classifier,1nn)并根据不同序列之间的相似性计算结果进行分类。基于全局特征的分类算法又可以细分为以下两类:基于时间域距离的分类方法,该类方法主要通过计算不同序列之间距离的远近来反映时间序列之间的相似性,距离越近相似性越高,反之距离越远相似性越低。在该类方法中,两个基准距离计算方法为欧拉距离(euclidean distance,ed)和动态时间弯曲(dynamic time warping,dtw)已经被证明在大多数领域都是最佳的序列距离测量方法。同时还有其他研究者提出了其他的距离计算方式进行时间序列分类,在中,研究者对这些时间序列的距离计算方式进行了分析比较。第三类:基于局部特征的分类方法,众所周知,传统的基于特征的分类方法取决于准备的数据特征的质量,然而很难设计出较好的特征去发现不同时间序列数据中的特有属性,因此基于特征的方法准确率往往低于基于序列距离度量的方法,尤其是1

nn中的dtw方法,并且这两种方法在现实应用中都造成了过多的计算量。
4.深度学习已经成功地应用于各种需要时间序列数据的应用中,特别是在控制系统中。最近,深度神经网络被用于时间序列分类任务。多尺度卷积神经网络、全卷积网络和残差网络是利用卷积神经网络(cnn)进行单变量时间序列端到端分类的深度学习方法。mcnn采用降采样、跳采样和滑动窗口等方法对数据进行预处理。mcnn分类器的性能高度依赖于应用于数据集的预处理和该模型的大量超参数的调整。但是在金融时间序列利用深度学习进行端到端价格走势的研究还不是很多,因此,我们利用深度学习模型对关于金融时间序列的分类问题进行深入研究。
5.股票价格的走势大致可以分为三类(跌、平、涨),然而像年龄估计问题中一样,年
龄本身具有连续性,当作为标签的时候并不是互相独立不相关的,这与股票价格走势分类具有类似的意义,但是在模型的预测结果的准确度不高,容易出现将跌预测为涨或将涨预测为跌,从而造成巨大的损失。


技术实现要素:

6.本发明的目的就在于为了解决上述问题设计了一种基于对抗训练和序数回归的金融时间序列分类预测方法。
7.本发明通过以下技术方案来实现上述目的:
8.基于对抗训练和序数回归的金融时间序列分类预测方法,包括:
9.s1、建立对抗模型,对抗模型包括生成器和鉴别器;
10.s2、采集真实数据样本导入对抗模型,真实数据样本的时间序列归一化处理形成训练样本x,训练样本x为x={x1,x2,...,x
t
},提取真实数据样本的实际分类值x
real
作为验证样本;
11.s3、训练样本x输入生成器生成分类预测值x
fake

12.s4、分类预测值x
fake
和验证样本输入鉴别器,鉴别器判别分类预测值x
fake
的真伪;
13.s5、采用交叉熵损失函数分别计算鉴别器和生成器的损失值,优化对抗模型;
14.s6、获取最新数据导入优化后的对抗模型获得预测结果。
15.本发明的有益效果在于:将序数回归的思想用到了分类结果的优化中,针对具有现实意义的股票价格跌、平、涨的分类预测,在分类错误的情况下对将跌预测为涨,涨预测为跌以及平预测为涨的情况进行约束,提高分类预测方法的精准性,避免因预测准确性失误而造成巨大的损失,使得该对抗模型具有更好的实用参考价值,且该对抗模型不需要对数据或特征工程进行大量的预处理。
附图说明
16.图1是本发明基于对抗训练和序数回归的金融时间序列分类预测方法的对抗模型示意图;
17.图2是本发明基于对抗训练和序数回归的金融时间序列分类预测方法的生成器示意图;
18.图3是本发明基于对抗训练和序数回归的金融时间序列分类预测方法的鉴别器示意图;
19.图4是本发明数据实验分析收集到数据的走势图;
20.图5是本发明数据实验分析的指标走势图;
21.图6是本发明数据实验分析的混淆矩阵表;
22.图7是本发明数据实验分析的实验结果分析表。
具体实施方式
23.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施
例的组件可以以各种不同的配置来布置和设计。
24.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
25.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
26.在本发明的描述中,需要理解的是,术语“上”、“下”、“内”、“外”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,或者是本领域技术人员惯常理解的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的设备或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
27.此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
28.在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,“设置”、“连接”等术语应做广义理解,例如,“连接”可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接连接,也可以通过中间媒介间接连接,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
29.下面结合附图,对本发明的具体实施方式进行详细说明。
30.基于对抗训练和序数回归的金融时间序列分类预测方法,包括:
31.s1、建立对抗模型,对抗模型包括生成器和鉴别器,生成器由cnn

lstm设计,包括:
32.卷积层;卷积层用于提取时间序列的特征,卷积层的filters个数依次设置为256、128,卷积核大小为2,激活函数使用的是relu;
33.池化层;池化层用于将该时间序列特征进行池化操作,池化层的大小为2,;
34.lstm网络层;细胞个数依次为100、100;
35.droupout层;droupout层采用正则化方法避免生成器陷入过拟合,droupout层的值为0.2;
36.输出层;输出层输出跌、涨、平的三分类概率矩阵,输出层采用softmax激活函数;
37.鉴别器包括4层全连接层h1、h2、h3、h4,4层全连接层之间使用relu激活函数,最后一层全连接层使用softmax激活函数输出判别结果,四层全连接层的细胞个数依次为256、128、100、3,鉴别器在生成器输入的概率矩阵为假数据时输出0,鉴别器在生成器输入的概率矩阵为真数据时输出1。
38.s2、采集真实数据样本导入对抗模型,真实数据样本的时间序列归一化处理形成训练样本x,训练样本x为x={x1,x2,...,x
t
},提取真实数据样本的实际分类值x
real
作为验证样本,归一化处理后为其中为原始数据的均值,σ为原始数据的标准差,x
i
是由
11个特征组成的向量,
39.其中'close'、'high'、'low'、'open'、'rsi'、'adx'、'cci'、'fastd'、'slowd'、'willer'和'sma'分别表示收盘价、最高价、最低价、开盘价、相对强度指标、平均定向运动指数、顺势指标、快速确认线、慢速确认线、威廉指标、移动均线和可以参考talib指标计算。
40.s3、训练样本x输入生成器生成分类预测值x
fake
,具体包括:
41.s31、卷积层提取训练样本x的时间序列特征;
42.s32、池化层将时间序列特征进行池化操作;
43.s33、lstm网络层处理池化后的时间序列特征输出h
t
,h
t
=g(x);
44.s34、输出层通过softmax激活函数生成收盘价的跌、平、涨三类的概率矩阵记作分类预测值x
fake
,x
fake
=g(x),其中δ表示softmax激活函数,w
h
和b
h
表示全连接层中的权值和偏置。
45.s4、分类预测值x
fake
和验证样本输入鉴别器,鉴别器判别分类预测值x
fake
的真伪。
46.s5、采用交叉熵损失函数分别计算鉴别器和生成器的损失值,优化对抗模型,具体包括:
47.s51、s51、鉴别器采用交叉熵损失函数分别计算鉴别器的第一损失值loss
real
和第二损失值loss
fake
,loss
real
为鉴别器计算测试样本x与x
real
判别后鉴别器的损失值,loss
fake
为鉴别器计算x
fake
与x
real
的负样本标签之间的交叉熵损失,loss
real
=h(d(x
real
),c
t 1
),其中d(x
real
)表示鉴别真实的输入;
48.s52、根根据第一损失值loss
real
和第二损失值loss
fake
计算鉴别器在训练过程中的损失值d
loss
,d
loss
=loss
real
loss
fake
,其中m表示输入的序列长;
49.s53、计算生成器的损失值g
loss
,c
t
与分别表示鉴别器真实的输入和生成器得到的输入,c
t
与都是一个三分类概率矩阵,c
t
表示时刻t真实的数据标签,c
t 1
是下一时刻t 1的真实数据标签;
50.s54、根据鉴别器在训练过程中的损失值d
loss
和生成器的损失值g
loss
优化对抗模型的值函数v(g,d),d(x
fake
)表示生成器的输出作为鉴别器的输入,直到值函数v(g,d)达到一个被称作纳什均衡的平衡点。
51.s6、获取最新数据导入优化后的对抗模型获得预测结果,根据生成器生成的概率矩阵中的概率大小,最大的置为1,即得到该时刻对应的价格走势,其他置为0。
52.分类预测方法的数据实验分析:
53.从雅虎财经网站上选取了真实的股票交易数据来评估本发明的对抗模型,并且选取了几个经典的深度学习方法来作为对比方法。选取的股票数据为特斯拉汽车(tsla)股票股价,数据可以从雅虎财经上下载。这些股票包含了从记载开始到2021年5月27日的日数据,包含几千条数据。股票中包含了开盘价(close),最高价(high),最低价(low),收盘价(close)和交易量(volume)几个信息指标。通过收盘价(close)构建我们的标签数据,定义t
i 1,close

t
i,close
>μ时为涨,t
i 1,close

t
i,close
<θ时为跌,t
i 1,close

t
i,close
=λ时为平(0<i<n),其中μ,θ,λ>0为根据对应股票设置的参数。此外,先前的研究还广泛采用了由价格和交易量计算出的技术指标作为输入变量。本实验的输入变量初基本行情指标外,还选取了其他的11个技术指标。根据上述的技术指标作为输入变量,首先用z

score将数据归一化处理消除不同变量间量纲的影响;其中为原始数据的均值,σ为原始数据的标准差。我们的目的是预测接下来的一天股票收盘价的走势即跌、平、涨,通过过去t天的输入x
t
得到第t 1天的收盘价走势。在实验中,通过反复的实验尝试,将t取值为30,在本发明中,生成器的目的是挖掘真实数据的分布和走势从而得到收盘价的走势。真实数据被分为训练和测试两部分,在每只股票上,选取前85%

90%的数据作为训练集,剩下的(10%

15%)部分作为测试集,数据的分布走势将在图4中给出,选取了11个指标中的几个在图5中展现出来;
54.在本发明的对抗模型中,生成器的convlstm模块和判别器的mlp模块在所有实验中保持不变。通过超参数搜索,在8~256个细胞单元范围内找到convlstm细胞的最佳个数,训练的epochs通常保持在1000,但对于算法收敛时间较长的数据集中,训练时需要适当增大epochs。将初始的batch size设置为60,为了防止过拟合,在cnn层和lstm层后加入值为0.2的dropout层,本发明的对抗模型包括已有的对比实验方法都通过adam优化器进行训练,生成器的初始学习率为1e

3,最终学习率为1e

4,判别器的学习率设置为生成器学习率的1.2倍,所有的卷积内核都使用he等人提出的初始化方法进行初始化。每50epoch如果在验证集上的recall指标没有改善,学习率就会降低0.0005,直到最终学习率达到1e

4,对抗模型的训练采用带有tensorflow后台的keras库进行训练;
55.在二分类性能度量中,我们有tp(true positive)、fn(false negative)、fp(false positive)、tn(true negative),准确率(accuracy)、精确率(precision)、召回率(recall)、基于准确率和召回率的调和平均(harmonic mean)f1

score。在这里将对这些不进行详细说明,将这些指标拓展到多分类中,本发明的分类有三种:跌、平、涨分别记为1,2,3给出的混淆矩阵描述如图6所示。根据混淆矩阵可以得到如下分类性能指标:
56.1、macro

average
57.该指标是直接将不同类别的评估指标(precision/recall/f1

score)加起来求平均,该方法的特点是平等看待每个类别,但是会有类别个数较少的类影响,macro

precision=(p1 p2 p3)/3,其中(p表示precision);macro

recall=(r1 r2 r3)/3,其中(r表示recall);macro

f1

score=(fs1 fs2 fs3)/3,其中
(fs表示f1

score);
58.2、weighted

average
59.该指标根据类别不同来分配权重,每个类别与其权重相乘后在进行相加。该方法考虑了类别不平衡的情况,它的值更容易收到常见类的影响。权重与不同类别的数目比值为:w1:w2:w3=n1:n2:n3,其中w表示权重,n代表样本在该类别下的真实数目,,其中w表示权重,n代表样本在该类别下的真实数目,
60.3、每一类下的roc曲线面积auc(area under curve)
61.实验对比结果:
62.基于几个不同的对比方法,在tsla数据集上进行了详细的实验分析,根据上节评价指标中给出的多分类指标选取了macro,weighted,auc三类指标,其中auc指标包含了跌、平、涨每一类的分类性能描述,macro和weighted包含了对应的precision,recall,f1

score指标,详细的结果在图7中给出,本发明的分类预测方法对应表中的organ,organ是本发明在加入序数回归思想优化后的模型,从图7中得知经过序数回归优化后的模型organ在大部分指标上的表现都优于已有的深度学习方法,在数据集tsla上,organ在class2 auc上的指标达到了0.7698,相比于对比方法中最高的0.6126提升了0.1572,说明本发明分类预测方法的分类精度得到了提升;同时在其他的分类指标中,macro

recall指标提升了0.0649,weighted

recall指标提升了0.0124,weighted

f1

score指标提升了0.0290,需要注意的是上述数据描述都是在每个指标上选取其他方法中表现最好的与本发明进行对比。本发明的对抗模型中的生成器是convlstm,从图7中可以看到organ在数据集tsla上的9种指标上都有所提升,可见convlstm作为生成器加入到生成对抗网络中,在分类性能上相比于端到端的convlstm有所提升。
63.可知本方法在对金融时间序列运动走势三分类研究中较已有的模型有较大的提升,具有可观的实际应用前景。
64.本发明将序数回归的思想用到了分类结果的优化中,针对具有现实意义的股票价格跌、平、涨的分类预测,在分类错误的情况下对将跌预测为涨,涨预测为跌以及平预测为涨的情况进行约束,提高分类预测方法的精准性,避免因预测准确性失误而造成巨大的损失,使得该对抗模型具有更好的实用参考价值,且该对抗模型不需要对数据或特征工程进行大量的预处理。
65.本发明的技术方案不限于上述具体实施例的限制,凡是根据本发明的技术方案做出的技术变形,均落入本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献