CN113129148A - 一种融合生成对抗网络与二维注意力机制的股票预测方法 - Google Patents

一种融合生成对抗网络与二维注意力机制的股票预测方法 Download PDF

Info

Publication number
CN113129148A
CN113129148A CN202110408642.5A CN202110408642A CN113129148A CN 113129148 A CN113129148 A CN 113129148A CN 202110408642 A CN202110408642 A CN 202110408642A CN 113129148 A CN113129148 A CN 113129148A
Authority
CN
China
Prior art keywords
data
stock
generator
sequence
discriminator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110408642.5A
Other languages
English (en)
Inventor
李妮
姚力炜
龚光红
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN202110408642.5A priority Critical patent/CN113129148A/zh
Publication of CN113129148A publication Critical patent/CN113129148A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Biophysics (AREA)
  • Finance (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Technology Law (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种融合生成对抗网络与二维注意力机制的股票预测方法,包括:获取驱动因子的历史序列数据作为股票序列输入;对历史序列数据进行数据预处理;将预处理后的历史序列数据划分为训练集和测试集,进行标准化处理,生成二维数据序列输入;对二维数据序列输入进行空间注意力加权;对经过空间注意力加权后的二维数据序列输入进行时间注意力加权;构建基于二维时间空间注意力机制的股票预测初步模型,作为生成器;修改生成器的输出部分结构,得到新生成器;基于新生成器和生成对抗网络判别器建立股票预测模型;构建股票预测模型的优化目标,得到最优的股票预测模型。本发明可以产生更为精准、更为理想的股票价格预测结果。

Description

一种融合生成对抗网络与二维注意力机制的股票预测方法
技术领域
本发明属于股票预测领域以及时间序列趋势预测领域,特别涉及一种融合生成对抗网络与二维注意力机制的股票预测方法。
背景技术
股票市场作为金融行业的支柱之一,发挥着资本积聚与资本流通的作用。利用既有信息进行股票序列预测不仅仅有利于投资者做出合理的投资决策,获取稳定合理收益,规避过高投资风险,而且有利于提高资本市场有效性,促进资本合理有效分配。
股票市场是一个受到经济、政治、产业结构等多方面因素共同作用的社会复杂巨系统,因而股票价格瞬息万变且影响因子错综复杂。典型的股票预测难点包括:非平稳性,金融时间序列(FTS)是非平稳时间序列;非线性,金融时间序列具有的高度非线性使得传统的多元回归与线性回归均不适用;高噪声性,较高的白噪声使得时间序列往往需要经过预处理才能够代入模型计算。金融时间序列的以上特性使得股票预测成为一个非常具有挑战性的、广受人们关注的研究课题。
影响股票价格的因素主要包括宏观因素(经济、政治因素)、产业和区域因素、公司因素、市场因素、人为因素和心理因素。在有效市场假说(EMH)不成立的情况下,沿用至今的主流股票价格预测方法大致可以分为基本面分析法和技术分析法两类。基本面分析法关注宏观经济政策、企业基本盈利状态、行业发展前景等方面,影响因素难以定量,且大多处于一个长期的经济周期中,需要实时跟踪。技术分析法是依赖量化指标来研究价格走势的方法,主要依靠股票量化指标,如开盘价、收盘价、交易量等来预测股票价格,相对基本面分析法来说,技术分析法更加注重市场本身的运行规律,适合短期分析。技术分析法基于历史数据代表市场发展过程、价格变动具有趋势自影响性两个基本假设。
早期的股票预测时间序列方法多采用传统线性模型,传统线性方法基于统计学构建模型,如自回归移动平均模型(ARIMA)、广义自回归条件异方差模型(GARCH),上述方法往往需要进行平稳性等检验,然后再进行数据预处理,并且缺乏对于非线性股票序列的良好预测能力。
为此,研究者尝试使用经过非线性拓展的支持向量机(SVM)来预测股票价格,预测流程包括特征选择与模型预测,模型的泛化能力得到了提升;前馈多层感知机也被应用在股票预测中,显著提升了股票预测准确性,人工选择特征因子及采取PCA降维等策略在上述过程中可以有效提升模型表现。
近年来,深度学习方法取得了突飞猛进的发展,在愈来愈多的领域发挥了重要作用。学者们应用卷积神经网络、深度强化学习网络、循环神经网络、知识图谱等技术来进行股票预测并在此基础上研究构建了面向股票预测的深度学习网络,如深度广域神经网络(DWNN)、基于时间卷积网络的知识驱动方法(KDTCN)等等。
特别地,循环神经网络(RNN)中前一时刻的隐藏层输出会作为下一时刻输入的一部分,可以将不同时刻间的信息前后关联,因而在解决时间序列分析与预测问题时具有显著优势。随着时间序列长度增加,反向传播误差梯度可能在经历多个时间步后逐渐消失弥散,这使得循环神经网络在较长时间序列下的表现乏善可陈。长短期神经记忆网络(LSTM)利用额外的门控结构来控制信息流的流动,一定程度上缓解了上述梯度消失的问题。
注意力机制起源于对人类视觉观察机理的研究,人眼在对视野进行快速扫描后将聚焦于重点关注区域的细节之上,而对重点区域之外视野自动进行模糊,从而提升观察检索效率,舍弃较为不关键的信息。近年来,注意力机制发展迅速,成果斐然,被广泛应用于自然语言处理、计算机视觉等领域,辅助提升了模型表现。有学者将注意力机制与编解码器结构进行结合,提出了一种基于双阶段注意力机制的循环神经网络,在股票预测上取得了进一步的突破。
生成对抗网络(GAN,Generative Adversarial Networks)是一种深度学习网络模型,最早由Lan Goodfellow于2014年提出,其优化过程是一个极大极小博弈的问题,优化目标是达到纳什均衡。生成对抗网络包含生成模型G与判别模型D两部分,两者一般均为拟合能力很强的非线性映射函数,例如多层感知机,卷积神经网络等,其中生成模型G是一个生成网络,通过接受噪声产生伪造数据,用于获取样本数据分布;而判别模型D接收输入样本数据,用于判断并给出数据来自训练样本或是生成样本G的概率。与其他生成式模型比较,GAN具有以下优点:通过对抗博弈可以产生更好样本;生成对抗式网络可以训练任何一种生成器网络;不需要遵循任何因式分解模型;无需在学习过程中进行概率计算。GAN目前已被应用于图像风格迁移、图像转换、数据集样本扩增、图像修复、超分辨率图像生成、视频生成、文本生成等众多场景。
目前应用于解决股票价格预测问题的时间序列预测方法仍存在缺陷,股票预测的效果有待进一步提升,需要针对问题加以改进。
从股票预测的输入指标来看,当前学者们对于上证综指等综合股指的股指预测以及对于单个股票的股票价格预测多致力于采取更加强力的技术手段来选取尽量多的数据指标进行预测,例如股票市场开盘价、收盘价、成交额等。在这些研究中,学者们对于国际汇率、存款利率等宏观指标研究较少,而上述宏观指标对于预测大型综合股指波动,预测对外贸易依存度较高的贸易企业股票价格变化,预测较长时间维度下的股票价格走势,预测复杂国际局势譬如贸易战下的股票市场变化具有显著意义,因此有必要探索构建融入国际汇率与存款利率的股价预测方法。
从金融时间序列预测的实施方法来看,目前常用的长短时记忆循环神经网络(LSTM)具有较大局限性,无法很好地解决对于预测窗口内不同时间步权重的分配。
同时,为了融入更多的预测信息,提升模型拟合与逼近的上限,人们往往从历史股价、财务报表甚至社交媒体的文字信息中生成大量被称为“因子”的数值化变量来预测未来股价。然而,简单的因子堆叠不能够持续地提升模型的表现,在加入一部分因子后,预测效果甚至会变差。这是因为不经过有效性检验的预测因子事实上可能与股票价格的预测目标关联程度有限或者很低,在这种情况下次要因子的加入等价于加入了大量的无效干扰信息,有用信息反而被有害噪声淹没,这个问题亟待解决。
从生成式模型的角度来看,股价预测模型可以认为是一个逼近高维输入数据分布的生成式模型。一方面,中国股票市场历史仍然不够悠久,日交易数据仍然偏少,容易发生模型的过拟合,学者们因此往往采用正则化或者Dropout等方法来改善模型表现;另一方面,当前主流方法注重于生成模型的构建,试图通过引入数据驱动的深度学习方法,通过数据预处理改善数据质量来提升生成数据质量,而没有尝试在后端串联引入判别模型来进一步提升生成模型的表现。生成对抗网络融合了对抗博弈的思想,本质上相当于一个目标评判函数不断动态改变的神经网络,而评判准则的适度改变有助于生成模型效果的不断提升。生成器与判别器不断迭代,教学相长,相互促进,既降低了判别器输入数据的构建难度,也提升了生成器生成数据的判别准则质量。因此,构建引入生成对抗网络来进一步提升股票预测模型表现的模型方法与流程是非常新颖且有益的探索。
发明内容
针对上述问题,本发明提出了一种全新的股票预测模型以产生更为精准、更为理想的股票价格预测结果。本发明构建的模型是一种融合宏观指标的,基于空间、时间二维注意力机制与生成对抗网络的股票预测模型(A New Method of Stock Price PredictionCombing Macroeconomic variables,Merging Generative Adversarial Network andTwo-Dimensional Attention-based LSTM),以下简称为SALE-GAN。SALE-GAN的概念模型可以简单划分为数据准备与预处理部分,一维卷积神经网络部分,包含空间与时间二维注意力机制的长短时记忆神经网络部分与基于多层感知机网络的判别器层,前三部分总和即为股票预测结果生成部分,作为整个生成对抗网络中的生成器存在;基于多层感知机网络的判别器负责鉴别数据来自真实样本或是来自上述生成器生成,并在级联训练中予以反馈以提升生成器的股票预测数据生成效果。
为实现上述目的,本发明提供了一种融合生成对抗网络与二维注意力机制的股票预测方法,包括如下步骤:
S1:确定待预测目标的驱动因子,获取历史驱动序列数据,其中,驱动因子包括股票本身序列、投资者关注序列以及宏观经济序列;
S2:对步骤S1中获取的历史驱动序列数据进行数据预处理,包括异常值分析、数据缺失值处理与数据整合;
S3:将步骤S2中预处理后的历史驱动序列数据划分为训练集和测试集,对训练集和测试集中的数据进行标准化处理和数据平滑处理,生成二维数据序列;
S4:对生成的二维数据序列进行空间注意力加权;
S5:对经过空间注意力加权后的二维数据序列进行时间注意力加权,获得经过时间、空间二维注意力加权后的二维数据序列;
S6:将所获得的二维注意力加权后的二维数据序列,馈入长短时记忆神经网络,构建基于二维时间、空间注意力机制的股票预测初步模型;
S7:修改步骤S6中所构建的股票预测初步模型的输出部分结构,构建生成器,利用所述生成器依次预测未来多个时间步的待预测目标股价和驱动序列数据,并将这些预测数据整合成生成对抗网络判别器的输入数据;
S8:基于步骤S7中生成器和生成对抗网络判别器建立股票预测模型,将生成器生成数据和训练集真实数据输入生成对抗网络判别器,生成对抗网络判别器输出来自生成数据或者真实数据的概率判断结果;
S9:构建所述股票预测模型的优化目标,对其进行迭代交替训练,并在训练过程中调整股票预测模型的超参数,之后利用测试集数据对股票预测模型进行测试,得到最优股票预测模型;
S10:将待预测目标的驱动序列数据输入最优股票预测模型,得到待预测目标的预测值。
进一步,步骤S1中,所述股票本身序列包括每个交易日的开盘价、收盘价、最高价、最低价、总交易量与总交易额;所述投资者关注序列包括换手率、百度指数和财经新闻投资者情感指数;所述宏观经济序列包括汇率和基准利率。
进一步,所述财经新闻投资者情感指数以投资者社区中相关股票的提及次数的加权和来度量,具体过程如下:
采用自然语言处理方法分析投资者社区中的待预测股票相关评论,得到正面情绪的评论数量C+与负面情绪的评论数量C-;计算正面评论与负面评论数量比例即为财经新闻投资者情感指数
Figure BDA0003023294690000061
以表征投资者对于目标股票的投资情绪倾向。
进一步,步骤S2具体过程为:
1)对于股票本身序列数据
首先计算所获得股票本身序列数据的数据条数与对应时间跨度交易日数量是否一致,如果一致,说明不存在缺失值,如果不一致,则从其他渠道寻找补全缺失数据,若仍未能找到,删除此交易日;随后,采用遍历算法,依次求解每一个交易日相对于前一个交易日的涨跌幅度,筛选出变化幅度超过5%的交易日,对于变化幅度超过5%的交易日,从其他公开数据源进行查找替换,如果是由于股票分红导致数值断崖不连续,则对该交易日按照实际情况进行复权处理;
2)对于投资者关注序列数据
第一步为异常值检测和缺失值补全,在这一步保留所有时间数据而并非仅仅交易日;第二步为时间步长加权,考虑到节假日休市期间投资者仍会进行广泛讨论,采取4个时间步长加权,而且投资者关注度会出现时序延迟,前一时间步的关注指数往往决定了当前时间步的投资决策,应用历史序列数据构造新的序列,对于所有的时间步,百度指数与财经新闻指数对应计算公式:
Xt=0.1*Xt-4+0.2*Xt-3+0.4*Xt-2+0.3*Xt-1
其中,Xt表示第t时间步的加权后待预测目标的投资者关注序列数据、Xt-4、Xt-3、Xt-2、Xt-1分别表示第t-4,第t-3,第t-2,第t-1时间步的历史序列数据;
3)对于宏观经济序列数据
先后执行异常值的检测、缺失值的检测与补全;缺失值的处理方法包括直接删除、补齐和不处理三种策略;对于利率和汇率采取补齐策略,即令缺失数值与之前最后一个非0数据数值保持一致。
进一步,步骤S3中,所生成的二维数据序列输入为二维输入矩阵X:
X=(x1,x2,x3,......,xm)=(x1,x2,x3,......,xT1)T
xm∈RT1,xT1∈Rm
其中,xi,i=1,2,...,m,表示第i个驱动因子的序列数据,m为驱动因子个数;xt,t=1,2,...,T1,表示第t时间步,T1为时间窗口长度,是超参数。
进一步,步骤S4和S5中,进行空间注意力加权和时间注意力加权时,按照Additive注意力分数计算方法、General注意力分数计算方法和Scaled Dot-Product注意力分数计算方法中适合情境的任意一种方法计算注意力分数。
进一步,步骤S7具体过程如下:
将步骤S6中构建的基于二维时间空间注意力机制的股票预测初步模型做出如下预测变换:
Figure BDA0003023294690000081
其中,
Figure BDA0003023294690000082
为依据前T1个时间步的历史驱动序列数据,应用股票预测初步模型预测生成的第T1+1时间步的待预测目标的预测股价;y为对应一个时间窗口T1的待预测目标的真实股价;
对二维输入矩阵X进行更改,X将不仅仅包含驱动因子,还包括待预测目标的股价,此时X的维度将转化为(m+1)*T1;
修改股票预测初步模型的非线性全连接层,将其输出对应修改为向量而非对应的股价预测标量,即在长短时记忆神经网络LSTM最后输出隐藏层状态后,引入两层全连接层以将其映射到与期望输入等长的向量,激活函数采用ReLU函数,构建生成器;利用所述生成器依次预测未来多个时间步的待预测目标的股价和驱动序列数据,并将这些预测数据整合成生成对抗网络判别器的输入数据。
进一步,步骤S8中,
生成数据构造如下:
Figure BDA0003023294690000083
其中,Xfake为生成数据;
Figure BDA0003023294690000084
为生成器预测出的第t+1时间步的驱动序列数据;
真实数据构造如下:
Xreal=[x1,x2,......,xt,xt+1]
Xreal,Xfake∈R(m+1)*(T1+1)
其中,Xreal为真实数据,xt+1为第t+1时间步的历史驱动序列数据。
进一步,步骤S9具体过程为:
构建所述股票预测模型的优化目标如下:
minGmaxDV(G,D)=E[logD(Xreal)]+E[log(1-D(Xfake))]
其中,minGmaxDV(G,D)指使得修改后的判别器损失极大的同时,生成器损失极小,即生成器与判别器能力均衡且均很强;E指求取期望;
判别器损失函数为:
Figure BDA0003023294690000091
其中,Dloss为判别器损失;m为驱动序列因子个数;
Figure BDA0003023294690000092
为判别器对于真实数据的第i个驱动序列数据的判别概率结果;
Figure BDA0003023294690000093
为判别器对于生成数据的第i个驱动序列数据的判别概率结果;
将判别器损失函数修正如下:
Figure BDA0003023294690000094
其中,
Figure BDA0003023294690000095
为判别器修正损失;
Figure BDA0003023294690000096
为第i个驱动序列数据在第T1时间步的空间注意力分数;
生成器损失函数包括两部分损失,第一部分损失用于衡量真实数据与生成数据之间的差异,第二部分损失用于衡量生成器与判别器间的对抗;
第一部分损失的基本形式为:
Figure BDA0003023294690000097
其中,
Figure BDA0003023294690000098
为生成器预测的第t+1时间步的第i个驱动序列数据;
Figure BDA0003023294690000099
为第t+1时间步的第i个真实驱动序列数据;
对第一部分损失gmse修正后得到:
Figure BDA0003023294690000101
其中,
Figure BDA0003023294690000102
为衡量真实数据与生成数据之间差异的修正损失;
第二部分损失的基本形式为:
Figure BDA0003023294690000103
对第二部分损失gloss修正后得到:
Figure BDA0003023294690000104
其中,
Figure BDA0003023294690000105
为衡量生成器与判别器间的对抗的修正损失;
为两部分损失分配权重,并引入超参数λmse与λloss
Figure BDA0003023294690000106
其中,Gloss为生成器总损失;λmse为衡量生成数据与真实数据差异损失所占生成器损失比重的权重因子,λloss为衡量生成器欺骗判别器能力的权重因子;
所建立的股票预测模型的训练步骤如下:
第一阶段:训练判别器,固定生成器不变;将生成器预测的生成数据与真实数据对应真假标签输入判别器,通过判别器修正损失函数进行反向传播以提升判别器的判别能力;
第二阶段:训练生成器,固定判别器不变,且构造一个将生成器与判别器级联作为整体的新网络;
新网络以历史驱动序列数据为输入,在生成器生成预测数据后进行拼接构造生成数据,并传入判别器输出表征概率的标量,以此来进行前向传播;随后,利用生成器总损失Gloss进行反向传播,进而在判别器参数固定的情况下,保证生成器的生成结果越来越符合判别器的评判标准;
先执行任意轮数的第一阶段,再执行任意轮数的第二阶段,两个阶段的论述比用来调整生成器与判别器的强弱。
本发明的有益效果:
1)本发明首次将基于二维注意力机制的长短时记忆神经网络与生成对抗网络进行有机结合,以基于二维注意力机制的长短时记忆神经网络作为生成器以生成较为优质的股票预测结果,并在此基础上构造真实与虚假样本,进而引入多层感知机作为判别器区分真实与虚假数据,来进一步基于对抗博弈提升生成器的股票预测价格生成质量。在这个过程中,由于对于生成器生成质量的评估是由标准不断提升的判别器完成的,因此本发明可以输出更为精准的股票价格预测结果。
2)本发明阐述了将表征宏观经济变化趋势的国际汇率与存款利率作为驱动因子应用于股票预测的系统方法,并与二维注意力机制及生成对抗网络有机结合,进而提升了SALE-GAN在应用于国际局势剧烈变化、对外贸易依存度高、预测目标体量较大等场景下的表现;
3)本发明将二维注意力机制中生成的注意力权重分数与生成对抗网络中的生成器与判别器损失有机结合,解决了生成对抗网络在面对多因子输入时难以设计高效的生成器与判别器损失函数的问题。
附图说明
图1是本发明实施例的融合生成对抗网络与二维注意力机制的股票预测方法流程图;
图2为本发明实施例的目标股票或者股票指数的驱动因子的组成图;
图3为本发明实施例的LSTM模块原理图示。
具体实施方式
下面结合附图和实施例进一步描述本发明,应该理解,以下所述实施例旨在便于对本发明的理解,而对其不起任何限定作用。
如图1所述,本实施例的融合生成对抗网络与二维注意力机制的股票预测方法包括如下步骤:
S1:确定待预测目标(股票或者股票指数)的驱动因子,获取驱动因子的历史驱动序列数据作为股票序列输入,其中,驱动因子主要包括股票本身序列、投资者关注序列以及宏观经济序列。
本实施例以期望预测目标股票的收盘价为例,如图2所示,股票本身序列包括:待预测目标历史上每个交易日的开盘价、收盘价、最高价、最低价、总交易量与总交易额六维数据;体现投资者关注程度的投资者关注序列包括换手率、百度指数和财经新闻投资者情感指数;宏观经济序列包括汇率和基准利率。
百度指数指的是待预测目标相关词条在百度搜索引擎的搜索热度,可以在百度网站上查询得到,基于关键词网络搜索量与投资者关注度密切相关,而投资者关注度与投资者决策密切相关这一假设,网络将百度指数作为预测因子之一。
财经新闻投资者情感指数以雪球网等投资者社区中相关股票的提及次数的加权和来度量。具体方法为:(1)采用自然语言处理方法分析投资者社区中的待预测股票相关评论,得到正面情绪的评论数量C+与负面情绪的评论数量C_;(2)计算正面评论与负面评论数量比例即为投资者指数
Figure BDA0003023294690000121
以表征投资者对于目标股票的投资情绪倾向。该指数计算需要依赖自然语言处理的相关方法,本发明仅采用上述方法求取结果作为输入驱动因子。
汇率是本国货币转化为他国货币的比率,其在事实上通过国际资本流动、国际贸易收支等途径作用于股票市场。在股市预测中汇率因子是可以表征更长时间维度下宏观经济变化趋势的预测因子,同时引入汇率有助于更好地预测上证综指等综合宏观股指、预测对外贸易型企业股价、预测复杂国际局势譬如贸易战下股价的变化趋势。本实施例采用美元兑换人民币汇率来作为股票序列输入以表征宏观经济变化趋势。
利率是一定时期内利息额与借贷资金额即本金的比率,本实施例采用中国人民银行规定的一年期存贷款基准利率来作为股票序列输入。利率变化不仅促使投资者调整投资组合,影响上市公司经营业绩,而且影响投资者对于未来宏观经济的预期和判断,因此引入利率变化有助于对股票价格做出更加准确的预测。
S2:对获得的历史驱动序列数据进行数据预处理,主要包括对于上述不同驱动因子的历史驱动序列数据采取不同的针对性的异常值分析、数据缺失值处理与数据整合。具体过程如下:
本实施例首先约定所获取的历史驱动序列数据是股票开市的交易日数据,即不再考虑休息日,法定节假日的影响,而将股市数据视为连续日期的时间序列。
1)对于目标股票或者股票指数的股票本身序列数据
首先计算所获得数据的数据条数与对应时间跨度交易日数量是否一致,如果一致,说明不存在缺失值,如果不一致,则从其他渠道寻找补全缺失数据,若仍未能找到,为了避免噪声污染,删除此交易日;随后,采用遍历算法,依次求解每一个交易日相对于前一个交易日的涨跌幅度,筛选出变化幅度超过5%的交易日,对于变化幅度超过5%的交易日,从其他公开数据源进行查找替换,如果是由于股票分红导致数值断崖不连续,则对该交易日按照实际情况进行复权处理。
2)对于目标股票或者股票指数的投资者关注序列数据
本实施例同时采用百度指数与财经新闻投资者情感指数,简单粗略地在不引入复杂的自然语言处理模型的情况下将投资者关注程度与情感这一因素纳入考虑范围。预处理步骤第一步为异常值检测和缺失值补全,在这一步保留所有时间数据而并非仅仅交易日;第二步为时间步长加权,考虑到节假日休市期间投资者仍会进行广泛讨论,这一情况必须予以考虑,因此采取4个时间步长加权(即4天步长加权),而且投资者关注度会出现时序延迟,前一天关注指数往往决定了当天的投资决策,应用原始数据构造新的序列,对于所有的交易日期,百度指数与财经新闻指数对应计算公式:
Xt=0.1*Xt-4+0.2*Xt-3+0.4*Xt-2+0.3*Xt-1
其中,Xt表示第t时间步(交易日)的加权后目标股票或者股票指数的投资者关注序列数据、Xt-4、Xt-3、Xt-2、Xt-1分别表示第(t-4),第(t-3),第(t-2),第(t-1)时间步(交易日)的历史驱动序列数据。
上述数据加权方法是一种灵活的策略,其权重分配仅需满足总和为1即可,而时间窗口长度与具体权重系数没有特别约束,可以按照输入数据的具体情况设定。
股票数据的换手率是股票当日成交额与该股票当日流通股市值的比值,每日换手率即可以通过计算股票当日成交额与该股票当日流通股市值的比值得到。
3)对于目标股票或者股票指数的宏观经济序列数据
本项驱动因子的数据预处理步骤与1)和2)相同,即先后执行异常值的检测、缺失值的检测与补全。
缺失值的处理方法主要包括直接删除、补齐和不处理三种策略,在这里对于利率和汇率采取补齐策略,即令缺失数值与之前最后一个非0数据数值保持一致。
S3:生成二维数据序列输入,具体过程如下:
S31:按照3∶1的比例将预处理后的驱动序列数据划分为训练集与测试集,训练集用于后续网络模型的训练与反向传播更新参数,测试集用于判别后续网络模型训练的好坏。
S32:对训练集和测试集的所有驱动序列数据进行标准化处理;
驱动因子的序列数据具有各因子数值跨度很大且因子间量级差异显著的特点,由于本发明关注的是驱动因子的相对变化趋势,因此上述特点会导致网络收敛速度不理想。
典型的数据标准化处理方法包括Min-Max标准化、Z-Score标准化以及Log标准化。本实施例采用Min-Max标准化处理方法,之后在网络输出后端进行对应的还原操作以获得真实的预测数据。
标准化处理具体过程如下:
找到每个驱动因子的最大值与最小值,对于每个驱动序列数据,计算施行Min-Max标准化后的数据:
Figure BDA0003023294690000151
其中,
Figure BDA0003023294690000152
为第i个驱动因子的第j个序列数据的标准化数据;xi,j为第i个驱动因子的第j个序列数据;xi,max、xi,min分别为第i个驱动因子的序列数据的最大值与最小值。
S33:约定股票预测模型数据表示方法:
经过步骤S32中的标准化处理后的原始输入数据为一个二维矩阵X,每一行是不同的驱动因子,如开盘价为第一行,利率为第七行,作为上标;每一列是不同的时间步(时间点),如第一列为2000年6月1日,第二列为2000年6月2日,以此类推,作为下标序号。
股票预测模型使用前T1个交易日的历史驱动序列数据来预测未来一个时间步(交易日)的股价,即模型的时间窗口长度为T1,模型的驱动序列具有m个驱动因子,则有:
X=(x1,x2,x3,......,xm)=(x1,x2,x3,......,xT1)T
xm∈RT1,xT1∈Rm
其中,xi,i=1,2,...,m,表示第i个驱动因子的序列数据,m为驱动因子个数;xt,t=1,2,...,T1,表示第t时间步,时间窗口长度T1是个超参数,表示应用前多少时间步数据来预测未来交易日数据。
S34:因为本发明采用的注意力机制能够较好地分配不同驱动因子权重,因此本实施例不采用主成分分析法等方法进行维度约减,而仅仅采用卷积神经网络(CNN)中的一维卷积核进行数据平滑以抑制输入数据的高噪声。任何一个数据有时间、空间二维属性,定义一个一维卷积核对于时间这一维度进行平滑,
Figure BDA0003023294690000161
其中,Wt∈R1*5为待训练的参数矩阵,而bt为待训练的偏置参数,而新的生成矩阵X即为输入后续网络的二维数据序列;
Figure BDA0003023294690000162
为第t时间步的第i个驱动因子的序列数据。
S4:对步骤S34处理后的二维数据序列进行空间注意力加权,首先进行注意力分数计算,随后进行注意力分数归一化,最后进行空间注意力加权以形成经过空间注意力加权后的股票预测输入数据。具体过程如下:
首先对于包含空间与时间双层注意力机制的长短时记忆神经网络层中的空间注意力机制进行详述。
原始的RNN隐藏层仅有一种状态,对于短期输入非常敏感,为了使得RNN能够解决长距离依赖问题,长短时记忆神经网络(Long Short-Term Memory,LSTM)增加了一个状态c来保存长期状态,称为细胞状态(cell state)。
在第t时间步时,LSTM单元中,驱动序列Xt,输出隐藏层状态ht,上一时间步(t-1)隐藏层状态ht-1,本时间步细胞状态Ct,上一时间步细胞状态Ct-1,LSTM网络结构如附图3所示。
在第t时间步时,LSTM输入包含:驱动序列Xt,上一时间步隐藏层状态ht-1,上一时间步细胞状态Ct-1;LSTM输出包含:本时间步输出隐藏层状态ht,本时间步细胞状态Ct
LSTM更新机制为:
ht=flstm(ht-1,xt)
其中,flstm具体实现为:
ft=σ(Wf[ht-1;xt]+bf)
it=σ(Wi[ht-1;xt]+bi)
ot=σ(Wo[ht-1;xt]+bo)
Figure BDA0003023294690000171
Figure BDA0003023294690000172
ht=tanh(Ct)*ot
其中,ft为遗忘门(Forget Gate)输出,遗忘门决定了上一时间步细胞状态Ct-1保存到当前时间步细胞状态Ct的比例,激活函数采用sigmoid函数(σ),sigmoid函数(σ)输出0到1之间的实数向量,因此能够实现对信息流的控制,描述每个部分有多少信息可以通过;Wf为待训练的遗忘门的权重矩阵;bf为待训练的遗忘门的偏置向量;
it为输入门(Input Gate)输出,产生一个概率向量,负责处理当前序列输入,选择性地将当前输入的信息存放到细胞状态中。激活函数采用sigmoid函数(σ),Wi为待训练的输入门的权重矩阵,bi为待训练的输入门的偏置向量;
tanh为双曲正切激活函数,本时间步细胞状态Ct经过tanh处理之后得到一个-1到1之间的数值,创造了一个新的候选值向量
Figure BDA0003023294690000173
Wj为待训练的权重矩阵,bj为待训练的偏置向量;
ot为输出门输出,该门控决定将细胞状态的哪一部分保存到隐藏层状态中,Wo为待训练的输出门的权重矩阵,激活函数采用sigmoid函数(σ),bo为待训练的输出门的偏置向量。
本时间步更新的细胞状态Ct即由遗忘门控制的上一时间步细胞状态Ct-1与输入门控制的新的候选值向量
Figure BDA0003023294690000181
组成,并在此基础上生成本时间步输出隐藏层状态ht,q为LSTM的隐藏层维度;上述各参数矩阵维度如下:
tanhWf,Wi,Wj,Wo∈Rm*(m+q)
[ht-1;xt]∈Rm+q
[ht-1;xt]为ht-1与xt的简单向量拼接。
空间注意力机制旨在为股票驱动序列的不同驱动因子分配不同权重,对于股票预测结果贡献度高的、与预测目标关联密切的驱动因子将被赋予更高的权重,将经过空间注意力机制调整后的数据作为后续网络输入可以抑制噪声因子,提高股票预测准确率。
首先计算注意力分数,输入参数为LSTM上一个时间步隐藏层状态ht-1∈Rq以及本时间步(本实施例中将第t时间步作为当前时间步)输入驱动序列数据xi∈RT1
本实施例可以通过选用如下3种方法,利用输入数据ht-1∈Rq,xi∈RT1,实施注意力分数计算:
按照注意力分数计算的常见标识,约定st为第t时间步驱动序列数据,对应上述xi∈RT1;hi为上一时间步的隐藏层状态向量,对应上述ht-1∈Rq
Figure BDA0003023294690000182
为待训练的参数向量;Wa为待训练的权重矩阵。
(1)Additive注意力分数计算方式:
Figure BDA0003023294690000183
(2)General注意力分数计算方式:
Figure BDA0003023294690000184
其中,
Figure BDA0003023294690000185
为待训练的参数向量。
(3)Scaled Dot-Product注意力分数计算方式
Figure BDA0003023294690000191
n为隐藏层维度
举例来说,在上述标识约定下,第一种注意力分数计算公式(1)如下:
Figure BDA0003023294690000192
其中,
Figure BDA0003023294690000193
为第t时间步的第i个驱动因子对应的原始注意力分数;
Figure BDA0003023294690000194
为待训练的参数向量;Wspace为待训练的空间注意力机制权重矩阵;[ht-1;xi]为将LSTM第t-1时间步隐藏层状态ht-1∈Rq与本时间步输入数据序列xi∈RT1进行拼接得到的拼接向量。
然后对上一时间步(t-1时间步)计算得到的注意力分数进行归一化:
Figure BDA0003023294690000195
其中,
Figure BDA0003023294690000196
为原始注意力分数
Figure BDA0003023294690000197
归一化后的归一化注意力分数。
最后,利用上述得到的归一化注意力分数对原始输入数据进行空间注意力加权:
Figure BDA0003023294690000198
其中,
Figure BDA0003023294690000199
为进行空间注意力加权后的数据驱动序列;
Figure BDA00030232946900001910
为对应第n个驱动序列数据的原始注意力分数归一化后的归一化注意力分数;xn为对应第n个驱动序列数据的与时间窗口长度T1等长的输入数据。
S5:对步骤S4中经过空间注意力加权后的二维数据序列施行时间注意力机制加权,以此实现赋予一个时间窗口中对于股票预测比较关键的时间步以较高权重的目的。首先进行时间窗口中每个时间步的时间注意力分数计算,随后对得到的时间注意力分数进行归一化,最后应用得到的归一化后的时间注意力分数对原始数据进行加权,进而实现时间,空间二维注意力机制变换。具体过程如下:
同样对于空间注意力加权后的生成数据矩阵X进行操作,本次从时间维度进行注意力机制加权,以此实现赋予时间窗口中对于股票预测比较关键、对股票结果正确预测贡献度较高的时间步以较高权重的目的。
同样,采用上述第一种注意力分数计算公式进行注意力分数计算,并对上述空间注意力机制处理过的数据进行时间注意力加权处理,具体过程如下:
输入参数为LSTM上一个时间步隐藏层状态ht-1∈Rq以及第t时间步的驱动序列数据xt∈RT1;计算时间注意力分数:
Figure BDA0003023294690000201
其中,rt为时间窗口内对应第t时间步的注意力分数;
Figure BDA0003023294690000202
为待训练的时间注意力参数向量;Wtime为待训练的时间注意力机制权重矩阵。
然后将上述注意力权重归一化:
Figure BDA0003023294690000203
其中,βt为归一化后的时间窗口内对应第t时间步的注意力分数。
最后,对于步骤S4中得到的空间注意力机制加权的结果施行进一步的时间注意力机制加权:
Figure BDA0003023294690000204
其中,ut为时间窗口内第t时间步对应的经过时间、空间注意力处理后的加权后输入,经过上述预处理后将作为后续LSTM模块的输入向量;
Figure BDA0003023294690000205
为从步骤S4中进行空间注意力加权后的驱动序列数据中抽取的对应向量。
S6:将步骤S5中获得的二维注意力机制的加权结果馈入长短时记忆神经网络(LSTM)主体,再经过一层非线性全连接映射层输出预测结果,即可构建一个基于二维时间、空间注意力机制的LSTM股票预测初步模型,将该LSTM股票预测初步模型作为股票预测结果的生成器。具体过程如下:
在第t时间步,对于LSTM模块,应用前述函数flstm进行变换,输入参量为:上一个LSTM块的隐藏层状态ht-1,步骤S5得到的第t时间步对应的注意力机制加权后输入ut,第t时间步对应的待预测目标的真实股价yt
y=(y1,y2,…,yt,…,yT)∈RT1,1≤t≤T1
其中,y为对应一个时间窗口T1的待预测目标的真实股价,即长短时记忆神经网络预测的标签。
计算第t时间步隐藏状态:
ht=flstm(ht-1,[ut;yt])
在最后一步,引入非线性全连接层得到预测结果:
Figure BDA0003023294690000211
其中,
Figure BDA0003023294690000212
为利用上述LSTM股票预测初步模型得出的第t+1时间步的股票预测结果,Wgenerator为非线性全连接层待训练的权重矩阵;by为待训练的非线性全连接层待训练的偏置参数。
本步骤构建了一个基于时间、空间二维注意力机制的LSTM股票预测初步模型,该LSTM股票预测初步模型实质上已经具备了预测股票的能力。下面引入博弈对抗的思路,进一步提升该生成器表现。
S7:修改步骤S6中构建的股票预测初步模型的输出部分结构,以构建符合生成对抗网络判别器部分输入模式的输入数据。
引入并融合生成对抗网络对抗博弈思想,将步骤S6中构建的基于二维时间空间注意力机制的LSTM股票预测初步模型作为股票预测结果的初步生成器,该初步生成器实质做出了下述预测变换:
Figure BDA0003023294690000213
其中,
Figure BDA0003023294690000214
为依据前T1个时间步的历史驱动序列数据,应用股票预测初步模型预测生成的第T1+1时间步的待预测目标的预测股价;y为对应一个时间窗口T1的待预测目标的真实股价。
需要特别指出,本步骤将对二维输入矩阵X进行更改,之后X将不仅仅包含驱动序列因子,出于生成对抗网络的结构与原理考虑,这里将待预测目标股价也作为X的一个因子融入其中,因此X的维度将转化为(m+1)*T1。因而生成对抗网络的输出,即
Figure BDA0003023294690000221
中的对应部分即是本发明期望的SALE-GAN预测输出。
为了尽可能地挖掘真实输入数据的特征与模式,尽可能好地拟合真实输入数据的高维空间分布,同时为了尽量构造信息完备、结构简洁的虚假数据样本,以进一步与真实样本一起输入判别器进行判别与对比,修改替换步骤S6中的非线性全连接层,将其输出对应修改为向量而非对应的股价预测标量,即在LSTM最后输出隐藏层状态后,引入两层全连接层以将其映射到与期望输入等长的向量,激活函数采用Rectified Linear Unit(ReLU):
ht=flstm(ht-1,[ut;xt-1]
Figure BDA0003023294690000222
其中,fup为将输入ht映射到目标输出向量
Figure BDA0003023294690000223
的双层全连接网络映射变换,
Figure BDA0003023294690000224
尽量逼近真实的输入数据xt+1
初步生成器经过上述修改后将其作为股票预测模型的生成器。该生成器实现了基于已有驱动序列数据预测下一时间步的整个驱动序列,从而可以不断递推预测出待预测目标之后多个时间步的股价及驱动序列数据,如未来第t+1时间步的驱动序列数据可以按照如下方法预测:
ht+1=flstm(ht,[ut+1;xt]
Figure BDA0003023294690000225
S8:建立股票预测模型,包括步骤S7中得到的生成器和判别器。将生成器生成的预测数据整合成生成对抗网络的判别器输入数据,并输入判别器,之后判别器输出对于输入数据真假的判断,即来自生成器的生成数据(即虚假样本数据)和来自训练集的真实数据(即真实样本数据)的概率判断结果。
虚假样本数据构造如下:
Figure BDA0003023294690000231
其中,Xfake为虚假样本数据;
Figure BDA0003023294690000232
为生成器预测出的第t+1时间步的驱动序列数据。
真实样本数据构造如下:
Xreal=[x1,x2,......,xt,xt+1]
Xreal,Xfake∈R(m+1)*(T1+1)
其中,Xreal为真实样本数据,xt+1为训练集中的第t+1时间步的真实驱动数据。
判别器负责接受上述输入,将其映射得到标量,并且尽可能使得来自真实数据的样本得到接近于1的输出,使得来自生成器构造的虚假数据得到接近于0的输出。判别器在架构上采用三层感知机,应用sigmoid激活函数:
D(Xfake)=σ(d(Xfake))
D(Xreal)=σ(d(Xreal))
其中,D(Xfake)为判别器对于生成器构造的虚假样本数据的判别概率结果,D(Xreal)为判别器对于真实样本数据的判别概率结果;d(Xfake)为三层感知机对生成器构造的虚假样本数据进行映射后得到的向量;d(Xreal)为三层感知机对真实样本数据进行映射后得到的向量。
S9:对步骤S8中构建的股票预测模型进行迭代交替训练,并在这个过程中调整股票预测模型的超参数,得到最优的股票预测模型,进而将待测试的股票预测序列数据输入最优的股票预测模型并得到目标股票的预测值。此步骤主要包括股票预测模型的训练步骤、生成器和判别器损失函数构建、以及使用三种指标指导模型搜索获得最佳超参数等步骤。
整个股票预测模型的优化目标如下:
minGmaxDV(G,D)=E[logD(Xreal)]+E[log(1-D(Xfake))]
其中,minGmaxDV(G,D)指使得修改后的判别器损失极大的同时,生成器损失极小,即生成器与判别器能力均衡且均很强;E指求取期望。
判别器损失函数:
Figure BDA0003023294690000241
其中,Dloss为判别器损失;
Figure BDA0003023294690000242
为判别器对于真实样本数据中的第i个驱动序列数据的判别概率结果;
Figure BDA0003023294690000243
为判别器对于生成器生成的虚假样本数据中的第i个驱动序列数据的判别概率结果。
因为本发明更加关注股价预测是否准确而相对不关注驱动因子的序列数据预测是否准确,所以为序列数据分配权重,同时借鉴步骤S4获得的空间注意力机制结果,将判别器损失函数修正如下:
Figure BDA0003023294690000244
生成器损失函数包括两部分:
第一部分衡量真实样本数据与虚假样本数据之间的差异,基本形式为:
Figure BDA0003023294690000245
其中,
Figure BDA0003023294690000246
为生成器预测得出的第t+1时间步的第i个驱动序列数据;
Figure BDA0003023294690000247
为第t+1时间步的第i个真实驱动序列数据。
同理,本发明更加关注股价预测是否准确而相对不关注驱动因子的序列数据预测是否准确,对第一部分损失的基本形式修正如下:
Figure BDA0003023294690000248
其中,
Figure BDA0003023294690000249
相对原gmse可以更好地衡量虚假驱动序列数据与真实驱动序列数据的差异程度。
第二部分衡量生成器与判别器间的对抗,即生成器应当能够尽量误导欺骗判别器让其认为生成器生成的数据是来自真实输入的:
Figure BDA0003023294690000251
进行修正:
Figure BDA0003023294690000252
为两部分损失分配权重,并引入超参数λmse与λloss
Figure BDA0003023294690000253
其中,λmse为衡量生成器生成驱动序列与真实驱动序列差异损失所占生成器损失比重的权重因子,λloss为衡量生成器欺骗判别器能力的权重因子;Gloss为生成器总损失,用于指导网络训练优化。
本发明的股票预测模型的整个网络结构如上所述。
所建立的股票预测模型的训练步骤如下:
第一阶段:训练判别器,固定生成器不变。将前端生成器产生的虚假数据的样本与真实数据的样本对应真假标签输入判别器,通过判别器损失函数进行反向传播以提升判别器的判别能力。
第二阶段:训练生成器,固定判别器不变,且构造一个将生成器与判别器级联作为整体的新网络。新网络仍然以上述驱动因子的序列数据为输入,在生成器生成预测数据后进行拼接构造虚假样本数据传入后端判别器输出表征概率的标量,以此来进行前向传播。随后,利用上述损失函数Gloss进行反向传播,进而在判别器参数固定的情况下,保证生成器的生成能力不断提升,生成结果越来越符合判别器的评判标准。
上述两个阶段交替执行,即先执行任意轮数第一阶段,再执行任意轮数第二阶段,上述两个阶段的训练轮数比标记为u。
本实施例所构建的股票预测模型具有如下超参数需要按照如下表1中原则设置。
表1股票预测模型超参数的设置
Figure BDA0003023294690000261
Figure BDA0003023294690000271
在超参数优化方法上,本实施例采用网格搜索(Grid Search)。网格搜索是一种调参手段,本质是穷举搜索,即在所有候选的参数组合中,通过循环遍历,尝试每一种可能性,选择表现最好的参数组合作为最终的结果。以仅仅调节T1与Dropout两个超参数的实践为例,均等划分T1为5,10,15三种数值,均等划分Dropout为0.1,0.2,0.3三种数值,把上述参数的组合列出来,可以表示成一个3*3的表格,其中每个cell就是一个网格,在上述网格中不断遍历、搜索进行循环,根据评判指标决定哪个cell的参数组合是最优的。
为了指导超参数的优化选择,需要设定客观的优化指标,本实施例使用以下三种指标来衡量上述股票预测模型的好坏并用以指导上述超参数的优化:
(1)MAPE,对于极端异常值较为敏感,为了提升在不同数据集之间比较的科学性,进行均值处理:
Figure BDA0003023294690000272
其中,N为数据个数,yk为真实待预测目标真实数据,
Figure BDA0003023294690000281
为模型输出的目标预测值,yk+1为真实待预测目标真实数据,
Figure BDA0003023294690000282
为模型输出的目标预测值。
(2)RRMSE,均方误差:
Figure BDA0003023294690000283
(3)AR,衡量依照预测结果,依据预期盈利则买入交易策略下的真实营收:
Figure BDA0003023294690000284
对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以对本发明的实施例做出若干变型和改进,这些都属于本发明的保护范围。

Claims (9)

1.一种融合生成对抗网络与二维注意力机制的股票预测方法,其特征在于,包括如下步骤:
S1:确定待预测目标的驱动因子,获取历史驱动序列数据,其中,驱动因子包括股票本身序列、投资者关注序列以及宏观经济序列;
S2:对步骤S1中获取的历史驱动序列数据进行数据预处理,包括异常值分析、数据缺失值处理与数据整合;
S3:将步骤S2中预处理后的历史驱动序列数据划分为训练集和测试集,对训练集和测试集中的数据进行标准化处理和数据平滑处理,生成二维数据序列;
S4:对生成的二维数据序列进行空间注意力加权;
S5:对经过空间注意力加权后的二维数据序列进行时间注意力加权,获得经过时间、空间二维注意力加权后的二维数据序列;
S6:将所获得的二维注意力加权后的二维数据序列,馈入长短时记忆神经网络,构建基于二维时间、空间注意力机制的股票预测初步模型;
S7:修改步骤S6中所构建的股票预测初步模型的输出部分结构,构建生成器,利用所述生成器依次预测未来多个时间步的待预测目标股价和驱动序列数据,并将这些预测数据整合成生成对抗网络判别器的输入数据;
S8:基于步骤S7中生成器和生成对抗网络判别器建立股票预测模型,将生成器生成数据和训练集真实数据输入生成对抗网络判别器,生成对抗网络判别器输出来自生成数据或者真实数据的概率判断结果;
S9:构建所述股票预测模型的优化目标,对其进行迭代交替训练,并在训练过程中调整股票预测模型的超参数,之后利用测试集数据对股票预测模型进行测试,得到最优股票预测模型;
S10:将待预测目标的驱动序列数据输入最优股票预测模型,得到待预测目标的预测值。
2.根据权利要求1所述的方法,其特征在于,步骤S1中,所述股票本身序列包括每个交易日的开盘价、收盘价、最高价、最低价、总交易量与总交易额;所述投资者关注序列包括换手率、百度指数和财经新闻投资者情感指数;所述宏观经济序列包括汇率和基准利率。
3.根据权利要求2所述的方法,其特征在于,所述财经新闻投资者情感指数以投资者社区中相关股票的提及次数的加权和来度量,具体过程如下:
采用自然语言处理方法分析投资者社区中的待预测股票相关评论,得到正面情绪的评论数量C+与负面情绪的评论数量C-;计算正面评论与负面评论数量比例即为财经新闻投资者情感指数
Figure FDA0003023294680000021
以表征投资者对于目标股票的投资情绪倾向。
4.根据权利要求2或3所述的方法,其特征在于,步骤S2具体过程为:
1)对于股票本身序列数据
首先计算所获得股票本身序列数据的数据条数与对应时间跨度交易日数量是否一致,如果一致,说明不存在缺失值,如果不一致,则从其他渠道寻找补全缺失数据,若仍未能找到,删除此交易日;随后,采用遍历算法,依次求解每一个交易日相对于前一个交易日的涨跌幅度,筛选出变化幅度超过5%的交易日,对于变化幅度超过5%的交易日,从其他公开数据源进行查找替换,如果是由于股票分红导致数值断崖不连续,则对该交易日按照实际情况进行复权处理;
2)对于投资者关注序列数据
第一步为异常值检测和缺失值补全,在这一步保留所有时间数据而并非仅仅交易日;第二步为时间步长加权,考虑到节假日休市期间投资者仍会进行广泛讨论,采取4个时间步长加权,而且投资者关注度会出现时序延迟,前一时间步的关注指数往往决定了当前时间步的投资决策,应用历史序列数据构造新的序列,对于所有的时间步,百度指数与财经新闻指数对应计算公式:
Xt=0.1*Xt-4+0.2*Xt-3+0.4*Xt-2+0.3*Xt-1
其中,Xt表示第t时间步的加权后待预测目标的投资者关注序列数据、Xt-4、Xt-3、Xt-2、Xt-1分别表示第t-4,第t-3,第t-2,第t-1时间步的历史序列数据;
3)对于宏观经济序列数据
先后执行异常值的检测、缺失值的检测与补全;缺失值的处理方法包括直接删除、补齐和不处理三种策略;对于利率和汇率采取补齐策略,即令缺失数值与之前最后一个非0数据数值保持一致。
5.根据权利要求1所述的方法,其特征在于,步骤S3中,所生成的二维数据序列输入为二维输入矩阵X:
X=(x1,x2,x3,……,xm)=(x1,x2,x3,……,xT1)T
xm∈RT1,xT1∈Rm
其中,xi,i=1,2,…,m,表示第i个驱动因子的序列数据,m为驱动因子个数;xt,t=1,2,…,T1,表示第t时间步,T1为时间窗口长度,是超参数。
6.根据权利要求5所述的方法,其特征在于,步骤S4和S5中,进行空间注意力加权和时间注意力加权时,按照Additive注意力分数计算方法、General注意力分数计算方法和Scaled Dot-Product注意力分数计算方法中适合情境的任意一种方法计算注意力分数。
7.根据权利要求5所述的方法,其特征在于,步骤S7具体过程如下:
将步骤S6中构建的基于二维时间空间注意力机制的股票预测初步模型做出如下预测变换:
Figure FDA0003023294680000031
其中,
Figure FDA0003023294680000032
为依据前T1个时间步的历史驱动序列数据,应用股票预测初步模型预测生成的第T1+1时间步的待预测目标的预测股价;y为对应一个时间窗口T1的待预测目标的真实股价;
对二维输入矩阵X进行更改,X将不仅仅包含驱动因子,还包括待预测目标的股价,此时X的维度将转化为(m+1)*T1;
修改股票预测初步模型的非线性全连接层,将其输出对应修改为向量而非对应的股价预测标量,即在长短时记忆神经网络LSTM最后输出隐藏层状态后,引入两层全连接层以将其映射到与期望输入等长的向量,激活函数采用ReLU函数,构建生成器;利用所述生成器依次预测未来多个时间步的待预测目标的股价和驱动序列数据,并将这些预测数据整合成生成对抗网络判别器的输入数据。
8.根据权利要求7所述的方法,其特征在于,步骤S8中,
生成数据构造如下:
Figure FDA0003023294680000041
其中,Xfake为生成数据;
Figure FDA0003023294680000042
为生成器预测出的第t+1时间步的驱动序列数据;
真实数据构造如下:
Xreal=[x1,x2,......,xt,xt+1]
Xreal,Xfake∈R(m+1)*(T1+1)
其中,Xreal为真实数据,xt+1为第t+1时间步的历史驱动序列数据。
9.根据权利要求8所述的方法,其特征在于,步骤S9具体过程为:
构建所述股票预测模型的优化目标如下:
minGmaxDV(G,D)=E[logD(Xreal)]+E[log(1-D(Xfake))]
其中,minGmaxDV(G,D)指使得修改后的判别器损失极大的同时,生成器损失极小,即生成器与判别器能力均衡且均很强;E指求取期望;
判别器损失函数为:
Figure FDA0003023294680000051
其中,Dloss为判别器损失;m为驱动序列因子个数;
Figure FDA0003023294680000052
为判别器对于真实数据的第i个驱动序列数据的判别概率结果;
Figure FDA0003023294680000053
为判别器对于生成数据的第i个驱动序列数据的判别概率结果;
将判别器损失函数修正如下:
Figure FDA0003023294680000054
其中,
Figure FDA0003023294680000055
为判别器修正损失;
Figure FDA0003023294680000056
为第i个驱动序列数据在第T1时间步的空间注意力分数;
生成器损失函数包括两部分损失,第一部分损失用于衡量真实数据与生成数据之间的差异,第二部分损失用于衡量生成器与判别器间的对抗;
第一部分损失的基本形式为:
Figure FDA0003023294680000057
其中,
Figure FDA0003023294680000058
为生成器预测的第t+1时间步的第i个驱动序列数据;
Figure FDA0003023294680000059
为第t+1时间步的第i个真实驱动序列数据;
对第一部分损失gmse修正后得到:
Figure FDA00030232946800000510
其中,
Figure FDA00030232946800000511
为衡量真实数据与生成数据之间差异的修正损失;
第二部分损失的基本形式为:
Figure FDA00030232946800000512
对第二部分损失gloss修正后得到:
Figure FDA00030232946800000513
其中,
Figure FDA00030232946800000514
为衡量生成器与判别器间的对抗的修正损失;
为两部分损失分配权重,并引入超参数λmse与λloss
Figure FDA00030232946800000515
其中,Gloss为生成器总损失;λmse为衡量生成数据与真实数据差异损失所占生成器损失比重的权重因子,λloss为衡量生成器欺骗判别器能力的权重因子;
所建立的股票预测模型的训练步骤如下:
第一阶段:训练判别器,固定生成器不变;将生成器预测的生成数据与真实数据对应真假标签输入判别器,通过判别器修正损失函数进行反向传播以提升判别器的判别能力;
第二阶段:训练生成器,固定判别器不变,且构造一个将生成器与判别器级联作为整体的新网络;
新网络以历史驱动序列数据为输入,在生成器生成预测数据后进行拼接构造生成数据,并传入判别器输出表征概率的标量,以此来进行前向传播;随后,利用生成器总损失Gloss进行反向传播,进而在判别器参数固定的情况下,保证生成器的生成结果越来越符合判别器的评判标准;
先执行任意轮数的第一阶段,再执行任意轮数的第二阶段,两个阶段的论述比用来调整生成器与判别器的强弱。
CN202110408642.5A 2021-04-16 2021-04-16 一种融合生成对抗网络与二维注意力机制的股票预测方法 Pending CN113129148A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110408642.5A CN113129148A (zh) 2021-04-16 2021-04-16 一种融合生成对抗网络与二维注意力机制的股票预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110408642.5A CN113129148A (zh) 2021-04-16 2021-04-16 一种融合生成对抗网络与二维注意力机制的股票预测方法

Publications (1)

Publication Number Publication Date
CN113129148A true CN113129148A (zh) 2021-07-16

Family

ID=76776970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110408642.5A Pending CN113129148A (zh) 2021-04-16 2021-04-16 一种融合生成对抗网络与二维注意力机制的股票预测方法

Country Status (1)

Country Link
CN (1) CN113129148A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114022058A (zh) * 2022-01-06 2022-02-08 成都晓多科技有限公司 基于时序知识图谱的中小企业失信风险预测方法
CN115272267A (zh) * 2022-08-08 2022-11-01 中国科学院苏州生物医学工程技术研究所 基于深度学习的眼底荧光造影图像生成方法、设备、介质及产品
CN115512460A (zh) * 2022-09-29 2022-12-23 北京交通大学 一种基于图注意力模型的高速列车轴温长时预测方法
CN115545790A (zh) * 2022-10-20 2022-12-30 北京宽客进化科技有限公司 价格数据预测方法、装置、电子设备及存储介质
CN115688579A (zh) * 2022-11-01 2023-02-03 福建中锐网络股份有限公司 一种基于生成对抗网络的流域多点水位预测预警方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114022058A (zh) * 2022-01-06 2022-02-08 成都晓多科技有限公司 基于时序知识图谱的中小企业失信风险预测方法
CN115272267A (zh) * 2022-08-08 2022-11-01 中国科学院苏州生物医学工程技术研究所 基于深度学习的眼底荧光造影图像生成方法、设备、介质及产品
CN115512460A (zh) * 2022-09-29 2022-12-23 北京交通大学 一种基于图注意力模型的高速列车轴温长时预测方法
CN115512460B (zh) * 2022-09-29 2024-04-16 北京交通大学 一种基于图注意力模型的高速列车轴温长时预测方法
CN115545790A (zh) * 2022-10-20 2022-12-30 北京宽客进化科技有限公司 价格数据预测方法、装置、电子设备及存储介质
CN115545790B (zh) * 2022-10-20 2023-06-09 北京宽客进化科技有限公司 价格数据预测方法、装置、电子设备及存储介质
CN115688579A (zh) * 2022-11-01 2023-02-03 福建中锐网络股份有限公司 一种基于生成对抗网络的流域多点水位预测预警方法
CN115688579B (zh) * 2022-11-01 2024-02-23 福建中锐网络股份有限公司 一种基于生成对抗网络的流域多点水位预测预警方法

Similar Documents

Publication Publication Date Title
Wang et al. Portfolio formation with preselection using deep learning from long-term financial data
CN113129148A (zh) 一种融合生成对抗网络与二维注意力机制的股票预测方法
CN111626785A (zh) 一种基于结合注意力的cnn-lstm网络基金价格预测方法
Lee et al. Exploring the effectiveness of deep neural networks with technical analysis applied to stock market prediction
CN115660855A (zh) 一种融合新闻数据的股票收盘价预测方法
Zheng et al. RLSTM: a new framework of stock prediction by using random noise for overfitting prevention
Wang et al. A multi-factor two-stage deep integration model for stock price prediction based on intelligent optimization and feature clustering
Peng et al. Attention-based CNN–LSTM for high-frequency multiple cryptocurrency trend prediction
Yeh et al. Evaluation approach to stock trading system using evolutionary computation
Li et al. Enhancing a stock timing strategy by reinforcement learning
Wei et al. Stock ranking prediction based on an adversarial game neural network
Zhuang et al. Research on quantitative stock selection strategy based on CNN-LSTM
Wang et al. Stock trading strategy of reinforcement learning driven by turning point classification
Zha et al. A hierarchical reinforcement learning framework for stock selection and portfolio
CN112837161A (zh) 基于多任务学习和多指数协同注意力机制的股市预测方法
Xu et al. Improved pairs trading strategy using two-level reinforcement learning framework
Lanbouri et al. A new approach for Trading based on Long-Short Term memory Ensemble technique
Sun et al. Multi-channel temporal graph convolutional network for stock return prediction
Fan Prediction of A-share trend based on machine learning technologies
Barua Dhaka Stock Exchange stock price prediction using Machine Learning and Deep Learning Models
Yang et al. Asset price prediction via machine-learning method: a review
Zhang Asset pricing and deep learning
Chaudhari et al. A Review on using Long-Short Term Memory for Prediction of Stock Price
Adila et al. Prediction of stocks return in the lq45 index with long-short-term-memory (lstm) and its application for portfolio selection
Zhang et al. Parameter analysis of hybrid intelligent model for the prediction of rare earth stock futures

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210716