APP下载

基于深度模型股指预测研究

2021-02-28董世鹏

现代信息科技 2021年16期

摘  要:在长短期记忆网络(LSTM)中引入自注意力机制应用于股票指数预测中,使模型可以处理不同时期的权值,加强了模型对历史数据趋势信息的提取能力。利用LSTM和Attention机制结合的LSTM-Attention神经网络应用于股票预测,对沪深300指数近10年数据进行预测研究。实验结果表明,在LSTM改进的神经网络LSTM-Attention的预测效果优于传统LSTM神经网絡模型的预测效果。

关键词:自注意力机制;股票指数预测;长短期记忆网络

中图分类号:TP181                   文献标识码:A文章编号:2096-4706(2021)16-0100-03

Research on Stock Index Forecast Based on Deep Model

DONG Shipeng

(Hebei University of Economics and Business, Shijiazhuang  050061, China)

Abstract: The introduction of the self-attention mechanism in the Long Short-Term Memory (LSTM) is applied to the stock index prediction, so that the model can handle the weights of different periods, and it strengthens the model’s ability to extract historical data trend information. The LSTM-Attention neural network combined with the LSTM and Attention mechanism is applied to stock forecasting, and the data of the Shanghai and Shenzhen 300 index in the past 10 years is used for forecasting research. The experimental results show that the prediction effect of the LSTM-improved neural network LSTM-Attention is better than that of the traditional LSTM neural network model.

Keywords: self-attention mechanism; stock index prediction; Long Short-Term Memory

0  引  言

股票指数又名为股票价格指数,是一种由证券交易所或金融服务机构编制的反映股市行情的参考数值,可以作为一个国家经济形式的综合反映。由于我国股票市场多为散户,易受到多种因素的影响,致使股票市场内部变化规律繁杂,稳定性差,造成股票价格剧烈波动[1]。因此,如果能对股票价格进行较为准确的预测,引到股市良好的运行,最终将为金融市场的健康发展打下较为牢靠的基础。

金融市场的预测方法大体上可分为基于时间序列模型的预测方法和基于机器学习的预测方法。但由于股票数据具有高噪声、高不确定性、非线性和非平稳性等特定,使得传统的时间序列预测模型难以精确预测股票指数的变化[2]。因此本文主要是基于机器学习预测模型进行股票指数预测。

1  研究方法

1.1  LSTM模型基本理论

LSTM神经网络是一种循环神经网络,主要是为了解决时间序列数据在训练过程中的梯度消失和梯度爆炸的问题,相比于BP神经网络,LSTM神经可以在更长的序列中取得更好的效果,能够对有价值的信息进行长期的记忆[3]。LSTM凭借强大的特征提取和长时期数据处理能力在图像数据和时间序列数据的预测任务中得到了成功应用。

LSTM神经网络是一种特殊的RNN,在原来的RNN上的基础上加入三个门:输入门、遗忘门与输出门,巧妙地解决了RNN在长时序序列预测中存在的梯度爆炸与梯度消失的问题。输入门控制新的信息选择性的记录到细胞状态中;遗忘门控制新状态的前一步记忆单元中的信息选择性的遗忘;输出门则控制当前的输出在多大程度上取决于当前的记忆单元。

由上述分析我们可以看出LSTM可以处理部分长序列数据的问题,通过三个门的控制以实现控制前一单元对当前单元的影响程度,加强了模型的预测能力。

1.2  LSTM-Attention基本理论

注意力集中模型是一种模拟人脑注意力的模型,该模型借鉴了人们在某个时刻对某一事物的关注会集中到某一个特定的地方,而减少甚至忽略了对其他部分的注意力。注意力集中模型通过对某些部分关注度的不同,使得模型的输入特征赋予不同的权值,突出更为关键的影响因素,帮助模型更加准确的判断。

Attention机制的基本思想是,打破了传统编码器-解码器结构在编码时都依赖于内部一个固定长度的向量。在特征关联分析方面,利用LSTM神经网络模型分析前一刻隐藏状态输出和当前时刻的输入特征,通过多层感知机构建的注意力机制模型分析得到每一步的权值,来反映当前各输入特征对预测信息的重要程度,提高模型的预测效果[4]。

在股票市场中,对股票价格的影响因素各种各样,它们时刻对股票价格产生影响。为了探索这些因素对股票价格影响的高低程度,本文在传统的LSTM神经网络模型上引入Attention机制,采用多层感知机的方法对各特征的影响力进行权值的量化[5]。加强了LSTM神经网络对历史数据的提取能力,使预测效果更加精准。

2  实验与分析

2.1  数据集介绍与数据预处理

本文选取沪深300近10年连续数据作为研究对象,选取2011年1月1日至2020年12月31日(除去节假日)内共包含2 432组股票价格数据的股票价格作为研究样本。共包含6个变量分别为:开盘价、收盘价、最高价、最低价、交易次数、金额。本文为了模型泛化误差,选取后500组数据作为预测组,前1 932组数据作为训练组。在将数据输入到模型之前还需要对数据进行归一化以消除量纲,从而提高模型的性能,本文所选取的数据归一化方法为最大最小归一化。

对所有股票数据进行处理,生成时间序列数据,维度为(L,M,N),其中M表示样本数,N表示总特征数,L表示序列长度,即已知的前L天的数据,用前L天的数据来预测后一天收盘价。

2.2  评估指标

为了评估模型的预测能力,本文选取了三种评估指标,分别为均绝对误差(MAE)、均方误差(MSE)、平均绝对百分比误差(MAPE)。其中平均绝对误差(MAE)是所有单个观测值与算数平均值的偏差的绝对值的平均值。MAE可以避免误差相互抵消的问题,因而可以准确反映实际预测误差的大小。均方误差(MSE)是各数据偏离真实值差值的平方和的平均数,也就是误差平方和的平均数。范围[0,+∞),当预测值与真实值完全相同时为0,误差越大,该值越大。平均百分比误差(MAPE)常用于衡量预测准确性的统计指标。

2.3  实验结果与分析

本文首先应用LSTM神经网络对沪深300指数进行训练模型与预测,最終所得到的LSTM模型结构及各项参数为:测试窗口序列长度为10,模型共包含2层LSTM层,各层的神经元个数分别为64、10,为避免过拟合,增加两层Dropout层,最后经过2个ReLU激活函数,输出数据维度为1。将此训练集输入到LSTM神经网络模型中通过不断调整权值达到期望输出最终输出结果。由表1的评估指标可以看出LSTM模型在训练集上的评估指标较小,可以用于沪深300指数预测。下一步应用上一步训练好的LSTM模型测试测试集的预测效果,其预测效果如图1所示。从中可以看出该模型总体预测效果较好,但是在极值点的预测效果较差。

本文应用LSTM-Attention神经网络对沪深300指数进行训练预测,训练步骤如下:首先对沪深300数据进行数据预处理、数据归一化,然后将输入的时间序列数据输入到原始的LSTM网络中,经过三层LSTM层后,将前一刻LSTM网络的隐藏状态ht-1和当前时刻输入特征xMt作为特征注意力机制的输入,通过当前时刻的各特征进行权值的计算,将得到的权值于前一时刻的输入进行相乘得到新的网络输入,通过不断调整某一时刻的权值来自适应相关特征的影响力,直至达到最佳状态输出预测值、保存模型[6]。

沪深300指数开盘价、最高价、最低价、交易次数、金额作为输入变量,收盘价作为输出变量。首先通过Python软件LSTM-Attention模型对沪深300训练集进行训练,输入层为5个指标,输入层为1个指标。初始权值采用随机数,训练样本一共1 932组,预测样本500组,网络训练初始误差较大,因此设定样本学习结果条件误差精度e=0.01,训练样本500次。通过不断修正隐含层节点,得到最终训练模型,由表1可以看出LSTM-Attention的评估指标更小。模型训练结果良好。下一步,通过利用上一步训练好的LSTM-Attention模型进行预测,其预测模型效果图如图2所示,可以看出模型在测试集中的前期预测效果较好,但是在后期存在一些预测误差。

使用训练集分别在BP神经网络、LSTM神经网络、LSTM-Attention神经网络上进行训练研究,通过不断改进模型参数使其预测效果更加准确。利用测试集进行模型的验证,不同模型预测精度如表1所示。

综上所述,通过上述分析我们可以大体上可以判断出LSTM-Attention神经网络预测效果大于LSTM神经网络。通过比较LSTM、LSTM-Attention我们可以看出预测效果都还不错,但是LSTM神经网络在预测股票有重大转折点时预测效果较差,尤其是在测试集数据为200~300之间预测效果较差。而当我们在将Attention机制模型与LSTM神经网络模型结合后,Attention机制可以根据实际情况而给予不同的时间维度以不同权值,关注每一时刻的重要信息,使得LSTM-Attention神经网络模型的预测效果最后。因此,本文最终选取LSTM-Attention作为我们的股票指数预测模型,该模型在测试集上的MAE为0.008 352 39,MSE为0.000 158 05,MAPE为2.576 957 30。

3  结  论

本文应用深度学习理论,基于金融时间序列数据,使用LSTM神经网络、LSTM-Attention神经网络分别进沪深300指数进行预测,实验结果显示LSTM-Attention神经网络预测效果较好。作为LSTM模型给改进结构,LSTM-Attention继承了LSTM在处理长时期时间序列模型的优点,又进一步解决了不同时期对当前时期的影响程度,提高了预测的精度,其预测效果优于传统的LSTM神经网络模型。

由于中国股市中散户占据股票市场的大半部分,而这其中又很容易受到外界其他因素的影响,因此本文下一步工作将考虑这些因素对股票指数的影响(如股票网站、论坛)。通过提取这些网站中股票变动的重大事件中的语言文字等相关信息,将其加入股票指数预测模型中,以进一步提高模型对股票指数的预测精度,使管理者可以更好地规划股票市场,提高中国的市场经济。

参考文献:

[1] 赵岩,杨立洪.基于CCA-BP神经网络的股票价格预测研究 [J].统计与管理,2020,35(3):66-69.

[2] 张康林,叶春明,李钊慧,等.基于Pytorch的LSTM模型对股价的分析与预测 [J].计算机技术与发展,2021,31(1):161-167.

[3] 陈可心.基于深度神经网络的股票走势预测研究与应用 [D].南京:南京邮电大学,2020.

[4] 李昭昱,艾芊,张宇帆,等.基于attention机制的LSTM神经网络超短期负荷预测方法 [J].供用电,2019,36(1):17-22.

[5] 赵红蕊,薛雷.基于LSTM-CNN-CBAM模型的股票预测研究 [J].计算机工程与应用,2021,57(3):203-207.

[6] 徐月梅,王子厚,吴子歆.一种基于CNN-BiLSTM多特征融合的股票走势预测模型 [J].数据分析与知识发现,2021,5(7):126-137.

作者简介:董世鹏(1996.07—),男,汉族,河北邯郸人,研究生在读,研究方向:数据科学。