您的当前位置:首页正文

基于大数据背景下的多层神经网络股票预测模型

2023-04-28 来源:爱go旅游网
2017 年 软件 2017,V〇1.38,No. 7

第 3 8 卷第 7 期 COMPUTER ENGINEERING & SOFTWARE 国际 IT 传媒品牌

设讨研尧与启用

基于大数据背景下的多层神经网络股票预测模型

丁美琳,高语越,陈学斌

(1.华北理工大学,唐山063210; 2.唐山市数据科学重点实验室,唐山063210)

摘要:随着互联网以及股票市场的不断发展,产生了蕴含丰富信息的海量股票数据。由于大数据技术不断普 及,处理海量股票数据逐渐变得可能。本文通过对海量的历史数据进行研究,利用智能算法建立多层神经网络对数 据进行处理。首先运用小波分析技术将股票价格波动曲线分解为低频部分和高频部分,其次分别利用Elman和BP 神经网络进行训练,最后进行小波重构得出股票价格预测值。研究结果表明:通过改进,将预测结果与实际值进行 对比,均方误差MSE=6.4495xl(T6,模型预测精度较好。

关键词:股票价格预测;小波分解与重构;BP神经网絡;Elman神经网絡 中图分类号:TP183 38 (7): 118-121

文献标识码:A

DOI: 10.3969/j.issn. 1003-6970.2017.07.027

本文著录格式:丁美琳,高语越,陈学斌.基于大数据背景下的多层神经网絡股票预测模型[J].软件,2017,

Multilayer Neural Network Stock Prediction Model Based on the Big Data

DING Mei-lin, GAO Yu-yue, CHEN Xue-bin

(1, North China University of science and technology, Tangshan 063210;

2. Tangshan City Key Laboratory of data science, Tangshan 063210)

【Abstract】:With the continuous development of the internet and the stock market, there is a huge amount of stock

information which contains abundant information. With the growing popularity of big data technology, dealing with massive stock data is becoming possible. In this paper, through the research of the large historical data, the data processing is established by using the intelligent algorithm of multi-layer neural network. Firstly, the stock price fluctuation curve is decomposed into the low frequency part and the high frequency part by the wavelet analysis technology, followed by Elman and BP neural network training. Finally, wavelet reconstruction is used to obtain the stock price forecast value. The results show that the prediction results are compared with the actual values by means of improvement. The mean square error is MSE=6.4495xl〇-6, and the prediction model has better accuracy.【Key words】:Stock price prediction; Wavelet analysis; BP neural network; Elman neural network

法和人工智能分析方法两个方面去研究股票价格的 发展趋势,指导投资者投资。孙吉红[3]等运用了长 时间聚类方法对股票未来价格进行预测,填补了国

内股票预测研究的不足。Dose和Cincotti[4]等人研究 了聚类分析的随机优化方法来选择股票进行投资。 传统的分析方法计算简单、易于掌握,但由于股票 价格的变化往往呈现出非线性特征,而传统预测方 法都是基于线性变化建模的,因此对股票价格的分 析和预测准确性较低。Fenu G[5]等人利用人工智能 神经网络,研究股票投资的最佳时机。人工智能神 经网络(ANN)对非线性关系具有很强的非线性逼 近能力,由于股票的成交价、成交量等数据中含有 大量影响股票价格变化的信息,ANN可以通过学习

0引言

随着互联网金融以及股票市场的不断发展,产

生了蕴含丰富信息的海量股票数据。数据资源丰富 但难以利用已成为当今社会的一种普遍现象,成为 了人们高效使用信息的障碍[1_2]。人们往往难以理解 存放的海量数据,不能从这些数据得出准确而有效 的结论。因为人们缺乏有效的方法和实用的技术来 从海量数据中提取有价值的信息。如何利用一定的 算法或处理数据技术,有效的挖掘出蕴藏在股票海 量数据中的规律,找出股票的价格走势成为一个热 点问题。

面对海量的数据,国内外研究者从传统分析方

丁美琳等:基于大数据背景下的多层神经网络股票预测模型

股票的历史数据,从而找出股票价格规律。但金融 数据在现实中受到许多因素的影响,其构成的时间 序列具有更大的偶然性与随机性,往往具有多层次 与多尺度特性。单一神经网络的预测模型具有局限 性,对股票价格的预测精度有一定的影响。

本文在人工智能神经网络的基础上,利用小波 变换多层次分解处理股票价格数据,将偶然因素和 宏观突变因素带入神经网络训练。根据神经网络的 训练结果,分析股票的潜在走势,帮助投资者在短 时间内把握股价的估值水平,从而对投资者进行价 值投资建议。

其中,Cy 分别是小波低频系数和高频系数的

列向量形式;岣,/^为相应的多尺度分析中滤波器 的低通滤波系数与高通滤波系数。

分解后的各层小波系数可以通过单支重构恢复 到原序列长度,使之具有与原序列一致的性质。有 相应的重构公式为:

Cj~U =Tjh〇(k-2m) cj,m +

m

Z h\\ (k - 2m)Dj,m

m

利用多尺度分解,将原始序列分解到不同的频 率上。由于分解后的序列在频率成分上比原始序列 单一,且小波分解又对原始序列作了平滑处理,因此 对分解后的序列进行训练,得到的预测结果更准确。1.2 BP神经网络

人工神经网络(ANN)是一个自适应的函数估 计器,它不依赖于任何模型,因而实现任意的函数 关系就不依赖于其他的模型。ANN的突出优点在 于:它有较强的学习能力、容错能力等[8_9]。股票价 格的影响因素来源广泛,且存在非线性的变化特点, 其价格的预测始终是一个较难解决的问题,而ANN 在解决多变量、非线性变化曲线走势的问题上,表 现出了较好的效果。

下图为单个人工神经元模型图:

1神经网络预测模型

由于股票价格随时间的波动具有高噪声、非线

性的特点,而小波分析可以进行多分辨率分析,由

粗到精逐步观察信号。利用小波分析对股票价格曲 线进行多尺度分解,将信号分解为低频和高频两个 部分。其中:低频部分为股票的主体信息,即上市 公司的经济走势;高频部分为随机影响因素,即其 他偶然因素对股票价格产生的影响。将分解信号分 别作为Elman和BP神经网络的输入,对股票价格 进行预测。模型框架如下图所示:

图1股票预测算法流程图

Fig.l Stock prediction algorithm flowchart

1.1小波的分解与重构

小波变换的实质是将信号分解在基函数不同频 带上的子信号[6]。在股票预测分析中,股票价格呈 波动状态,在短期内看似无序,但在长时间内却有 着一定的规律和趋势性,股票价格随时间的波动即 为一组信号值。

多尺度分析是小波分析中一种对信号空间分解 的方法,多尺度分析理论认为任何一个信号都可以 分解为两部分:低频和高频。为了将信号的低频部 分与高频部分分开处理,Mallat提出了信号的塔式 多尺度分解与重构的著名算法,称为Mallat算法[7]。

Mallat塔式分解算法递推公式的矩阵表达形式为:

7=1

图2人工神经网络结构图

Fig.2 Artificial neural network structure diagram

其中:0为阈值,%为表示神经元到神经元的连接 权系数。传输函数/(•)可以采取多种形式,如阈值 型,分段线性型,Sigmoid函数型,tan函数型等。

在人工神经网络中,BP神经网络具有构造简 单、并行处理和有效解决非线性目标函数的逼近问 题的特点[1()],这正适合股票市场数据量大、价格走 势曲线为非线性函数的特点。股票市场的潜在规律

通过BP神经网络模型来学习,进而预测股票价格 未来走势,能实现高效、准确的预测结果。BP神经 网络结构如图所示:

119

《软件》杂志欢迎推荐投稿:cosoft@vip.163.com

Cj+\\,k=yZh〇(m-2k)Cj,mI

m

Dj+U=TMm-2k)Cj,m.

m

第38卷第7期

k

软 件

式中:7—输出层的w维输出向量;x —《维中间 层结点单元向量;W—输入层的r维输入向量;&一 承接层的《维反馈状态向量;^一承接层到中间 层的连接权值;%—输入层到中间层的连接权值; %—中间层到输出层的连接权值;

—输出神经

元的传递函数。&(•)一中间层神经元的传递函数。

Elman神经网络与BP神经网络相比,不同之处 在于:它在隐含层和输入层之间多了一个承接层。

BP算法由两部分组成:信息的正向传递和误差

的反向传播。具体学习过程如下:

承接层从隐含层接收反馈信号,用来记忆隐含层神 经元前一时刻的输出值,承接层神经元的输出经延 迟与存储,再输入到隐含层。这样就使其对股票的 历史数据具有敏感性,增加了网络自身处理动态信 息的能力。

步骤1:信息的正向传递

(1 )隐含层中第/个神经元的输出为

(r \\

%=f\\ T,whjPj+\\ ^ (i = h2,--,r)

0=i )(2) 输出层第&个神经元的输出为

2股票预测模型的仿真

ah=f2

V=1

J (^ = 1,2,.--,^)

J

2.1数据处理

本文选取股票代码为601992的金隅股份,从 2011年3月1日到2017年3月1日间的价格作为 原始数据。根据道氏理论,收盘价的波动在一定情 况下能够反映短期内的股市波动状况,预测市场的 基本趋势。因此,选取收盘价格作为股票价格分析 的依据。其中,选取2011年3月1日到2016年3 月1日的价格数据作为训练样本,2016年3月1日 到2017年3月1日的价格数据作为模型预测数据。 原始股票价格波动如下图所示:

(3) 定义误差函数为

zk=\\步骤2:利用梯度下降法求权值变化及误差的

反向传播

(1 )输出层的权值变化。对从第/个输入到第灸 个输出的权值,有:

\" 气

(2)隐含层权值变化。对从第y个输入到第个 输出的权值,有:

dEH

1.3 Elman神经网络

Elman神经网络是具有局部反馈功能的神经网

络,该模型在前馈网络的隐含层中增加一个承接层, 作为延时算子,使得Elman神经网络具有适应时变 的特性,能够直接反映动态过程的特性[11]。利用反 馈神经网络对股票长期走势进行预测,能够对单只 股票的整体经济周期有着更准确的把握,达到更精 确的预测效果。

图4

金隅股份2011-2017年股票价格波动曲线

Fig.4 Stock price fluctuation curve of jinyu

stock for 2011-2017 years

根据Mallat算法,选取db5小波为基函数对原 始数据数据进行4层小波分解。经小波分析处理后 的结果如图5所示。

其中dl小波为低频部分,d2、d3、d4小波为 高频部分。由图可以看出,低频小波与原始小波变 化趋势基本相同,高频小波围绕零值上下波动,证 明原始小波分解已达到较好效果。

Elman神经网络的非线性状态空间表达式为:

y{k) = g[ox,x(k)^< x{k) = h{^a}xc [k)-\\-co2 xc(k) = x{k-\\)

《软件》杂志欢迎推荐投稿:cosoft@vip.l63.com

120

2.2模型预测

由于股票价格数值变化范围并不大,为了保证

丁美琳等:基于大数据背景下的多层神经网络股票预测模型

Best Training Performance is 2.1355e-07 at epoch 23

14020101°10-210-46-01

(3sm)0JJwpJcsnbc/5ucjwpv

J

图7

800

均方误差曲线

Fig.7 Mean square error curve

1000

1200

图5小波分解后不同波段数据图

该神经网络模型预测性能较好,相对误差较小,模 型较为准确。

Fig.5 Different band diagram

预测结果的准确性,神经网络训练前不再进行归一 化。低频小波代表股票价格的长期走势,利用具有 记忆功能的局部反馈Elman神经网络进行训练;髙 频小波是股票价格受偶然因素影响的表现,随机性 较强。因此,利用对非线性函数具有较好逼近性的

3结论

本文提出了一种基于小波分析下的多层神经网

络的股票价格预测模型。该模型为基于海量的股票 数据进行价格预测提供了一种途径。该模型对股票 价格的波动曲线进行小波分解,分解为不同频率的 各层数据,分别利用Elman神经网络和BP神经网 络进行预测,将预测结果进行小波重构。利用该模 型对股票价格数据进行学习和预测,结果表明,该 组合模型股票预测具有较高的精确度,能够获得令 人满意的投资收益。此外,该算法同样适用于大量 股票价格数据的处理,从而证实了该方法在实际应 用中具有一定的实用性、有效性和可推广性。

BP神经网络进行训练。在Elman神经网络中,隐含

层采用tansig函数,输出层采用purelin函数,学习 函数为trainlm;在BP神经网络中,隐含层采用tansig 函数,学习函数为traingdm。

利用MATLAB进行仿真,再根据重构公式,对 预测后的小波进行单支各层系数重构,得到与原小 波时间尺度一致的重构小波,即股票预测价格波动 曲线。将神经网络训练得到的预测值与实际值进行 对比,结果下图所示:

预测值与实际值对比图

参考文献

[1] 杨剑宁,蔺坤,王翊新,等.大数据项目的部署分析m.

软件,2013, 34(12): 247-248.[2] 程陈•大数据挖掘分析[J].软件,2〇14,35(4): uo-m.[3] 孙吉红.长时间序列聚类方法及其在股票价格中的应用研

究[D].武汉大学,2011.

[4] Dose C, Cincotti S. Clustering of financial time series with

application to index and enhanced index tracking portfolio[C] . Physica A: Statistical Mechanics and its Applications, 2005,355(1): 145-151.

[5] Fenu G, Surcis S. A cloud computing based real time fina­

ncial system[C]. In: Proc of 9th IEEE Int Conf on Networks. Cancun, 2009, 374-379.[6] 王赛男,邢冬梅.基于MATLAB的小波阈值滤波与应用

[J].软件,2015, 36(10): 102-104.[7] 钟丽辉,魏贯军.基于Mallat算法的小波分解重构的心电

信号处理[J].电子设计工程,2012, (02): 57-59.[8] 牛志娟.基于人工神经网络预测与分类的应用研究[D].

中北大学,2016.

[9] Xiao xiao, Xu Qihua. A Comparative Research on the

Classification and Regression Based on SVM and BP[J]. The Journal of New Industrialization, 2014, 4(5): 48-53.[10] 张希影.基于遗传算法优化的BP神经网络股票价格预测

[D] .青岛科技大学,2014.[11] 王晓霞,马良玉,王兵树,王涛.进化Elman神经网络在实时

数据预测中的应用[J].电力自动化设备,2011,(12): 77-81.

U

标实及出偷洛网

16141210

60 0.5 1 1.5 2

图6股票价格实际值与预测值对比图

Fig.6 Actual and predicted stock price comparison

运用神经网络模型,对样本数据进行训练,用 反复试验法确定隐含层的单元数为20个,设定最大 训练次数max_epoch=500,目标误差err_goal=

lxl(T6。通过对比,可以看出预测值与实际值相差

较小,二者走势基本相同,预测值变化略早于实际 值,能达到预测的实际效果。此外,计算得出神经 网络均方误差MSE=6.4495x 10_6,从预测数据来看,

121

《软件》杂志欢迎推荐投稿:cosoft@vip.163.com

因篇幅问题不能全部显示,请点此查看更多更全内容