一种基于深度学习的金融信息预测方法及装置转让专利

申请号 : CN201910412933.4

文献号 : CN110288123A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 卢民荣

申请人 : 福建江夏学院

摘要 :

本发明提供的一种基于深度学习的金融信息预测方法及装置,通过采集待预测的金融时间序列数据,得到输入矩阵;根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果,提高了金融信息预测的准确度和稳定性。

权利要求 :

1.一种基于深度学习的金融信息预测方法,其特征在于,包括步骤:S1、采集待预测的金融时间序列数据,得到输入矩阵;

S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;

S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。

2.根据权利要求1所述的基于深度学习的金融信息预测方法,其特征在于,步骤S1具体为:采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵。

3.根据权利要求2所述的基于深度学习的金融信息预测方法,其特征在于,所述预处理具体包括以下处理中的一种或多种:通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;

对所述待预测的金融时间序列数据进行归一化处理;

对所述待预测的金融时间序列数据按时间顺序进行排序。

4.根据权利要求1所述的基于深度学习的金融信息预测方法,其特征在于,步骤S2具体为:S21、对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;

S22、根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵。

5.根据权利要求4所述的基于深度学习的金融信息预测方法,其特征在于,步骤S3具体为:根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果。

6.一种基于深度学习的金融信息预测装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:S1、采集待预测的金融时间序列数据,得到输入矩阵;

S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;

S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。

7.根据权利要求6所述的基于深度学习的金融信息预测装置,其特征在于,步骤S1具体为:采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵。

8.根据权利要求7所述的基于深度学习的金融信息预测装置,其特征在于,所述预处理具体包括以下处理中的一种或多种:通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;

对所述待预测的金融时间序列数据进行归一化处理;

对所述待预测的金融时间序列数据按时间顺序进行排序。

9.根据权利要求6所述的基于深度学习的金融信息预测装置,其特征在于,步骤S2具体为:S21、对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;

S22、根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵。

10.根据权利要求9所述的基于深度学习的金融信息预测装置,其特征在于,步骤S3具体为:根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果。

说明书 :

一种基于深度学习的金融信息预测方法及装置

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种基于深度学习的金融信息预测方法及装置。

背景技术

[0002] 在货币政策与金融市场的现有研究中,侧重研究货币政策有效性、传导机制和调控预期等,一些学者在模型和方法应用上提出了基于ARIMA模型分解货币政策工具利率与货币供应量,以及基于新凯恩斯周期理论解析经济周期中货币政策调控预期和资金供求层面等,也有一些学者建立了新的方法和模型,如提出通胀预测目标法、GMM模型、DSGE模型等,这些都对货币政策调控起到很好的借鉴。近年来,随着信息技术的快速发展,计算机相关工具与金融市场的结合越来越密切,如大数据、人工智能和区块链技术的出现,改变了金融市场传统交易系统。神经网络与金融领域的研究主要集中在股市、汇率、房价,也有基于BP神经网络的货币政策传导有效性评价(BP原型)、基于深度长短期记忆神经网络研究美国扩张性货币政策(LSTM网络和VAR模型应用比较)、中美两国应对金融危机的货币政策(运用IS-LM-BP模型)等。神经网络的改进研究在非金融领域的研究比较多,在金融领域主要集中点有两个,一是与时间序列的结合,二是改进卷积神经网络对金融市场的预测。神经网络与金融领域的现有研究中偏向于经济理论实证研究,集中在模型应用的效果对比分析或神经网络中参数调节,缺少对神经网络的适应性改进。同时,神经网络在货币政策预测方面的研究很少,包括金融数据的处理在时间上移位分析、神经网络的算法改进等。
[0003] 自大数据兴起后,改变了传统预测,在解决复杂性问题时深度学习尤其是基于多层神经网络的学习方法,在金融领域扩展神经网络的相关理论的研究中,有一些研究者的观点包括了:李佳,黄之豪,陈冬兰等基于GRU神经网络的欧元兑美元汇率预测研究和傅魁,郭志颖基于MEEMD组合模型的汇率预测用于汇率的周数据进行预测和用于分析金融数据提升预测能力,还有一些学者运用于金融新闻事件文本信息进行处理,或结合了长短期记忆神经网络处理长期时序动态信息的处理、或卷积神经网络引入期货市场、或深度信念网络构建自动股票决策支持系统等。还有,从实证上结合相关模型确实能有效提升金融市场预测及风险防范能力,包括深度学习运用到汇率、商品、债券等多种产品;马瑜、潘和平从实证的角度论证了深度学习方法在金融领域中的适用性,张承钊构建了深度分合神经网络对沪深市场进行了研究降低了预测误差,曾志平等研究深度学习在沪深股市运用,准确率提升到90%,张若雪把机器学习应用于金融市场的异常波动识别。黄志刚和郑国忠则运用优化算法对BP神经网络模型进行改进,对汇率波动趋势进行预测,结果显示改模型比基于调整型EWMA模型具有更好的适用性,结果更符合汇率波动特性。货币政策和银行贷款回收率研究均是政府运用货币政策可以稳定银行金融,从而稳定金融市场,减少出现系统性风险。
[0004] 另外在现有专利中覃剑钊;王红亮;李娴等(广发证券股份有限公司)专利号为CN201810954083.6的中国专利公开了一种数值型金融数据质量监控系统及方法,它提供的数值型金融数据质量监控系统及方法采用机器学习对监控规则进行自学习,并将人工设定的数据质量监控规则与机器自学习的监控规则相结合,提高了数据质量监控的质量,与现有技术相比,该发明主要在于金融数据质量监控并未涉及金融风险预测。王晓勇(郑州云海信息技术有限公司)专利号为CN201711482971.4的中国专利公开了一种人工智能评估金融产品特征的系统,包括:数据采集、模型训练、数据预测等模块,主要实现金融产品价格的预测,同样缺乏金融政策方面的研究;骆超;丁奉乾(山东师范大学)专利号为CN201810501626.9的中国专利公开了一种基于k线聚类和强化学习的自适应金融时间序列预测方法,同样停留在金融交易价格的在线自适应预测。李旭瑞;邱雪涛;赵金涛等(中国银联股份有限公司)专利号为CN201710584326.7的中国专利公开了涉及基于迁移深度学习的交易风险识别方法以及系统和赵闻飙;王维强;许辽萨等(阿里巴巴集团控股有限公司)专利号为CN201810589655.5的中国专利提供一种风险预测方法、风险预测装置和终端设备,偏向欺诈样本、风险事件等通过机器学习进行微观风险预测,缺乏系统性风险评估。而最新的发明技术中,李双宏;詹承俊;张泽瀚等(上海交通大学)专利号为CN201710121362.X的中国专利提供的基于机器学习和专家推理系统的金融资本市场计算机仿真系统,考虑到了经济行为对象的属性和参数并通过当前的社会经济实时运行数据,输入到深度学习网络中,实现金融系统的传真运行,对于模拟市场行为规则对市场资本运行和经济行为有着很好的参考意义。
[0005] 总体而言,现有的预测方法仍存在着预测的准确度和稳定性较差,而且在金融信息预测中还没有针对货币类的预测方法。

发明内容

[0006] (一)要解决的技术问题
[0007] 为了解决现有技术的上述问题,本发明提供一种基于深度学习的金融信息预测方法及装置,能够有效提高金融信息预测的准确度和稳定性。
[0008] (二)技术方案
[0009] 为了达到上述目的,本发明采用的一种技术方案为:
[0010] 一种基于深度学习的金融信息预测方法,包括步骤:
[0011] S1、采集待预测的金融时间序列数据,得到输入矩阵;
[0012] S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;
[0013] S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。
[0014] 为了达到上述目的,本发明采用的另一种技术方案为:
[0015] 一种基于深度学习的金融信息预测装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
[0016] S1、采集待预测的金融时间序列数据,得到输入矩阵;
[0017] S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;
[0018] S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。
[0019] (三)有益效果
[0020] 本发明的有益效果在于:通过采集待预测的金融时间序列数据,得到输入矩阵;根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果,提高了金融信息预测的准确度和稳定性。

附图说明

[0021] 图1为本发明实施例的基于深度学习的金融信息预测方法流程图;
[0022] 图2为本发明实施例的基于深度学习的金融信息预测装置的结构示意图;
[0023] 图3为本发明实施例的BP神经网络原始传递过程示意图;
[0024] 图4为本发明实施例的WBP神经网络传递过程示意图;
[0025] 图5为本发明实施例的TWBP神经网络传递过程示意图;
[0026] 图6为本发明实施例的BP、WBP和TWBP三种神经网络模型比较示意图;
[0027] 图7为本发明实施例的BP神经网络预测示意图;
[0028] 图8为本发明实施例的WBP神经网络预测示意图;
[0029] 图9为本发明实施例的TWBP神经网络预测示意图;
[0030] 图10为本发明实施例的BP、WBP和TWBP三种神经网络模型一种实验结果比对图;
[0031] 图11为本发明实施例的BP、WBP和TWBP三种神经网络模型另一种实验结果比对图;
[0032] 图12为本发明实施例的TWBP模型训练不同方案的误差比较和检验一种示意图;
[0033] 图13为本发明实施例的TWBP模型训练不同方案的误差比较和检验另一种示意图。
[0034] 【附图标记说明】
[0035] 1:基于深度学习的金融信息预测装置;
[0036] 2:存储器;
[0037] 3:处理器。

具体实施方式

[0038] 为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
[0039] 请参照图1,一种基于深度学习的金融信息预测方法,包括步骤:
[0040] S1、采集待预测的金融时间序列数据,得到输入矩阵;
[0041] S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;
[0042] S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。
[0043] 从上述描述可知,本发明的有益效果在于:通过采集待预测的金融时间序列数据,得到输入矩阵;根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果,提高了金融信息预测的准确度和稳定性。
[0044] 进一步的,步骤S1具体为:
[0045] 采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵。
[0046] 进一步的,所述预处理具体包括以下处理中的一种或多种:
[0047] 通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;
[0048] 对所述待预测的金融时间序列数据进行归一化处理;
[0049] 对所述待预测的金融时间序列数据按时间顺序进行排序。
[0050] 由上述描述可知,通过对待预测的金融时间序列数据进行预处理,保证了后续预测的准确性和稳定性。
[0051] 进一步的,步骤S2具体为:
[0052] S21、对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;
[0053] S22、根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵。
[0054] 由上述描述可知,通过对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵,不仅避免了训练过程中的指标权重失衡和训练效率低,而且运用主成分分析来确定相对权重,保证了后续预测结果的准确性和稳定性。
[0055] 进一步的,步骤S3具体为:
[0056] 根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果。
[0057] 由上述描述可知,通过根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果,使得预测结果根据准确。
[0058] 请参照图2,一种基于深度学习的金融信息预测装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以下步骤:
[0059] S1、采集待预测的金融时间序列数据,得到输入矩阵;
[0060] S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;
[0061] S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果。
[0062] 从上述描述可知,本发明的有益效果在于:通过采集待预测的金融时间序列数据,得到输入矩阵;根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果,提高了金融信息预测的准确度和稳定性。
[0063] 进一步的,步骤S1具体为:
[0064] 采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵。
[0065] 进一步的,所述预处理具体包括以下处理中的一种或多种:
[0066] 通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;
[0067] 对所述待预测的金融时间序列数据进行归一化处理;
[0068] 对所述待预测的金融时间序列数据按时间顺序进行排序。
[0069] 由上述描述可知,通过对待预测的金融时间序列数据进行预处理,保证了后续预测的准确性和稳定性。
[0070] 进一步的,步骤S2具体为:
[0071] S21、对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;
[0072] S22、根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵。
[0073] 由上述描述可知,通过对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵,不仅避免了训练过程中的指标权重失衡和训练效率低,而且运用主成分分析来确定相对权重,保证了后续预测结果的准确性和稳定性。
[0074] 进一步的,步骤S3具体为:
[0075] 根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果。
[0076] 由上述描述可知,通过根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果,使得预测结果根据准确。
[0077] 实施例一
[0078] 请参照图1,一种基于深度学习的金融信息预测方法,包括步骤:
[0079] S1、采集待预测的金融时间序列数据,得到输入矩阵;
[0080] 步骤S1具体为:
[0081] 采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵;
[0082] 所述预处理具体包括以下处理中的一种或多种:
[0083] 通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;
[0084] 对所述待预测的金融时间序列数据进行归一化处理;
[0085] 对所述待预测的金融时间序列数据按时间顺序进行排序;
[0086] S2、根据所述金融时间序列数据,通过主成分分析计算得到权重矩阵;
[0087] 步骤S2具体为:
[0088] S21、对所述金融时间序列数据进行标准化处理,并计算得到所述金融时间序列数据中各个指标的贡献率;
[0089] S22、根据所述金融时间序列数据中各个指标的贡献率,计算得到权重矩阵;
[0090] S3、根据所述输入矩阵和权重矩阵通过神经网络模型进行训练,得到预测结果;
[0091] 步骤S3具体为:
[0092] 根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果;
[0093] 在步骤S3之前先对所述金融时间序列数据进行分类,以适应不同的神经网络训练,从而降低误差在反向传播时梯度失误问题,并通过交叉训练提升了训练效果。
[0094] 实施例二
[0095] 本实施例将结合具体的应用场景,进一步说明本发明上述的基于深度学习的金融信息预测方法是如何实现的,本预测方法主要针对金融信息中宏观货币政策的利率、准备金展开的:
[0096] (一)构建双向金融风险体系及数据集
[0097] (1)构建双向金融风险体系
[0098] 由于金融市场构成要素众多,在国际上影响金融市场主要风险指标主要表现宏观指数、货币、债市、股市等四个方面,而股市对金融市场和国家政策的影响程度越来越大。本发明参考国内外众多学者对金融市场、金融风险和宏观调控等相关影响因素的研究成果,在咨询了相关专家的意见并结合评价指标选择的系统性、经济性、可操作性等原则,围绕宏观指数、货币、债市、股市等四个方面建立相应的一级指标体系,并将每一个评价体系进行细化,总共确定48个二级指标,如表1所示。
[0099] 表1金融市场风险重要指标
[0100]
[0101] 在普通神经网络的训练过程中一般节点的权重是来自于计算机产生的随机数,然后根据输出结果与目标值之间的误差反向修正各层次节点的权重值,而在训练过程中经常会出现过分修正或修正不足现象。本发明为避免指标权重失衡和提升网络的训练效率,运用主成分分析法(PCA)来确定宏观指数、货币、债市、股市等各级指标的相对权重,用于在训练过程中介入修正权重。
[0102] 主成分分析过程如下步骤:
[0103] Step1.建立m×n的原始矩阵Amn(m=1,2,3,4;n=1,2,...,48),并对其进行标准化处理
[0104] Step2.计算指标的相关系数矩阵Rii
[0105]
[0106] 其中,Xmn为对正指标,Xnj为对逆指标。
[0107] Step3.求Rij阵的特征值γk(k=1,2,...,n)和特征向量Lk(k=1,2,...,n)[0108] Step4.计算贡献率 选取贡献率大的赋予比较高的权重即主成分指标的权重Wk,表示其指标的重要程度。
[0109] Step5.计算综合评价值Em
[0110]
[0111] 其中,Ymn为主成分得分矩阵。
[0112] (2)构建数据集
[0113] 采集待预测的金融时间序列数据;
[0114] 本发明所需要支撑数据比较集中于财经类网站和国家统计局等相关统计信息,为了提升基础数据有效性和降低数据分析的复杂度,采集的数据源均为比较权威的网站和规范的数据库,因此采集方式也比较简便,主要数据来源及采集方式如下表所示,下面的数据来源为引自下表则不再注明引用来源。选取样本范围从2000年至2018年,以宏观指数、货币、债市、股市等四个方面进行采集样本数据,采集数据样本与货币政策的变化均有一定的前后关联,为后续采用统计学(借助工具SPSS)方法和神经网络技术(python语言)训练作基础准备,结合金融行为学用于分析国家货币政策预期和神经网络模型改进比较。
[0115] 表2数据源及采集方式
[0116]
[0117] (二)数据预处理
[0118] 采集待预测的金融时间序列数据,并进行预处理,得到输入矩阵;
[0119] 所述预处理具体包括以下处理中的一种或多种:
[0120] 通过预设的填充方式对待预测的金融时间序列数据中的缺失值进行填充;
[0121] 具体的,首先过滤空值、无效值、零值等类似无效的数值,分析缺失值原因,然后用最可能的值代替缺失值,不用数据子集在收集时配对不同的缺失处理方法,使缺失值与其他数值之间的关系保持最大。本数据集主要采用缺失处理个案剔除法(Listwise Deletion)、均值替换法(Mean Imputation)、回归替换法(Regression Imputation)等,处理过程以时间为序逐个检测数据缺失,用o、t表示原始数据集合、处理后数据集合,oi表示在o原始数据集合总量n的第i个数据,①当oi值为“-”或“NULL”则认为o存在缺失值,②当oi值为0且o原始数据集合不存在0值情况即采集数据时预赋是否有0值现象。
[0122] 个案剔除法:即t=o-∑o′,这是以牺牲原始数据量来换取数据集的完备,许多学者在研究时尽量不采用这种方法,而在本数据集中由于创业板数据在2000年至2010年期间未上市,处于空白交易区间,因此这部分的数据无法采用其它填充方法,只能删除,删除SQL代码为delete from[bank2nonull]where[开盘价]is null,此代码可在本发明整理的数据集中通过sql server 2012运行,下同。
[0123] 均值替换法:即 用 表示均值,本发明均值扩展为两种形式第一种用 表示第i到第j个数据之间的期间均值进行替换,第二种替换方法加上时间为序,当期与上期的数据差额进行递增或递减填充,表示为尤其适用于以季为统计单位在拆分为以月为单位的数据,如GDP、外债
等。
[0124] 回归替换法:即t=op+oq,oq表示缺失集合,除缺失以外的数据用op表示。本发明采用最典型的线性回归填充,通过线性回归模型的预测值作为缺失值的估计值,第k个数据缺失值表示为 当各变量之间的回归关系比较显著,该方法会更加趋进于真实值,如2001年9月和11月的国外净资产、债券、国内信贷等数据为空的替换。
[0125] 对所述待预测的金融时间序列数据进行归一化处理;
[0126] 具体的,金融数据主要以时间为主线进行统计,首先应该从时间上进行规范化,为方便分析,处理时间周期以月为单位,而股市相关数据均以工作日为单位,应以本月初和当月末的数据进行区间统计出月换手率、涨跌幅、市值等;数据之间单位不一致,导致数据之间差异过大,不利于分析,因此要进行行列的归一化处理。
[0127] 数据自归一化处理(列的归一化):Coli=Coli/Colmax即当前值除以最大值。
[0128] 数据行的归一化同列的归一化处理方法一致,该处理是为了让神经网络接收节点数据之间差异性变小,行的归一化处理也同此,Rowi=Rowi/Rowmax。
[0129] 对所述待预测的金融时间序列数据按时间顺序进行排序;
[0130] 具体的,首先,让数据按时间顺序进行排序,针对政策发布时间与股市时间可能存在不同步如工作日的影响,偏差影响纠正代码如下:
[0131] update[dbo].reserves set[股市时间]=DATEADD(day,偏差天数,公告时间)where DATEADD(day,1,公告时间)in(select[时间]from[dbo].[bank2nonull])and[股市时间]is null
[0132] 然后要把数据进行时间上的衔接,如利率与股市之间的数据衔接,日期取当月的做法如下:select([存款本次变动]+[贷款本次变动])/2,t.*from three t left outer join[dbo].[rate]r on da tediff(month,t.[时间],r.股市时间)=0
[0133] update[reserves]set[股市时间]=b.[股市时间]from[dbo].[reservesold]b where[reserves].[公告时间]=b.[公告时间]
[0134] (三)深度学习训练方案(含设计步骤和实现方法)
[0135] 训练前先对所述金融时间序列数据进行分类,以适应不同的神经网络训练,从而降低误差在反向传播时梯度失误问题,并通过交叉训练提升了训练效果;
[0136] 为了降低误差在反向传播时梯度失误问题,以及交叉训练提升训练效果,对输出节点值(货币政策)进行优化,即金融领域专家在输出节点上对标签进行调节,以适应不同的神经网络训练,调节方案和调节变形如下说明,用ratei、resi表示利率、准备金的第i期数值,ratei+1-ratei表示利率的变化值。
[0137] (1)Case A
[0138] 把利率和准备金变动大小作为衡量政策调控力度,0表示不调节,数字越大表示调节幅度越大;利率的调节高于准备金,并设置0-9标签,用max表示最大值,min表示最小值,[]表示取整,方案A的标签输出结果为:
[0139]
[0140] 这种做法受到金融专家多数的认可,认为不同级别政策与金融风险更加相关。
[0141] (2)Case B:设置0-3标签,把利率和准备金都变动设为3,2表示利率的调节,1表示准备金变动,0不变化。对于计算机专家需要对Case A改良,数据集不够大的情况下Case A训练效果比较差,改变如下:
[0142]
[0143] (3)Case C:设置0-1两种标签,把利率或准备金有变动设为1,不变化设为0,部分金融专家认为这种调节过于简单,不能区别货币政策的效果,计算如下:
[0144]
[0145] (4)Case D:主要尊重利率和准备金等原始数据,并根据数据加工设有两种分支[0146] ①Case D1:对利率和准备金当前值合并输出节点即原始值相加
[0147] Ld1=ratei+resi   (6)
[0148] ②Case D2:对利率和准备金当前值各作为输出节点
[0149] Ld2-rate=ratei,Ld2-res=resi   (7)
[0150] (5)Case E:金融专家认为货币政策调整幅度更有利于判断金融市场方向,因此标签上对利率和准备金变动值作为输出节点,0表示不变化,如下表示:
[0151]
[0152] (四)神经网络模型设计(BP、WBP、TWBP)
[0153] (1)基于BP的货币政策预测模型
[0154] 根据双向金融风险体系采集整理后的数据集,以金融数据月份信息数据作为输入,输入节点以随机权重传输至隐藏层,然后通过神经网络中间隐藏层不定层数和节点数(均大于等于1),训练其输出与货币预期是否一致,不一致的误差进行反向修正权重,不断训练以期获得比较理想的结果,BP神经网络原始传递过程如下图所示。
[0155] 图3中BP神经网络模型(图中从隐藏层开始到输出层,每个节点都分成两部分信息,前半部分为上一层输入与权重的云计算结果,后半部分是通过激活函数产生下一层的输入)
[0156] 神经网络模型运行步骤如下:
[0157] Step1.读取金融数据集,获得输入矩阵I
[0158] Step2.建立权重矩阵Wij,i为当前层节点数第一次为初始输入节点数,j为下一层的节点数,最后一层节点数即为输出层的节点数
[0159] X=W·I   (9)
[0160] Step3.组合数据并应用激活函数传输给下一层
[0161] X是组合后的数据,还需要对X进行平滑也称激活,激活形式多样化,其效果也不一样,本发明第一层和最后一层激活函数采用sigmoid和隐藏层则采用ReLU激活函数。
[0162] O=activefunction(X)   (10)
[0163] Step4.隐藏层重复Step3操作步骤,直至输出到最后一层即输出层
[0164] Step5.计算误差error,输出层与目标值之间比较
[0165] eoutput=target-Ooutput   (11)
[0166] Step6.反向传播误差,根据输入权重分配各自的误差是当前神经网络中最普遍的一种做法,反向传播时需要对输入的权重矩阵Wij进行转置即WT,重复传播误差直至网络的第一层。
[0167] en-1=en·WT   (12)
[0168] Step7.权重修正,通过误差来修正权重,在此引入神经网络的学习率a即梯度下降[0169]
[0170] Step8.重复2至7直至误差最小才退出网络;
[0171] 既根据所述输入矩阵和权重矩阵通过神经网络模型进行分段训练,并通过误差修正所述权重矩阵,直至所述误差小于预设值时,得到预测结果。
[0172] (2)引入外部权重神经网络WBP模型
[0173] 在金融领域的研究中,很多研究表明原始数据之间的相关性存在比较明显的强弱相关性,本文构建的双向金融风险体系中明细指标与货币政策均有着比较直接且密切的关系,但其重要性略有不同,不用专家有着不同的看法,运用PCA方法获得各指标初始权重WoutT=weight ,用于权重修正干预。如图1中输入层到隐藏层和隐藏层到输出层之间的权重介入,建立WBP模型,而对于隐藏层内部有着层数、节点数等的不确定因素,我们仍由BP模型处理。不同方案调整与权重的设定在训练过程中结果均有一定的影响,在不同时期各有一定的适应性,引入外部权重在上述公式(9)中在初始化时变更为X=Wout·I,同时上述公式(13)Wij需要重新外部权重干预,即W=Wout·Wij,用W1、e1、O1表示输入层与隐藏层之间的权重、误差、输出,第一层的权重改进如下:
[0174]
[0175] 图4中WBP模型(图中expert是指专家权重,在BP基础上增加外部权重干预,第一层输入和反馈都受到外部权重影响,其它层仍由计算机自行修正)
[0176] WBP模型更注重于权重修正的外部干预,而Wout一方面依赖于专家和PCA计算所得,另一方面是面向各个指标的权重,在BP模型的隐藏层节点数与输入节点数不一致导致在隐藏层无法直接与Wij运算,因此修正权重干预在于反向传播到输入节点期间,前向计算重新初始化再次干预权重.
[0177] (3)基于时间有效周期的TWBP改进模型
[0178] 金融数据的收集大部均以时间为序,时间序列与神经网络结合在金融领域也被许多学者所研究,如面向金融数据的神经网络时间序列预测模型。货币政策受到最新的经济环境影响更大,而前期时间越远其影响越小,因此上述的神经网络模型依据金融数据特点,进而基于时间有效周期的模型进一步变化。将选择的特征指标从初始时间2000年1月开始训练到2009年12月或更迟,先让WBP模型神经网络初步学习到货币政策与风险体系指标的关系,然后利用一定的循环周期对神经网络进行重复训练,对于后续时间周期进行迭代,让越接近预期时期的金融数据训练越多次,具体TWBP模型变化结构如图5所示。
[0179] 图5基于时间周期偏移的循环神经网络(首先,完成一个比较大的周期训练和制定一定基本循环周期时间,每个循环周期进行指定迭代数的WBP训练,然后下移一个最小时间周期并对其预测,再通过基础学习过的网络与下一步预测结果比较,从而让网络进一步的学习,直到下移到底部,最后完成预测功能)
[0180] TWBP模型需要在引入外部权重的上述公式(9)X=Wout·I的基础上对输入进行分段并训练,用base表示WBP基本训练,用offset表示偏移训练步长,用loop表示循环周期。
[0181]
[0182] (5)结果对比
[0183] 在实验中,从不同模型的实验结果可以看出TWBP有明显的提升预测效果,通过各个方案的训练误差比如下图所示,然而从其训练的效率上看,TWBP模型效率比较低下。通过设置隐藏层层数3、30、300层进行比较,随着隐藏层的增加,TWBP训练所需要的时间也不断增多,以训练耗时(秒)进行平均计算,结果如图6所示,图6中由左至右依次为误差比较示意图和性能对比示意图。
[0184] 图6误差与相关性能对比(I中按5层隐藏层,学习率设为0.2所训练的神经网络比较,取误差平均数做对比分析,Case D1方案优于预期均稳定在0.03左右,TWBP模型效果最好,其训练的Case A、Case D1、Case E误差平均在0.05以内,WBP模型次之,其中Case D2训练结果利率与Case E预测相反;II中分别使用隐藏层数3、30、300进行测试,设置3的隐藏层数基本都是3秒左右完成训练,而在300的隐藏层,TWBP模型所消耗的时间是其它两个模型的五倍多,在TWBP模型在提升训练效果时牺牲了训练效率,当数据集更大时则该模型仍然需要进一步的性能改进)
[0185] 通过实验表明,本发明提取的金融市场风险重要指标符合训练预期,能达到货币政策与金融市场风险的关联,结合中国当前金融市场的运行状况,有效效果还包括:
[0186] (1)当金融市场风险重要指标数据发生突然变化时,尤其是专家权重比较高的指标,国家需要及时通过宏观调控货币政策,宏观调控后金融市场风险重要指标数据才能得以有效控制。
[0187] (2)货币政策的利率调节作用更大于准备金调整,刺激经济的利率调节有利于短期金融市场的稳定,尤其表现在证券市场的波动,其与利率之间关联机制的有效性表明需要健全利率调控的政策体系,以改善证券市场环境。
[0188] (3)金融市场表现经济指标很大程度上反应到了证券市场,政府应当加强对证券市场的监管,制定合理的货币政策,预期的货币政策能起到促进经济的发展,也可以防范金融风险的发生。
[0189] (一)不同方案的比较
[0190] 神经网络在训练过程中会受到学习率、隐藏层数、隐藏节点分布及输出节点数等影响,部分设置如过多的隐藏层数等会造成实验结果无效。根据数据集中训练方案设计表4的6种方案结合BP、WBP、TWBP三种模型进行实验,在测试稳定学习率、隐藏层数、隐藏节点分布的基础上,可以得到可供分析的18种实验结果,比较分析如下说明。
[0191] (1)不同方案在BP模型的比较
[0192] BP模型在不同方案上实验结果如下图所示,该模型训练出来的结果通过比较呈线性平行特点,不同方案因BP神经网络输出节点不一样,不能直接通过预测数据判断方案的优劣。通过累计误差大小来判断结果的准确率,适合于多数预测方法,假定有n期的预测中,第i期的实际值和预测值用Ti、Pi表示,预测准确率Exact表示为:
[0193]
[0194] 通过误差分析,从Case A、Case B、Case C是误差越来越大,即准确率越来越低,因此方案在设置过程中标签的输出越少对模型训练组合修正权重越不利,Case C是最不理想的方案,而Case D1的训练结果误差最小。这点同样适应于WBP和TWBP模型,因此原始数据简单加工或不加工,神经网络更容易从中找出其相关性,人工参与修改变化的标签看似存在一定的合理性,但其实已经破坏了数据之间的隐藏关联。Case D2和Case E均把利率、准备金分离,Case D2数据原始值(这些原始值非金融数据的原始数据,而是已经归一化过的)训练效果优于Case E的变化值,符合原始数据之间存在隐藏联系,但是也要注意到Case E的训练更为稳定,利率和准备金误差非常接近,而Case D2中的利率预测明显不如准备金的预测,由此也可以看出利率变化在历史发生次数比较少,利率在调整金融市场有着相当大的影响,因此各国货币政策对利率的调整都会非常慎重,如美联储历次加息周期对全球金融市场都有着重大影响。
[0195] 图7中由左至右依次为(I)BP-A and B、(II)、BP-C and D1、(III)BP-D2和(IV)BP-E;
[0196] 图7(I)中Case A、CaseB的神经网络在预测时误差范围在0.1至0.17之间,0.21到0.46之间,而Case C则放大到了0.34到0.66之间,超过50%的误差已经表明Case C方案不适合于神经网络的训练。(II)Case D1则有显示改进,在图中已经出现预测与实际值已经有很多的重合部分,误差小到0.06之内。(III)Case D2中的准备金预测准确率高于利率,而(IV)中则相反Case E中的准备金预测准备率低于利率。
[0197] (2)不同方案在WBP模型的比较
[0198] WBP模型在不同方案上实验结果如下图所示,该模型训练出来的结果也呈线性平行特点,误差表现不一样,Case C和CASE D2的利率是最不理想的方案。但从总体预测效果上看,WBP模型误差比BP模型的误差降低一半左右,尤其是Case A和Case E有80%以上的改善,除CASE D2外,该方案调节后的利率预测误差更大。通过权重去干预神经网络,发现Case A、Case D1的训练结果误差最小,误差已经可以控制在10%以内。初始权重来源于金融专家对指标的预判,该判断确实存在市场突变时货币政策的关键,货币政策与金融市场息息相关,权重的调节更倾向于政策变化所产生的宏观调控结果。
[0199] 图8中由左至右依次为(I)WBP-A and B、(II)WBP-C and D1、(III)WBP-D2和(IV)WBP-E;
[0200] 图8(I)WBP模型训练结果和BP模型训练结果,有方案误差方面有很大的一致性,只是表现出更为精确(Case A预测时误差范围在0.03至0.12之间)和误差区间更为窄(Case B误差控制在0.31到0.36),(II)虽然Case C方案在WBP模型训练中有所改善,最大误差下降到0.57,但不准确率仍然过高。(III)Case D2中的准备金预测准确率仍然高于利率,最大误差分别是0.11和0.28,而(IV)中则相反Case E中的准备金预测准备率低于利率,最大误差相比BP模型分别增加了0.07和0.18,准备金最小误差得到很大的改善,降为0.01。
[0201] (3)不同方案在TWBP模型的比较
[0202] TWBP模型在不同方案上实验结果如下图所示,该模型训练出来的结果不再是呈线性平行特点,而是随着循环周期对应的指标值贴近变化。误差在5%以内的方案有Case A、Case D1、Case D2、Case E,Case C仍然是最不理想的方案,由此可以得到输出结果标签由于单一,在训练时不容易得出数据的隐藏关联。
[0203] 图9中由左至右依次为(I)TWBP-A and B、(II)TWBP-C and D1、(III)TWBP-D2和(IV)TWBP-E
[0204] 图9在最小误差方面有很大的改进,除了(II)中Case C外,其它方案最小误差均小于0.03,而且随着时间的推移误差表现出尤为明显的降低。TWBP模型的训练结果也更为稳定,误差随着时间的推移逐渐减小,神经网络的学习效果相当明显,(II)Case D1和(III)Case D2均有3次预测与实际值相等。其中(IV)Case E中的利率预测最小误差为0.03,出现最小误差占整体预测的32.7%(预测107期,35期出现最小误差,而且最后24期误差均为0.03)。
[0205] 由于金融市场的多变,尤其是股市的剧烈振荡,国家为防止出现系统性风险,通过宏观调控来改善金融市场环境,而此阶段的数据与当期经济指标也就不吻合了,因此通过变化值来代替当期值,通过神经网络的训练时标签过多出现0值,训练结果显然就比较不理想。
[0206] (二)不同模型的实验结果
[0207] 不用模型实验结果对比如下图所示,图中上半部分为各个模型的训练结果,下半部分为方案的归一化数据值。通过对比发现,BP和WBP模型可预测周期短,而且也不如TWBP模型准确,因此,TWBP在面向货币政策的权重复合型神经网络预测确实有效。不同模型的训练结果通过误差统计,TWBP优于WBP,WBP优于BP,但TWBP一方面由于有比较长周期的预测,前期的其预测误差也比较大,甚至会出现偏离,如Case D1和Case E就非常明显有前期偏离。由于BP和WBP模型的训练数据(15年)比TWBP模型(10年)多一半,TWBP模型预测前期不如BP和WBP模型的效果好,因此神经网络的训练数据集比较大时其效果比较理想。随着预测误差不断纠正,TWBP模型明显提升了预测的准确率,而BP和WBP模型没有加入金融时间序列的周期演练,其预测无法跟踪误差并不断改进,其准确性只在预测前期更为有效。
[0208] 图10由左至右依次为(I)Case A、(II)Case B和(III)Case C
[0209] 图11由左至右依次为(IV)Case D1、(V)Case D2和(VI)Case E
[0210] 图10和11中不同模型的实验结果(图中TWBP模型体现出预测周期长,刚开始的预测效果不如BP、WBP模型,但很快随着时间的推移,其误差越来越小,即准确率越来越高,如子图IV中BP和WBP的准确率89%,TWBP模型刚开始只有81%准确率,而到后期可以达到95%以上,其它子图也表现出预测率高于BP、WBP模型)。
[0211] 以TWBP模型对各个方案的误差比较,Case C的误差突变最大,Case D1、Case D2、Case E均比较稳定。为了获得在TWBP模型下哪个方案最优,我们通过T值检验其差异的稳定性。T检验适合于样本含量比较小的,因此对误差结果集分三段进行检验,前期、中期、后期各取连续30条误差记录。误差样本用E表示,用 表示各期的平均数,用表示样本的标准差,单样本t检验统计量即为
[0212] TWBP模型训练不同方案的误差比较和T值检验(SPSS分析获得,检验值为0.05)如下图表所示。
[0213] 图12由左至右依次为(I)误差比较和(II)前期T值检验
[0214] 图13中由左至右依次为(III)中期T值检验和(IV)前期T值检验
[0215] 图12中TWBP模型训练不同方案的误差比较和检验(总体上Case A、Case B、Case C不如Case D1、Case D2、Case E稳定,而且随着时间周期循环训练,以前期、中期、后期不同阶段的观察,Case D2、Case E都有表现出更加稳定的趋势)。
[0216] 其中,BP、WBP和TWBP之间的区别在于,BP神经网络模型为现有技术,WBP和TWBP神经网络模型均是对BP神经网络模型改进后的模型,且WBP是在BP神经网络模型的基础之上的改进,TWBP是在WBP神经网络模型的基础之上的改进。
[0217] 实施例三
[0218] 请参照图2,一种基于深度学习的金融信息预测装置1,包括存储器2、处理器3及存储在存储器2上并可在处理器3上运行的计算机程序,所述处理器3执行所述程序时实现实施例一中的各个步骤。