梁达正
摘 要:基于贝叶斯集成神经网络原理,构建出一个贝叶斯集成长短记忆神经网络。使用该集成网络对我国上证50指数进行预测。实验选取2015—2018年近3年来的数据进行集成学习预测。结果证明贝叶斯集成长短记忆神经网络要优于集成循环神经网络与集成长短记忆神经网络。为了使贝叶斯集成神经网络更好的运用到时间序列预测上,本文提出一种贝叶斯集成长短记忆神经网络来进行金融时间序列学习。
关键词:贝叶斯 集成学习 神经网络
中图分类号:TP183 文献标识码:A 文章编号:1674-098X(2019)06(b)-0142-03
随着科技的发展,计算机性能的不断提升,计算机的计算能力的大幅增长,作为机器学习的重要分支——神经网络正在不断的发展。人工神经网络在以时间序列为主的金融领域大展身手,对时间序列预测上占有重要地位。
1958年,Rosenblatt提出了首个实际的人工神经网络模型——感知机。1988年,White等最早利用神经网络来预测普通股每日报酬率。1997年,Hochreiter与Schmidhuber提出了LSTM(Long Short-Term Memory)长短记忆神经网络,一种利用记忆功能来增强人工神经网络。2009年,Yang通过贝叶斯正则化BP神经网络对股票指数进行预测,得到比其他改进算法更好的泛化能力。2015年,Shun通过对BP、RNN与LSTM三种模型对国内外股指的研究对比,得出LSTM模型在时间序列预测上更为准确并且利用拟牛顿法原理改进神经网络的学习速率。为了使贝叶斯集成神经网络更好的运用到时间序列预测上,本文提出一种贝叶斯集成长短记忆神经网络来进行金融时间序列学习。
1 神经网络
1.1 传统BP神经网络
人工神经网络由大量神经元相互连接而成,每个神经元看作一个激活函数。
BP神经网络是一种按照误差反向传播训练的多层信息前向传递的神经网络。一般BP神经网络分为三层:输入层、隐藏层与输出层。第一层为输入层,最后一层(L层)为输出层,中间的(2至L-1)层为隐藏层。
第l隐藏层的神经元输出为,其中mL为第l隐藏层的神经元个数。设为从l-1层第j个神经元与l层第i个神经元之间的连接权重;bil为第l层第i个神经元的偏置,f()为激活函数那么:
输出层的神经元输出为,为隐藏层神经元与输出层神经元之间的连接权重,bj为输出层yj神经单元的偏置。fy()为激活函数。
反向传播算法是LMS算法的推广,两个算法都使用均方误差作为性能指标。和LMS算法一样,用下式近似表示均方误差:
近似均方误差的最速下降算法(随机梯度下降)為:
其中α是学习率。
1.2 LSTM神经网络
在机器学习中,CNN(卷积神经网络)在分类问题上表现出色,在解决分类问题的判断要优于大部分分类模型,但是无法理解输入信息中所含有的序列信息。当输入的信息为时间序列或序列数据时,其中含有复杂的时序关联。RNN(循环神经网络)模型正是解决时序问题诞生的,RNN具有“记忆”能力,能保留输入信息前后的关联。但是随着时间的推移,神经网络的误差函数的梯度呈指数增长或下降,从而导致梯度爆炸或梯度消失。
LSTM(长短记忆神经网络),一种特殊的RNN网络,能有效的解决梯度爆炸或梯度消失的问题。
LSTM模型中的一个LSTM单元中有一个cell负责将可能需要的信息进行储存,而储存那些信息并将需要的信息输入到下一个LSTM单元则由门来决定。这些门是逻辑单元,每个LSTM单元有三个门——遗忘门,输入门与输出门。
遗忘门负责控制遗忘上层的隐藏细胞信息。上一个LSTM单元的隐藏状态ht-1与该单元的输入xt通过一个激活函数输出隐藏门的ft。
ft等于1时,记忆单元的保存信息,ft等于0时,记忆单元会遗忘之前的信息。
输入门由两部分组成
然后更新细胞状态Ct,通过遗忘门处理上一个细胞状态Ct-1
更新完细胞状态Ct后,到了输出门
生成新的隐藏状态ht然后输入结果与传入下一个LSTM单元。
2 基于贝叶斯集成长短记忆神经网络
2.1 贝叶斯公式
贝叶斯学派认为, 先验分布反映了试验前对总体参数分布的认识, 在获得样本信息后, 对这个认识有了改变, 其结果就反映在后验分布中, 即后验分布综合了先验分布和样本的信息。
贝叶斯公式:
P(A)是A的先验概率或边缘概率。称为先验是因为与B无关不受事件B影响。
P(A|B)是已知B为条件的A的条件概率,也由于得自B的取值而被称作A的后验概率。
P(B|A)是已知A为条件的B的条件概率,也由于得自A的取值而被称作B的后验概率。
P(B)是B的先验概率或边缘概率。
集成学习提供了一种估计不确定性的方法:它将多个独立神经网络的估计集合起来,这些神经网络由不同的初始化方法训练而成,有时还在训练数据的噪声上训练。集成预测的方差可以解释为其不确定性。最吸引人的是,集成方法可以很好地扩展到大量参数设置上,并且每个独立的神经网络都以一般的方式精确的训练出来。但是缺点是一般的集成算法不是基于贝叶斯的。不利于集成学习的不确定性量化。
对于单个神经网络,正则化可以防止过拟合。但是当进行集成学习时,正则化会产生不好的结果,因为它鼓励集成中的所有神经网络使用相同的单一解决方案。因此,对通常的集成学习过程的修正,从先验分布中提取值的参数的正则化。为不确定性量化提供了一种实用的、可扩展的方法。
过程的修正通过loss函数。
2.2 贝叶斯集成神经网络算法
Input 训练数据集X_train&Y_train、测试数据集X_val&y_val、先验均值、先验协方差,集成学习器数量N、数据噪声方差估计。
Output 预测值
#设置正则化矩阵
#训练集成模型
For i in range(N)
通过μ0与对NNi神经网络进行初始化
初始化参数
NNi神经网络带入()
End for
For i in range(N)
End for
Return
为了更好地对时间序列进行预测,将贝叶斯集成神经网络(BNN)改进为贝叶斯集成长短记忆网络(BLSTM)。
通过μ0与对LSTMi神经网络进行初始化
初始化参数
LSTMi神经网络带入()
End for
For i in range(N)
3 实验分析
本文使用的数据为上证50是日数据,由2015年1月1日—2018年12月31日的时间长度。考虑到LSTM模型使用到步长,取其中的900个数据作为实验用数据。其中训练集为80%,即720个,测试集为后20%,即180个数据。自变量为上证50涨跌幅的分判定。自变量为上证50的当天收盘价,最高价,最低价,开盘价,成交量,量比,KDJ的K,D,J指标与MACD指标。自变量做归一化处理。
根据样本结果与真实值分以下四种:
TP——真正例:预测为正例,真实为正例。
FN——假反例:预测为反例,真实为正例。
FP——假正例:预测为正例,真实为反例。
TN——真反例:預测为反例,真实为反例。
查准率P为:
查全率R为:
神经网络的参数设置LSTM模型的步长为5,集成学习器数量为5,LSTM模型的隐藏层单元数量为128,分块数量batch为360,即将测试集分为两块,学习度为0.005。隐藏层第一层的初始权重为,隐藏层第二层的初始权重。数据噪声为0.001。
由表1可以看出集成LSTM神经网络要优于集成RNN神经网络,而贝叶斯集成LSTM神经网络要比集成LSTM神经网络与集成RNN神经网络。贝叶斯集成LSTM神经网络与集成LSTM神经网络上,在正确率有1.14%的提升,在查准率有1.10%的提升,查全率有2.02%的提升,AUC有1.12%的提升。
4 结语
一个贝叶斯集成长短记忆神经网络。使用该集成网络对我国上证50指数进行预测。通过实验验证了正确率,查准率,查全率与AUC指标得出以下记录:
(1)3种集成神经网络的正确率与AUC都大于50%,证明集成神经网络对上证50的预测有参考价值。
(2)贝叶斯集成LSTM神经网络与集成LSTM神经网络上,在正确率有1.14%的提升,在查准率有1.10%的提升,查全率有2.02%的提升,AUC有1.12%的提升。证明结合贝叶斯后的集成LSTM神经网络要优于一般的集成神经网络。
参考文献
[1] 杨海深,傅红卓.基于贝叶斯正则化BP神经网络的股票指数预测[J].科学技术与工程,2009,9(12):3306-3310,3318.
[2] 田凯,孙永泰,高慧,等.贝叶斯算法BP神经网络缺陷量化研究[J].中国测试,2014,40(3):93-97.
[3] 孙瑞奇. 基于LSTM神经网络的美股股指价格趋势预测模型的研究[D].首都经济贸易大学,2016.