APP下载

基于股票预测的Seq2Seq RNN和LSTM模型比较

2019-01-03

时代金融 2018年35期
关键词:梯度编码神经网络

王 钧 张 鹏 袁 帅

(宁夏大学,宁夏 银川 750021)

一、引言

随着我国市场经济的快速发展,股票作为金融产品的重要部分,不仅是人们生活水平的体现,也是市场经济的“晴雨表”,对股票走势的预测已成为研究者越来越关注的课题[1]。因此,不论是对政府宏观管理,还是对于投资者都有很强的现实意义。

人工智能技术的快速发展,基于深度神经网络对金融市场进行研究成为该领域研究的热点。考虑到金融数据的时序性,RNN和LSTM神经网络存在梯度消失、过拟合等问题,本文使用Seq2Seq模型对股票时序数据进行预测。在相同的条件下,通过多组对比实验,研究影响模型精度的因素,以此来提高模型的预测精度,根据实验结果发现Seq2Seq对于不定长的序列数据具有更好的预测性能。

二、 相关理论基础

(一)RNN神经网络模型

递归神经网络(RNN)是一类由各单元连接形成的有向循环的神经网络,它是前馈神经网络在处理时间序列数据的延伸,通过各单元之间的连接,RNN神经网络可以存储神经元当前时刻的输入和前一时刻的输出关系。[2]根据这一性质,时间序列信息可以在该网络模型中循环任意长时间。

循环神经网络(RNN)模型包括输入层、输出层、隐藏层。每个节点表示序列中,代表RNN网络的一层,当给定输入向量序列计算隐藏层的一组序列通过迭代下列公式中的输出序列

(二)LSTM神经网络模型

长短时间记忆网络(LSTM)是一种基于递归神经网络(RNN)模型的改进,它由一组特殊的记忆模块单元替换递归神经网络的隐藏层神经元,这些模块可以记忆隐藏层的任意时间状态,从而解决梯度消失等问题。当使用长短时间记忆模型进行相应数据反向传递时,使得序列数据在循环神经网络中很长一段时间的学习,从而保证信息进行远距离传递,将误差保持在更为恒定的水平。

通常长短时间记忆单元模块包括输入门、输出门、遗忘门和记忆单元。根据门用进行保存和调节存储单元和环境之间的相互作用,这样保证存储单元的状态从一个单元到另一个单元保持不变。当信息通过长短时间记忆模型的门控制单元,记忆单元根据们开关控制信息进行增加、修改、删除。LSTM网络通过递归方程更新网络单元,激活从输入到输出的映射。

(三)Seq2Seq网络模型

不论是RNN网络模型,还是长短时间记忆(LSTM)网络模型,它们都存在处理固定长度序列数据的限制。为了解决不定长的序列数据提出了Seq2Seq模型,该模型将一个序列作为输入映射到另一个输出序列时,主要完成编码输入与解码输出两个基本环节。其中:编码端根据输入序列数据进行编码,并在网络末端输出编码后的状态。解码端接收编码端最后的状态,将其作为初始状态,同时解码得到的每一步输出值是下一步的输入值。因此Seq2Seq模型训练过程能够更好的学习数据之间时序关系,也能够有保持更强的鲁棒性。

解码层采用此编码的特征向量,并生成标记的输出序列。此层通常也用RNN架构(LSTM或RU)构建。

当使用固定序列的情况下,通过编码器-解码器框架进行整个模型的联合训练,获得目标序列的概率最大化。但是由于固定长度编码的特征向量包含信息数量的限制,Seq2Seq模型性能会随着源序列长度的增加而降低。为解决此问题,Bahdanau等提出了关注机制。在关注机制中,解码器试图在编码器序列中查找最重要信息所在的位置,并使用该信息和以前解码的单词来预测序列中的下一个标记,如下图所示:

图1 关注机制结构

三、 实证分析

(一)选取样本

实验数据来源于tushare提供的数据接口,收集相关数据进行验证分析。为了使得测试数据具有代表性,选取上证50指数成份股所在股票于2015-01-01至2017年12月30日作为测试集评估数据,在每一轮的训练中,过去5天的数据构造的输入序列的80%作为训练集,20%作为验证集,随后3个月的数据构造的序列作为测试集。根据其历史交易数据,预测未来5天的价格趋势。

本实验采用tensorflow作为深度学习框架,实验环境在E5-2620v4双CPU、内存为64GB操作系统为Ubuntu18.04的的PC机上进行。

(二)评价指标

为了评估预测模型的性能,本文选取了平均绝对误差(Mean Absolute Error,MAE)、平均绝对百分误差(Mean Absolute Percentage Error,MAPE)和标准误差(Root Mean Square Error,RMSE)三个指标衡量模型的预测精度,其中:

(三)实验结果

本实验将Seq2Seq网络与传统的RNN,LSTM神经网络进行对比分析,并在次基础上使用Seq2Seq+attention模型进行优化。传统RNN模型的准确率只有78.36%,比LSTM模型的准确率低了5个百分点,随着训练次数的增加,RNN模型几乎没有改进,模型出现了梯度消失,而LSTM模型可以改善梯度问题。LSTM神经网络可以解决传统RNN容易梯度消失的问题。从LSTM模型的准确率只有82.69%,比Seq2Seq模型的准确率低了3个百分点。虽然LSTM神经网络从理论上说具备了时序性,当输入不定长时序的信息,LSTM也容易出现梯度消失问题,此时LSTM网络并不具备任何优势。但是采用Seq2Seq网络模型进行不定场时间序列信息进行预测的情况下,其预测的精度明显高于LSTM神经网络,也说明了Seq2Seq模型对不定长序列具有一定的优势。

综上,相比于传统RNN与LSTM网络,Seq2Seq深度神经网络能够有效解决不定长序列数据的梯度消失问题,并且能够提高预测精度,对于股市时间序列的预测具有明显的优势。

(四)模型验证及对比

为了比较4种网络模型的性能,将每个模型对上证50成分股数据做训练与预测,设定每个模型epoch为100,通过训练输出每只股票未来5天的价格趋势,和该模型预测输出的RMSE值。下图为选取中信证券(600030.SH)作为分析对象。

(d)seq2seq+attention预测价格

通过图(a)到图(d)综合分析得知,RNN和LSTM网络模型在股价波动较大的时段预测输出与实际输出现严重偏离,而且预测效果比较差。基于Seq2Seq神经网及其优化模型对上证50成分股指数预测效果,比其它两种网络模型效果较好。

四、 结论

本文选取A股上证成份指数,使用RNN、LSTM、Seq2Seq及其优化模型进行股票价格短期预测,核心内容主要引入Seq2Seq及其优化模型,并使用该网络模型对数据进行挖掘学习。实验表明,深度学习能够更好的发现和利用数据之间的相互作用。同时,通过使用Seq2Seq网络模型提高了预测的准确性,并且在解决不定长时间序列的数据方面更有优势。虽然Seq2Seq模型的损失值比较高,但是Seq2Seq模型能较好的预测金融时间序列的趋势,并且在数值上也与真实的金融时间序列较为接近,提高该模型的预测精度是未来研究的重点。

猜你喜欢

梯度编码神经网络
一个改进的WYL型三项共轭梯度法
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
一种自适应Dai-Liao共轭梯度法
子带编码在图像压缩编码中的应用
神经网络抑制无线通信干扰探究
一类扭积形式的梯度近Ricci孤立子
Genome and healthcare
基于神经网络的拉矫机控制模型建立
复数神经网络在基于WiFi的室内LBS应用