信号分解与融合神经网络的金融数据预测研究

2020-06-05 12:17丰,邵
小型微型计算机系统 2020年6期
关键词:时序分量模态

金 丰,邵 清

(上海理工大学光电信息与计算机工程学院,上海200093)

1 引 言

近年来,随着经济的快速发展,金融市场的变化趋势也越来越复杂.了解金融活动的模式并预测其发展和变化是学术界和业界研究的重点.使用某种方法对金融时间序列进行近似预测,有助于了解宏观层面金融市场的发展和变化,为投资者和公司在微观层面制定交易决策和计划提供依据.但是由于金融时间序列一个嘈杂的、具有非参数特点的动态系统[1],金融时序数据具有非线性、混沌、长记忆[2]等特点,因此预测其发展趋势是一项极其困难的挑战.

从自回归求和移动平均(ARIMA)方法,到自回归条件异方差(ARCH)模型及广义 ARCH(GARCH)模型[3,4],金融时间序列分析的方法和技术得到了长足的发展.但是传统时序建模方法要求时序数据是稳定的,或者通过差分化之后是稳定的,同时这类方法本质上只能捕捉线性关系,不能捕捉非线性关系,因为上述原因,传统时序建模方法在金融时序预测中的表现并不算太好.

具有非线性建模潜力的机器学习和深度学习方法在金融时序预测接下来的研究中大放异彩,这类方法通过特定的机器学习/深度学习模型进行预测,比如Cao[5]等人的支持向量机(SVM)、禹建丽[6]等人的 BP 神经网络、Di Persio 和 Honchar[7]的 RNN/LSTM/GRU.这一类方法在预测性能上普遍表现较好,预测指标相较于传统方法均有大幅提升.但是这类模型使用的均是特征+模型的预测方式,特征的好坏直接决定了预测性能所能达到的上限,目前所进行的研究中研究者们都只是简单的使用开盘价、收盘价、技术指标等简单的特征,使用这样的特征得到的预测结果具有滞后性、拐点处误差较大的缺陷,影响预测精度.

因为传统特征提取存在的限制,部分研究人员开始在其他方向上寻找金融时序数据的预测手段.为了解决时序数据的信号分析问题,Huang[8]等提出了 Hilbert-Huang 变换.这是针对非线性非平稳数据的一种经验性的、非参数化的、而又完备的、兼顾时域和频域的分析方法.它包含经验模态分解(EMD)算法和Hilbert 变换两个过程.经验模态分解认为任何一个复杂序列都可以分解成若干个IMF 分量,这些分量具有不同的特征尺度,与分解前的原数据序列相比更有规律性,虽然这些分量之间仍然存在着不同程度的非平稳性,但是因为它们具有不同的特征尺度,所以它们之间的相互影响被隔离了,利用这种隔离就可以减小非平稳性给预测带来的困难.在后续的研究中,又发展出了集成经验模式分解(EEMD)[9]和变分模态分解(VMD)[10]等信号分解方法,进一步优化了信号分解的效果.部分研究人员尝试将信号分解方法应用到金融时序数据预测的研究中来,比如 Xu[9]、史文静[11]等人将具有长相关性质的原始序列分解为若干个不同的本征模函数(IMF)并分别进行预测,最后将结果整合得到预测数据.尽管这种信号分解分别预测再整合的方法得到了较为准确的预测结果,但是这种方案仍然存在一些问题,在每种模式的预测过程中,真实值和预测值之间在聚合过程中经常会积累估计误差,这会降低预测准确性[12].部分研究人员另辟蹊径,对EMD 分解出来的IMF 不再进行分别预测,而是对各个IMF分量进行适当的处理之后,把处理后的IMF 分量当做特征统一输入到模型中,结合预测模型,得到比较好的效果,例如Wei[13]、潘和平[2]等人进行了这类研究.这种运用 IMF 作为综合特征的方法也取得了良好的预测效果.同时,在不同的信号分解模型中,VMD 表现出更佳的性能[14].

目前的研究方案在处理金融时序数据上都显得不够全面,我们从金融时序数据的三个特性来看,混沌特性是说明数据虽然本身看起来是杂乱无序的,但是混沌系统也有些内在的序,通过信号分解是可以得出规律的;长记忆则是相隔一段时间的数据之间具有一定的相关性或依赖性,通过循环神经网络我们可以学习到数据的时序特征,可以解决这一问题;非线性则说明数据是受到众多影响因素影响的,而且因素之间存在复杂的交互关系.信号分解方法成功的从数据中提取出了较为有效的特征,但是基础的机器学习/深度学习模型往往没有考虑到因素间的交互问题,只用一个激活函数来处理非线性的问题,这样就导致了预测效果不佳,所以我们要引入因子分解机(FM)[15]来解决因素的交互问题.基于此,我们提出了基于变分模态分解的LSTM-FM 双通道融合模型,将经过变分模态分解的特征输入到两个通道中,通过LSTM 得到数据的时序特征,通过FM 得到数据的交互特征,经过特定方案进行特征融合,使模型能同时表达数据的时序特征和交互特征.

目前特征融合在自然语言处理和图像方面得到了较多应用,自然语言处理中大多数的特征融合方案选择的是特征拼接的形式,将不同类型的特征进行拼接(concat)再放入dense层中做预测/分类[16];图像处理方面除了特征拼接,还有一类融合方案就是将不同特征按区域相加(element-wise add),在FPN[17]、ResNet[18]等网络中都有运用.但是一般来说图像融合中的特征语义类似,直接进行区域相加操作是可行的,本文中的两类特征虽然是从同一数据中提取出来的,但是特征语义是否类似并不确定.普通的拼接特征方案只是简单的将特征融合工作交给dense 层,无法保证时序特征或者交互特征在预测中都起到足够的作用,所以有必要在进行最终的回归预测之前对两个特征进行有效的融合.于是本文以图像融合中的按区域相加操作为基础尝试用改进的局部连接层来融合特征,局部连接层根据卷积神经网络[19]的卷积层改进而来,其主要区别在于局部连接层不进行权值共享.卷积核在相同的空间位置对两个特征的加权求和进行建模,权值不共享的卷积核能够动态的学习两个特征的对应关系,从而使联合损失函数最小化,获得更好的融合效果.

本文提出的方法是首先通过信号分解方法对原始股票指数序列进行变分模态分解得到IMF 分量,再将IMF 分量输入到LSTM-FM 模型中进行训练来预测股票市场的指数.本文将通过将不同市场背景下的模型预测结果与传统方法和其他机器学习方法进行分析对比,检验模型的有效性.

2 模型构建方法

2.1 预测模型的建立

本文提出的双通道融合模型主要由以下几个部分构成:

1)信号分解.根据变分模态分解算法分解原始金融时间序列并采用滑动窗口法构建后续模型所需的数据,详见2.2 节.

2)左通道LSTM 层.用于获取数据的时序特征,详见2.3 节.

3)右通道FM 层.包括将三维数据过滤为二维数据的时序过滤层和根据FM 原理构建的FM 层,获取数据的交互特征,详见 2.4 节.

4)卷积融合层.将时序特征和交互特征拼接并经过特殊的局部连接层融合为一体,使模型能同时表达数据的时序和交互特征,详见 2.5 节.

本文提出的模型具体如图1 所示.

图1 VMD-LSTM-FM 模型Fig.1 VMD-LSTM-FM model

2.2 基于变分模态分解的信号分解

我们首先使用VMD 分解来抽取出能够代表金融时序数据内在特征的IMF 分量.VMD 通过求解以下等式来完成分解:

其中{uk}={u1,u2,…,uk}是各模态分量;{ωk}={ω1,ω2,…,ωk}是各模态相应的中心频率;δ(t)为冲激函数.

引入拉格朗日乘法算子λ(t),将约束性变分问题转化为非约束性变分问题,如公式(3)所示:

其中α=二次惩罚因子,VMD 采用交替方向乘法器(ADMM)在每个模态的移位过程中获得K 个定义模态及其中心频率.因此,公式(4)可以表示如下:

在该过程期间,引入维纳滤波器以从傅立叶频谱生成非递归分解模态,并且使用公式(4)更新各个中心频率.公式(5)和公式(6)分别如下:

在非负频率区间,更新λ:

满足下列公式后迭代停止,其中ε 为判定精度:

原始金融时间序列s(t)经VMD 分解后得到模态{uk}={u1,u2,…,uk},将归一化的数据按照时间进程依次排列,组成二维数据矩阵形式,以滑动窗口截取方式构造训练集,构造方式如图2 所示,假设滑动窗口的时间步长为n,其中预测标签为n+1 时刻预测参数y 的值,则输入模型中的数据xt格式为(?,n,k),将数据同步输入到两个通道中.

图2 数据的构造方案Fig.2 Data construction scheme

2.3 因子分解机层

在本模型中因子分解层主要是用于从数据中提取出交互特征.由于FM 在潜在空间中学习,因此FM 在学习特征交互方面具有关键优势,这是我们在模型中选择FM 的主要原因之一.

因为FM 只能输入二维的数据,本身数据是三维的,所以必须要经过时序过滤层将数据过滤为二维,时序过滤层是一个定制的单神经元dense 层,使用固定的权重去乘以输入,得到输出数据.

其中 w 为固定的权重,w=[1,0,…,0],长度为 n.经过时序过滤层的处理,FM 的输入x'格式变为(?,k).

FM 通过因子分解的交互参数对每对特征之间的所有交互进行建模来估计目标:

各参数的意义表示如下:w0是全局偏置量,wi建模了第i个变量的强度,〈vi,vj〉建模了第i 和第j 个变量之间的交互.

在因子分解机中:交互项可以重写为公式(11):

由于本模型注重的仅仅是获取数据的交互特征,所以并不需要完全将因式分解机全部纳入模型,只需要根据公式(11)修改dense 层的函数即可获得能够学习数据交互特征的FM 层,于是:

金融时序数据s(t)经过右通道FM 网络后得到交互特征向量fFM,数据格式为(?,k).

2.4 LSTM 层

因为引入因子分解机的目的是获得输入之间的交互特征,在普通的LSTM 模型中是利用激活函数来简单的处理这种非线性,更高级的时序特征比如Bi-LSTM 或者Bi-GRU 等方式都有更为复杂的模型,在非线性处理上对数据的影响较大,在后续的融合中可能造成不利影响,于是选择了最基础的LSTM 模型与因子分解机进行融合.在本模型中LSTM 用于提取数据的时序特征,通过对前期信息有选择的记忆和遗忘,LSTM 实现了对相关信息的长期记忆,从而提取了数据的时间特征.

LSTM 的输出结果如公式(13)所示:

其中ht为LSTM 的输出,ot是输出门的输出,ct是细胞存储器状态,分别定义为公式(14)和公式(15):

细胞存储器状态中还包括了遗忘门的输出ft和输入门的输出it,分别定义为公式(16)和公式(17):

其中xt为输入,W 为权重系数矩阵,b 为偏置项,σ 和tanh 分别表示sigmoid 激活函数和双曲正切激活函数.

经过左通道LSTM 网络后得到时序特征向量ht.

2.5 卷积融合层

本模型中卷积融合层主要用于融合数据的时序特征和交互特征.金融时序数据s(t)经过右通道FM 网络后得到交互特征向量fFM,数据格式为(?,k);经过左通道LSTM 网络后得到时序特征向量ht,为了便于接下来的融合操作,调整LSTM 的神经元数量,使数据格式也成为(?,k).左右两个通道的特征向量经过Concatenate 层按列拼接,Concatenate 层的输出 Co格式为(?,2,k).

本文中的局部连接层的工作方式如图3 所示:

图3 卷积融合层工作样例图Fig.3 Convolutional fusion layer working example

在局部连接层中,卷积操作是指计算输入向量的区域和卷积核的权重矩阵之间的点积并求和,将其结果作为卷积操作的输出,卷积核将滑过整个图像,重复相同的卷积运算.

在传统的卷积层和局部连接层中,卷积核的形状一般为正方形(即形状一般为(2,2),(3,3)等),本文中局部连接层的目的是融合两个不同的特征,所以将卷积核的大小设置为(2,1),同时由于局部连接层的权值不共享,所以每一个融合特征Li都是由时序和交互特征以不同的权值融合的,经过反向传播算法,不断优化卷积核的权值,这样在卷积操作后得到的特征向量就可以同时表征数据的时序特征和交互特征.

卷积融合层的输出Lo的具体产生过程为:

其中f()为激活函数,Wi表示第i 层卷积核的权值向量,×表示卷积核与特征进行卷积操作,bi表示偏置.

最后我们将得到的融合特征Lo输入到dense 层中进行回归预测.

3 实验分析

3.1 数据来源

为了验证方法的有效性,我们选取两个不同的股票市场数据来进行实验:中国的沪深300 指数和美国的标准普尔500 指数.因为LSTM 等深度学习方法要求数据量较大,同时综合考虑了两个市场的运行情况,选择了两个市场运行相对平稳的2008年1月2日至2017年12月28日为止的数据,其中前80%部分用作训练集,剩下的20%部分用作测试集.

在特征方面,我们选择股票指数的开盘价、收盘价、最高价、最低价、成交量五个要素作为普通特征用于进行常规的股指预测,而VMD 分解是基于股指每日收盘价的时间序列进行分解的,分解后得到的IMF 分量作为特征来进行预测.

我们将对沪深300 指数和标普500 指数进行VMD 分解,将分解出来的IMF 分量作为特征使用.VMD 分解的第一步是要确定模态数K,K 值定的太高容易出现过分解现象,会导

3.2 VMD 信号分解

致模态重复;K 值定的太低则会出现欠分解[20].本文根据中心频率值确定K 值,K 值首先从5 开始,对原序列进行VMD分解,检测每个模态对应的中心频率,未出现中心频率近似的模态则K 值加1,进行下一轮分解,直到出现第一个分解后出现中心频率近似的模态为止,记录下当时的K 值,选择K-1的值作为VMD 分解的模态数.除此之外,对惩罚因子α 取默认值2000;τ 取值0.3 以保证数据分解的保真度.对时序数据进行归一化处理,将数据缩放至(-1,1),再进行VMD 分解.

图4 沪深300VMD 分解图Fig.4 HS300 Index VMD decomposition map

图5 标普500 指数VMD 分解图Fig.5 S&P 500 Index VMD decomposition map

首先对沪深300 指数进行变分模态分解,经过测试,K 值取12 时数据分解的效果最好,VMD 分解得到的IMF 如图4所示.

同理,对标普500 指数进行VMD 分解,经测试,K 值取10 时,数据分解的效果最好,VMD 分解得到的IMF 如图5所示.

3.3 评价指标

本文对于价格预测能力的评价指标选取为均方根误差RMSE、平均绝对误差MAE、确定系数R2和方向准确率DA,其中RMSE 是用来衡量观测值同真值之间的偏差,RMSE 越小,模型对于真实值拟合的偏差越小,结果越准确;MAE 是绝对误差的平均值,能更好地反映预测值误差的实际情况,同样也是值越小结果越准确;确定系数R2越接近1,表示模型拟合效果越好.DA 的定义为模型对股票价格变化方向预测的准确性,具体公式定义:

3.4 实验及对比实验的设置

为了验证本文所提出VMD-LSTM-FM 模型的有效性,我们使用前文中提到的数据、VMD 分解层数、评价指标,使用经过VMD 提取的IMF 分量用作特征进行预测.

图6 模型loss 变化曲线Fig.6 Model loss curve

在模型参数方面,以沪深300 指数预测为例,先定义时间步长为5,将归一化的IMF 分量数据按照时间进程依次排列,组成二维数据矩阵形式,以滑动窗口截取方式构造训练集.根据3.2 所述 VMD 的 K 值取的12,所以输入数据的形状为(?,5,12).根据 2.4 节描述的模型,右通道 FM 层输出的形状为(?,12),首先固定训练次数epoch=1000,接下来我们确定左通道LSTM 合适的隐藏层数量,经过试验LSTM 在具备三个隐藏层之后再增加隐藏层性能变化不明显,五层以上则明显过拟合,所以我们左通道选择三个LSTM 层的组合.根据神经元选择的传统,神经元个数一般是2 的次方数,我们以(2,2)为起点,最后一层固定为12 个神经元,逐步增加神经元数目,发现(64,32,12)的神经元组合数目得到最好的预测效果.在激活函数方面,我们发现使用tanh 函数时预测效果较为理想.epoch 的大小会对模型的预测精度和运行效率造成较大影响,图6 为模型在训练过程中的loss 变化曲线,由此可知模型在200 次迭代后已基本收敛,300 次迭代后loss 基本稳定,于是设定epoch 为300.

为了防止模型过拟合,还需要在模型中加入dropout 层,设定从 0.2 起步,每次增加 0.1,发现 dropout=0.5 时模型表现较好.卷积融合层的参数根据2.4 节的描述,设置filters=1,卷积核大小为(2,1),激活函数为Relu.参照上述方式选取使用数据为标普500 的模型参数.

我们将本模型的预测结果与学术界常见的几种预测模型结果进行比较,具体的对比模型如下:

3.4.1 单通道模型

1)输入数据为常规特征

输入特征为t 日的指数开盘价、指数收盘价、指数最高价、指数最低价、指数成交量等五个指标,输出结果为t+1 日的指数收盘价.比较模型为 BP 神经网络、支持向量回归(SVR)、循环神经网络(RNN)、长短期记忆神经网络(LSTM).

2)输入数据为VMD 分解得到的IMF 分量

输入为t 日至t+5 日的指数经变分模态分解的IMF 分量,输出结果为t+6 日的指数收盘价.比较模型为长短期记忆神经网络(LSTM)、因式分解机(FM).

3.4.2 双通道模型

输入为t 日至t+5 日的指数经变分模态分解的IMF 分量,输出结果为t+6 日的指数收盘价.比较模型为将经过LSTM 和FM 两个通道的特征进行拼接(VMD-C-LSTM-FM)或直接按区域相加(VMD-A-LSTM-FM).

参照前述参数配置过程,选取对比实验模型最佳的模型参数.

3.5 实验结果与对比分析

实验的评价指标记录表如表1 所示.

表1 (a) 沪深300 指数模型预测结果对比Table 1(a) Comparison of prediction results of HS300 index model

首先我们观察到目前学术界比较常见的几种模型(BP、SVR、RNN、LSTM)在 R2、RMSE、MAE 三项上表现各有千秋,但是它们在DA 这个值上表现普遍低于50%,说明模型没办法准确预测市场的趋势,在图形上的表现则是预测值和实际值出现了平移,如图7 所示,这是使用普通特征进行预测无法克服的问题.

表1 (b) 标普500 指数模型预测结果对比Table 1(b) Comparison of prediction results of S&P 500 index model

VMD 分解我们可以把它视为一种对金融时序数据进行特征提取的方法,分解出来的IMF 分量可以视作市场内在的特征,将IMF 分量输入到模型中进行预测得到的结果更为精确,我们将VMD 引入到模型中后,DA 立刻飙升到70%以上,说明使用VMD 分解后得到的IMF 分量进行预测可以有效的捕捉市场的趋势,在图形上的表现则是预测值和实际值未出现平移现象,高低点重合度较高.不仅如此,在 R2、RMSE、MAE 三项指标上使用VMD 的方案也相较于普通预测方案有较大提升.

学术界目前有不少使用VMD 分解后的IMF 分量做特征的模型,但是目前大多数模型均是直接将IMF 分量投入到改进的模型中运用,没有考虑到各个IMF分量间的交互作用.为了获得IMF 分量间的交互信息,本文在模型中引入了因子分解机,通过因子分解机获得IMF 分量的交互特征,并将其和LSTM 获得的时序特征通过双通道神经网络融合到一起.针对传统的拼接和按区域相加融合方案的不足,本文提出了使用改进的局部连接层进行融合的新方案,使模型能更有效的同时表达数据的时序特征和交互特征,优化模型的预测效果.从预测结果上来看,本文提出的局部连接层融合方案VMD-LSTM-FM 在两个市场上的表现均好于特征拼接方案(VMD-C-LSTM-FM)和直接按区域相加方案(VMD-ALSTM-FM).RMSE 平均比 VMD-C-LSTM-FM 低 28.6%,平均比 VMD-A-LSTM-FM 低 44.32%;MAE 平均比 VMD-CLSTM-FM 低 42.22% 平均比 VMD-A-LSTM-FM 低 53.22%;R2平均比 VMD-C-LSTM-FM 高 2.54%,平均比 VMD-ALSTM-FM 高 6.09%;DA平均比VMD-C-LSTM-FM 高4.68%,平均比 VMD-A-LSTM-FM 高 7.23%.预测性能有明显提升.

图7 Fig.7

4 结 论

本文首先对学术界进行金融时序数据预测的方法进行了总结,并通过实验验证了以VMD 分解作为特征提取方案的有效性,克服了目前大多数研究中无法有效预测市场趋势的问题,成功的从金融时序数据中提取出了有效的特征.

目前学术界大多数研究在使用VMD 分解后的IMF 分量做预测时均未考虑各个IMF 分量间的交互问题,本文将因子分解机引入到模型中,试图将LSTM 和FM 融合为一体.针对目前双通道融合方案的不足,本文基于图像融合的原理提出了局部连接层融合特征的方案,经过实验验证了 VMDLSTM-FM 的有效性,提出的模型在不同市场上均表现出极佳的性能,取得了更加准确的预测结果,包括更低的预测误差和更高的方向准确性.

猜你喜欢
时序分量模态
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
联合仿真在某车型LGF/PP尾门模态仿真上的应用
多模态超声监测DBD移植肾的临床应用
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
跨模态通信理论及关键技术初探
你不能把整个春天都搬到冬天来
画里有话
一斤生漆的“分量”——“漆农”刘照元的平常生活
一物千斤