使用激活函数优化后的神经网络预测上证指数

2020-04-19 09:01黄卓诚
福建质量管理 2020年8期
关键词:股票价格损失神经网络

黄卓诚

(河北金融学院 河北 保定 071051)

一、引言

随着中国经济的发展,股票市场作为服务实体经济的重要手段,对企业发展和整体经济稳步提升有着重要意义。与此同时,股票市场的涨跌与国民经济密切相关,国家的经济形势往往也可以通过股票价格的变化来体现。因此,预测和研究股票价格的重要性也愈发显著。

近年来,越来越多的研究者通过经济学、数学理论来分析、研究和预测股票的走势,得到了不同的预测理论。然而,股票市场是一个复杂的非线性动态系统,所以在对其进行预测时若使用传统的时间序列模型,效果并不理想。这也使得其对函数的拟合需求也是非线性拟合。

本文所介绍的神经网络作为不依赖于模型的自适应函数预测器,可以带来更好的预测效果。本文提出基于神经网络的短时股票趋势预测模型,通过全连接神经网络算法,所建立的模型能够找到市场环境变化所带来的一定规律,一定程度上解决以往一些股票趋势预测方法的缺陷。

二、文献综述

(一)神经网络

神经网络,全称为人工神经网络,是对人类大脑思维的模拟。由于人脑中含有多个神经元并将其连接而成一个多层网络,使得它能够很好的对人类大脑进行模拟并且充分实现大脑中神经元的所有功能。作为一个自适应的函数预测器,神经网络因其复杂的非线性动态系统,并不依靠于任何的模型,故当其实现某种函数关系时无需依靠其他模型。

神经网络在进行处理时拥有较强的学习能力以及容错能力,这使得其比起传统的处理方式更具优势。所以,我们可以发现在信息领域,对神经网络的使用与发展越来越具有重要意义。

神经元在神经网络中的连接方式反映了神经元之间的拓扑结构,它决定了神经元的本质及其处理信息的能力。本文中使用的反向传播神经网络(Back-Propagation Network,即BP网络)是用于非线性可微分函数的权重训练的多层网络。而在实际运用人工神经网络时,80%~90%的神经网络模型是使用BP网络或其变体,它也是前向网络的核心部分,反映了人工神经网络最精华和重要的部分[1]。

自1987年Lapedes和Faeber首次将神经网络应用于预测以来,神经网络在金融领域中的预测方法得到了广泛重视和研究[2]。自90年代开始,神经网络在经济领域得到了广泛运用。

FUJITSU实验室的Kimoto等人在分析不同市场相关因素内在联系的基础上,开发了基于神经网络模型的TOPIX预测系统,预测东京股票交易市场的股票买卖时机[3]。Dr.Youngohc Yoon和George Swales在1991年比较分析了神经网络和多重差分方法应用于股价的预测方面的能力[4]。2005年,Altay通过实验比较了神经网络和传统线性回归方法进行预测的效果,证明了神经网络相对于传统线性回归在股票预测方面的优越性[5]。

在国内也有许多学者对利用神经网络进行股票价格的预测展开过研究。陈蓓蓓于2011年将股票价格预测与主成分分析法以及神经网络模型相结合进行研究。郑睿等在2015年将因子分析与神经网络两者融合,以此对股票价格预测分析[6]。孙晨等在2016年对BP神经网络进行布谷鸟算法优化之后,将模型应用到股价预测之中[7]。孙冰洁等在2016年利用小波分解与重构,采用BP神经网络模型进行股票市场的研究[8]。

在众多研究中,神经网络均能更好的拟合数据并更好的泛化,其预测精度比传统的统计预测方法有很大的提高,相对而言可以得到更好的结果,这些研究成果有力地证明了神经网络在对于股票市场的预测上更为有效。

(二)BP神经网络缺陷

虽然BP神经模型在分析和预测股票市场等非线性系统方面有其独特的优势,但是,也存在一些需要解决的问题。通过对模型所含有的缺点进行分析可以得到一些解决方案。

首先,由于BP算法的本质是梯度下降法,所以发生锯齿形现象的概率很大,即一般来说,当误差梯度变化相对较小时,增加权重值的调整量能够使得误差的变化明显,但在这种情况下,即使将权重值的调整量增加,误差的变化也会增加的较为缓慢,这便是BP神经算法之所以效率低的原因[9]。

其次,虽然整个模型的权重值和阈值都可由于训练而达到最优值,但在网络结构参数运算函数的选择上仍然是主观的,缺乏理论依据,一般选取都是基于经验。这就使得整个模型往往具有复杂性、局限性,也增加了网络学习时间。

(三)BP神经网络改进

研究者们也针对以上问题,不断给予改进。一些研究者改进了激活函数,不再使用原有的转换函数Sigmoid,而是使用tan-Sigmoid函数。tan-Sigmoid能将(-∞,+∞)的输入值分别映射到(-1,1)之间,这样的输入输出关系能够恰好反映单个神经元的响应特征,从而优化整个模型。另外也可以选择Relu作为激活函数,Relu的优势在于:1.不饱和;2.计算效率高;3.收敛速度快。Relu激活函数可以有效解决梯度下降苦难的问题,每层的网络都可以得到相同的更新速度。通过选择适合的激活函数,可以有效解决学校收敛慢、梯度消失的问题。

除此之外,网络结构参数对于神经网络的学习效率、准确度具有重要意义,它主要包括:隐藏层数、隐藏节点数、学习率、步长、优化器参数等。为了更好地改进神经网络,应当针对实际问题选取最适合的数值。

三、使用神经网络模型进行拟合

(一)数据选取与处理

1.指数选取

模型使用上证收盘价作为预测值。上证综合指数是根据西方发达国家的经验编制的价值加权指数,具有一定的科学性,可以非常准确地反映市场的行情变动趋势[10]。本文中选取2016年1月4日-2019年5月30日的收盘价作为样本。根据以往文献,我们选取开盘价、收盘价、最高价、最低价、成交量、换手率[11]等对与股票价格高度相关的指标,作为神经网络特征值。

2.数据预处理

为了避免各特征值由于量级不同(如收盘价和换手率数字相差巨大)所造成的拟合时权重过大或过小,需要对原始数据需要进行标准化处理,使数据单位统一。

标准化处理公式为

将标准化的数据分为两部分分别作为训练集和测试集。其中,训练集合包含总样本中650天的样本,测试集包含剩余178个样本。

(二)模型建立

1.隐藏神经层

一般来说,增加隐藏神经层的数量可以提高学习的精度。但是随着隐藏层数的提高也会使网络复杂化,容易造成训练时间的增加并且造成过拟合。在本研究中,对于股票价格预测这种简单的回归问题,选择使用单层隐藏神经层进行学习。

2.隐藏节点数

隐藏节点的选择对于神经网络的学习效果非常重要。选择的隐层节点数太少,网络训练效果会很差,甚至不能拟合;如果隐层节点数太多,虽然可以让误差效果缩小,但是与增加隐藏神经层一样,容易造成训练时间增加和过拟合情况,导致最终预测能力下降。

隐藏节点数的选择公式为:

其中m是隐藏层节点数,n是输入层节点数,l是输出层节点数。a是1到10之间的常数。经过多次测试,最终隐藏节点数选定为9个。最终构建的神经网络模型如图1所示:

图1

(三)学习过程

使用ADAM优化器令神经网络开始训练,以均方误差RMSE作为损失值。在训练过程中,模型会自动尝试不同的权重w、偏置值b,并依据损失值最小化原则自动进行参数调整。RMSE的计算公式为

权衡了精确度和学习效率,本研究将学习率定为0.001,并进行200次迭代学习。使用不同的激活函数,使神经网络提供非线性输出。实验分别尝试了Sigmoid,tanh以及Relu函数。拟合过程中的损失值变化如下图、表所示:

表1 使用Sigmoid函数的损失值

表2 使用tanh函数的损失值

表3 使用Relu函数的损失值

图2 Sigmoid函数损失下降曲线

图3 tanh函数损失下降曲线

图4 Relu函数损失下降曲线

根据表1、表2、表3和图1、图2、图3可以看出,三种不同的激活函数在处理学习的过程中均表现出了不错的收敛速度,均迭代25次前实现了曲线的快速拟合。

图5 Sigmoid函数的预测与真实值对比

图6 tanh函数的预测与真实值对比

图7 Relu函数的预测与真实值对比

从预测值和真实值的对比情况来看,使用Sigmoid和tanh函数预测的曲线与真实值相差巨大。这通常是由于过拟合引起的,即训练集的损失下降很快,但是模型并不能很好地推广到测试集数据上。

而使用Relu函数的模型,可以更好地避免过拟合,模拟出大盘指数收盘价的涨跌情况。

图8 Relu函数曲线图

如图8所示,这主要是由于Relu函数会使一部分神经元的输出为0,这样就造成了网络的稀疏性,类似于在层间添加了一个随机丢弃(DropOut)的效果,减弱了参数之前的相互依存性,最终防止了过拟合问题的发生。

四、结论与展望

本文使用上证综合指数各项指标作为样本,通过构建bp神经网络对未来上证综合指数进行预测,并得到了比较良好的预测结果。

在使用神经网络对股票价格进行学习、预测的过程中发现,虽然在本次实验中使用不同激活函数都可以使损失快速收敛,但是训练出来的模型的预测效果并不一定总是令人满意。所以,应当根据序列的复杂程度、特征值维度、预测值维度、数据标准化方式等实际情况选择适合的激活函数和神经网络架构。

虽然本文构建的神经网络模型理论上的预测结果较为良好,但是不得不考虑到由于上证指数体量够大、有涨跌幅限制,大盘指数每日的收盘价格并不会相差很多,而是一定在正负10%之内,并且实际上上证指数在绝大多数情况下涨跌幅小于5%。因此本文中良好的预测效果可能只是由于指数每日的偏差不大,并且特征值中已经包含了上一天的收盘价所导致的。

为了更好地使用机器学习的方式进行股票价格预测,避免单纯通过过去价格信息预测未来的“技术面游戏”,在未来的研究中可以考虑更多地加入即时舆情信息,例如:使用爬虫抓取互联网上网民对于个股、大盘的评论,分析市场情绪;引入搜索引擎的搜索指数,分析舆论热度等,从而提高预测准确性,保护投资者利益,更好地维护股票市场稳定。

猜你喜欢
股票价格损失神经网络
基于GARCH族模型的重庆啤酒股票价格波动研究
胖胖损失了多少元
神经网络抑制无线通信干扰探究
玉米抽穗前倒伏怎么办?怎么减少损失?
基于神经网络的拉矫机控制模型建立
论股票价格准确性的社会效益
复数神经网络在基于WiFi的室内LBS应用
一般自由碰撞的最大动能损失
损失
我国股票价格指数与“克强指数”的关系研究