APP下载

基于经验模态分解生成对抗网络的金融时间序列预测

2020-05-16邹慧敏曲东东

计算机应用与软件 2020年5期
关键词:模态神经网络误差

王 静 邹慧敏 曲东东 白 丽

(大连海事大学信息科学与技术学院 辽宁 大连 116026)

0 引 言

时间序列是各行各业的数据按照不同的时间间隔依次、连续产生的,它们通常包含着丰富且复杂的信息。由于人们需要从时间序列中获取有价值的信息,因此时间序列分析技术应运而生。时间序列分析领域的关键一环是预测。时间序列预测是根据数据的历史规律以及变化趋势,对未来数据的发展状况做出合理的推测。金融时间序列是时间序列的一种,对于政府、投资机构和投资者均有着重要的意义,一直以来都是金融领域和计算机领域的研究热点。

由于金融时间序列非线性且非平稳的特性,进行预测时存在预测精度不高的问题,所以国内外学者进行了大量的研究,并提出了包括自回归滑动平均模型(Auto-RegressiveandMovingAverageModel,ARMA)[1]、随机森林(RandomForest,RF)[2]、长短时记忆神经网络[3]等多种金融时间序列方法,这些模型都是有监督的学习方法。近年来,生成对抗网络[4]以其独特的对抗思想和无监督学习方式成为深度学习领域中的重要分支。Mathieu等[5]提出了一种用于视频预测的GAN网络结构;王玉龙等[6]提出了一种用于地面新增建筑检测的GAN网络模型;文献[7]提出了一种使用注意力机制以提高生成图像质量的SAGAN模型。上述文献表明,虽然GAN已成功应用于计算机视觉并取得了不错的效果,但是在金融时间序列分析领域的应用却少之又少,本文将生成对抗网络模型应用于金融时间序列预测领域。

鉴于GAN具有良好的捕捉数据间隐含深层关系的能力,本文致力于将GAN应用于金融时间序列预测。Zhou等[8]首次采用GAN对高频股票市场进行预测,并有效地提高股价方向预测精度,降低预测误差;Zhang等[9]将GAN应用于股票市场的预测。上述文献虽然将GAN应用于金融时间序列预测,但都采用了原始GAN模型,存在预测精度不高、模型不稳定等问题。为了解决上述问题,首先本文在保留WGAN-GP[10]优点的基础上,将经验模态分解[11]与LSTM结合作为生成器,卷积神经网络[12]作为判别器;然后将WGAN-GP生成器的损失函数与均方误差结合作为本文生成器的损失函数;最后,使用该模型对沪深300指数进行实验,验证了该模型预测的准确性。

1 算法设计

为了解决生成对抗网络对金融时间序列进行预测时存在预测精度不高、模型不稳定等问题。本文提出了一种新型的用于金融时间序列预测的生成对抗网络模型。由于金融时间序列大多数都是非线性且非平稳的,而经验模态分解非常适合分析这类数据,故本文将经验模态分解和生成对抗网络的生成器结合;又因为生成对抗网络生成器的目标函数和样本数据没有直接关联,会导致模型不稳定,所以对其目标函数进行改进。

1.1 EMD-WGAN算法的网络结构

经验模态分解生成对抗网络的网络结构如图1所示,主要包括:数据预处理、生成模型G和判别模型D三部分。

图1 EMD-WGAN结构

数据预处理可以从原始数据中获取更多的信息,便于进一步分析及预测。本文首先对原数据中的异常数据进行降噪,得到降噪后的数据,然后进行线性归一化处理:

(1)

式中:Xn表示归一化后的数据;X表示降噪后的数据;Xmin表示降噪后数据的最小值;Xmax表示降噪后数据的最大值。

生成模型由经验模态分解和N个长短时记忆神经网络组成。LSTM具有良好的记忆性能,并且在对金融时间序列进行预测时表现出了良好的特性,所以采用LSTM作为生成对抗网络生成模型的一部分。本文的生成模型与原始GAN生成模型不同之处在于其采用EMD和LSTM结合作为生成模型。改进后的生成对抗网络不是直接将预处理后的数据输入到生成模型中,而是将预处理后的数据先进行经验模态分解得到N-1个包含原数据不同时间尺度特征的本征模态函数(Intrinsic Mode Function,IMF)和一个余波。然后将这N组数据分别输入N个LSTM神经网络中。最后将LSTM的输出进行求和作为生成数据与真实数据一起输入给判别模型。这样做的优势在于:经过EMD后的数据频率相似并且具有良好的规律性,不仅可以降低生成模型的复杂度,而且可以提高预测精度。

本文采用CNN作为判别模型,结构如图2所示。

图2 卷积神经网络

判别模型的作用是判别输入数据是真实数据还是生成模型的生成数据,相当于一个二分类器。因为CNN具有良好的特征提取能力,并且在分类任务上表现良好,所以判别模型采用CNN。CNN是一种深度前馈神经网络,由输入层、输出层和多个隐藏层组成,其中隐藏层包括卷积层、池化层、全连接层。首先输入层输入数据,然后卷积层通过卷积运算提取特征,池化层进行特征降维、压缩数据和参数,防止过拟合,最后经过全连接层连接并进行输出。

1.2 目标函数

目标函数的设计是生成对抗网络模型研究中的一个重要部分,一般可以采用交叉熵、均方误差和Wasserstein距离等。均方误差表示的是真实数据与预测数据之间距离平方和的平均数。本文使用WGAN-GP中使用的Wasserstein距离和均方误差作为本文的目标函数:

(2)

本文判别器的目标函数采用WGAN-GP判别器的目标函数:

(3)

式中:m为小批量样本的大小。

本文生成器的目标函数:

(4)

(5)

(6)

1.3 训练过程

本文采用Adam优化算法[13]训练EMD-WGAN,使模型参数达到最优,具体步骤如下:

1) 初始化生成器和判别器的学习率lg和ld,权重θ和w;设置超参数λ和ε;给定m组历史数据X:(x(1),x(2),…,x(m))和真实数据Y:(y(1),y(2),…,y(m))。

2) 若模型未收敛,则:

(2) 更新判别器D:由更新好的生成器G*可以得到生成数据G*(z):(G*(z)(1),G*(z)(2),…,G*(z)(n)};将生成数据G*(z)和真实数据Y输入给判别器,根据Adam算法更新判别器的权重w:w←Adam(▽wLD)。

3) 若模型收敛,则训练结束。

2 仿真实验与结果分析

2.1 实验数据

本文数据釆集自“wind”上2002年1月-2019年3月的沪深300指数。数据集的生成方式为每天采集一次数据样本,使用前20天的收盘价预测第21天的收盘价。由于金融时间序列在实际应用中,还存在各种数据处理时间及训练时间的要求,所以在研究中采用了总数据中的最后4000个数据,其中前2/3作为训练集,后1/3作为测试集。

2.2 评价指标

误差准则用来评估预测模型的性能。目前对于评价指标的选择有很多种,一般是从不同的角度选取不同的评价指标对模型进行科学的衡量与评估。本文采用平均绝对误差(MAE)、均方误差(MSE)、均方根误差(RMSE)、平均绝对百分比误差(MAPE)作为模型评价指标,计算公式如下:

(7)

(8)

(9)

(10)

2.3 实验结果与分析

本文将分析非线性数据性能良好的EMD和WGAN-GP的生成器进行结合,即先将预处理后的数据进行EMD,再将分解后的数据输入给LSTM,最后生成器和判别器进行对抗训练得到最终的输出。为了验证本文金融时间序列预测算法的准确性,选取了已经成功应用于金融时间序列预测的LSTM和深度学习中具有代表性的WGAN-GP与本文模型进行对比。

本文模型生成器由EMD和9个LSTM神经网络构成,每个神经网络有2层LSTM隐藏单元,每层包含10个神经元,激活函数为tanh,学习率为0.0006并采用Dropout防止过拟合。判别器由3层CNN构成,卷积核分别为[1,32]、[1,64]、[1,128],激活函数为LReLU,学习率为0.0006,池化方法为最大池化,并采用Dropout防止过拟合。

图3给出WGAN-GP、LSTM和EMD-WGAN的预测值与真实值,可以看出,LSTM、WGAN-GP与EMD-WGAN模型预测的数据走势总体与实际数据的走势相同,但EMD-WGAN相比于其他两个模型能够更好地拟合实际数据;EMD-WGAN模型相比于未加经验模态分解的WGAN-GP能够更多地提取到原始金融时间序列的非线性特征,能提高金融时间序列预测的精度;EMD-WGAN和LSTM相比,虽然LSTM对于一些转折点的数据也能够较好地拟合,但是LSTM的整体预测却远不如EMD-WGAN。虽然EMD-WGAN模型整体预测精度提高了,但在某些峰值处未能较好拟合,其主要原因是:1) 实验中使用的金融时间序列的技术指标有限,仅仅使用了沪深300指数的收盘价。2) 实验中使用的金融时间序列的数量有限,仅仅使用了2002年-2019年的数据。3) 实验中使用的金融时间序列没有考虑到政策、新闻等因素对股票价格的影响,仅仅从数据本身特征进行分析。

(a) WGAN-GP预测结果

(c) EMD-WGAN预测结果图3 不同方法预测结果对比

为了进一步验证本文算法的有效性,我们选取了最近一年LSTM、WGAN-GP、EMD-WGAN预测值与真实值的误差进行对比,如图4所示。可以看出EMD-WGAN的整体误差最小,LSTM最差。但是在2019年1月-2019年3月,LSTM和EMD-WGAN误差接近且比WGAN-GP误差小,结合图3可以看出,在这段时间内有一个较大的转折点说明对于突变数据LSTM和EMD-WGAN拟合的效果比WAGN好。

图4 预测误差

由表1可以看出,从MAE、MSE、MAPE和RMSE这四个指标上来看,本文算法最优,WGAN-GP次之,LSTM效果最差。本文算法和WGAN-GP相比,加入经验模态分解后能够更好地捕捉金融时间序列的非线性特征,降低了预测误差。

表1 不同预测方法结果对比

3 结 语

针对金融时间序列预测,本文提出了基于经验模态分解的生成对抗网络的时间序列预测模型。该模型的生成模型由EMD和LSTM神经网络组成,判别模型为CNN。生成器的目标函数引入真实值和预测值的均方误差以提高模型稳定性,并对其进行论证。采用沪深300指数对LSTM、WGAN-GP和本文模型进行实验,综合MAPE、MSE、MAE和RMSE四个指标,实验结果表明本文模型具有较高的预测精度。后续研究工作将考虑政策、新闻等因素对股票价格的影响,以便得到预测准确率更高的模型。

猜你喜欢

模态神经网络误差
基于神经网络的船舶电力系统故障诊断方法
联合仿真在某车型LGF/PP尾门模态仿真上的应用
MIV-PSO-BP神经网络用户热负荷预测
基于老年驾驶人的多模态集成式交互设计研究
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
CBCT图像引导的放疗前后半程摆位误差分析
模态可精确化方向的含糊性研究
隧道横向贯通误差估算与应用
隧道横向贯通误差估算与应用
三次样条和二次删除相辅助的WASD神经网络与日本人口预测