基于神经网络的时序预测模型研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于神经网络的时序预测模型研究
张恺陈思
(中移信息技术有限公司,广东深圳518048)
[摘要]古人云“以史为鉴”,说的是吸取历史的经验教训,对未来的情况做出预判或者改变。
生活中,亦是存在相似的利用历史数据对未来变化趋势进行预测分析的时间序列问题。
本文就时间序列一类的问题进行研究,探讨如何更好地根据历史统计数据,对未来的变化趋势进行预测分析。
本文基于神经网络,以气象观测历史数据作为研究的对象,建立了气温变化时序预测模型。
本模型利用大数据相关技术对数据进行特征处理,通过深度神经网络,学习特征数据和标签数据之间复杂的非线性关系,从而实现对气温变化的趋势预测。
实验结果表明,相较其他模型,本文的模型能够更好地进行时序预测,同时也证明了神经网络用于气象预测的可行性。
[关键词]时间序列;神经网络;特征;时序预测
中图分类号:TP183文献标识码:A文章编号:1008-6609(2019)01-0061-05
1引言
时序预测,是基于历史统计数据,去预知未来一段时间内研究对象变化的数据分析过程。
一般来说,变化有四种形式,即长期趋势变化、季节性变化、周期性变化和随机波动。
本文中研究的是天气相关的长期趋势变化问题。
传统的天气预测工作是利用卫星云图照片,并根据观测资料,应用天气学、动力气象学、统计学的原理和方法,对天气进行预测。
整个过程流程复杂,步骤繁多。
那么,是否有更加便捷的方式去进行天气预测呢?
本文基于上述考虑,利用深层神经网络,结合大量气象观测历史数据,实现一个简化的天气预测过程——
—气温变化预测,去研究神经网络在时序预测问题上的具体应用情况。
在本文中,天气历史数据的采集、处理,天气数据集的制作以及气温变化预测过程,遵循流程化、可视化、可与人交互化的原则进行,并尽可能地避免大宗繁杂的人工分析以及大量资源的消耗问题。
2研究对象与研究方法
2.1研究对象
2.1.1数据来源
NCDC,美国国家气候数据中心,前身为美国国家气象记录中心,位于美国北卡罗来纳州的阿什维尔,拥有世界上现存规模最大的气象观测数据。
NCDC气象观测数据记录始于1929年,至今已有90年历史,其数据来源包括:气象卫星、雷达、自动气象站,国家气象局合作观测员;飞机、船舶,无线电探空仪、风廓线仪、火箭探测器、太阳辐射网络和国家气象局预报、警报、分析产品等等的数据记录。
本文取NCDC从1999年到2018年间20年的气象观测数据进行研究。
2.1.2基本构成
NCDC气象观测数据按年划分为单个压缩包,每个压缩包里又按不同气象站分为一个个单独的压缩包,将每个单独的压缩包解压就能得到所需的原始数据。
原始数据里包含当年的所有数据,且每天对应一条数据。
由于不可抗力因素(仪器故障、人为原因等)的影响,不排除某些状况下出现数据缺失、冗余的情况。
表1为原始数据中每条数据的构成情况详情表。
2.2研究方法
神经网络,又称人工神经网络(Artificial Neural Net-work),以大脑处理机制作为基础,用于建立复杂模式和预测问题的方法,其能够学习和构建非线性的复杂关系。
基于此,本文采用神经网络进行研究。
本文研究所使用的神经网络为LSTM神经网络,全称长短期记忆神经网络,主要由遗忘门、输入门、输出门三部分组
作者简介:张恺(1992-),男,广东惠州人,本科,研究方向为信息系统建设与分析、人工智能研究。
成,其基本结构如图1所示。
图1LSTM神经网络结构图
其中,遗忘门负责输入信息的取舍,输入门负责新信息的加入,输出门负责输出信息的过滤,三者彼此相互协同工作。
在本文中,经过特征处理的气象观测历史数据即为输入信息,输出信息为气温变化趋势,从输入到输出的过程则是神经网络不断训练学习的过程。
3LSTM神经网络时序预测模型
3.1数据集制作
由于气象站众多,数据量较大,本文随机选定部分气象站,编写网络爬虫进行数据的采集。
数据采集具体流程如图2。
图2数据采集流程图
数据采集完毕后,一个数据集就算初步完成了。
由于本文训练神经网络的方式为监督学习(使用已知正确答案的示例来训练网络),因此接下来,给每一条数据打上“标签”。
本文以0和1作为数据集的标签,分别表示气温降低和气温升高。
最后,对数据进行归一化处理,使得数据整体落在[0,1]区间。
归一化公式如下:
y=(x-min)/(max-min)*2-1(1)式(1)中,y为处理后数据,x为处理前数据,min为数据集每列的最小值,max为数据集每列的最大值。
这样,数据集的制作就基本完成。
3.2模型建立
3.2.1时间步
本文的气温时序预测模型,是用前n天的气温变化数据
表1数据构成情况
预测第n+1天的气温变化,这里n对应神经网络的时间步(time step)这个参数。
此参数如果取值太大,数据出现冗余,会影响模型训练的效率;如果取值过小,数据量不够,则会影响模型预测的准确度。
本文经过多次实验试数,设定时间步步长为20,即以前20天的气温变化数据预测第21天的气温变化。
3.2.2训练过程
模型的训练过程,就是通过不断循环往复迭代,寻找最优
参数的过程,其具体流程如图3所示。
图3模型训练过程图
如上图所示,特征数据输入神经网络,经由激活函数、优化器算法,计算交叉熵,并实时更新权重和偏置。
这个过程是不断循环往复进行的,直到最终找到满足我们需求的结果。
另外,训练过程中,与直觉恰恰相反的是,训练模型的时间越长,并不能保证模型就一定越好。
3.3训练方式
模型训练过程中,每一轮迭代都需要计算梯度,更新参数。
而随着模型复杂度增加,模型的参数也会越来越多,越来越大。
当模型的参数多到或大到一定程度的时候,计算性能将出现严重瓶颈,造成训练迟滞。
单次迭代的时间成本大大增加,原本几分钟能迭代一次,延长到几小时才能迭代一次。
要解决这个问题,就得采用分布式模型训练,将训练任务分配到多服务器节点,协同处理。
本文中,模型的训练就是采用的分布式的模型训练。
以两台服务器作为参数服务器,负责管理参数的存储和更新工作;以另外4台服务器作为计算节点,负责迭代运算。
其过程如图4所示。
图4分布式训练图
4实验分析
4.1实验环境
本文的模型训练是在基于CentOS系统搭建的服务器集群下完成的。
使用到的组件及框架有Hadoop、Spark等大数据组件,还有TensorFlow、Keras等深度学习框架。
另外,为了加快模型训练的速度,本文采用的是分布式的模型训练,整个服务器集群由两台参数服务器和四台计算服务器共六台服务器组成。
4.2训练流程
模型训练开始前,需要先设定好模型运行相关的各项参数。
本文设定的相关参数有:隐藏层维度,数值30;输入层维度,数值12;输出层维度,数值2;学习率设定为10-5;每一批次训练的样本数,数值30;最后是时间步,数值设定在20。
在实际训练中,将预处理过的气象特征数据输入模型,数据在模型中经过训练(训练过程详见章节3.2.2),学习到特征数据和标签数据之间非线性的函数关系,然后以此对数据进行分类,最后将输出结果与测试集的标签数据进行比对计算准确率。
其具体训练流程图如图5所示。
图5训练
流程图
4.3结果分析
本文选取了50个不同气象站从1999年到2018年间20年观测历史数据来制作数据集,每个气象站对应一个数据集,共50组。
为了更好地说明LSTM气温预测模型的优势,本文以其他神经网络和算法模型作为对比,分别应用50组数据集来进行模型训练,计算各自模型的预测准确率,并绘制如图6所示的折线图。
图6模型预测准确率折线图(单位院%)
如图所示,横坐标表示50组数据的序号,纵坐标表示模型预测的准确率百分比。
以第一组数据为例,从上到下的折线依次表示的模型为:长短期记忆神经网络[10]模型、普通深度神经网络[10]模型、朴素贝叶斯[8]模型、支持向量机[8]模型、决策树[8]模型、逻辑回归[9]模型、K最近邻[4]模型。
两个神经网络模型,长短期记忆神经网络和普通深度神经网络大体参数基本一致(详见章节4.2);朴素贝叶斯模型采用的是多项式模型,平滑值设定为1.0;支持向量机模型中惩罚系数设定为10、核函数为高斯核函数、核系数为0.1;决策树模型特征选择标准使用gini,特征划分点选择标准为random,内部节点再划分所需最小样本数设定为10,叶子节点最少样本数设为5;逻辑回归模型中惩罚项设为l2,正则化的强度为1.0,优化算法选择sag;K最近邻模型的k值设为3,搜索算法为auto,叶子大小设为60。
通过对比实验,从50组数据集训练结果来看,长短期记忆神经网络气温预测模型相对来说更有优势,预测的准确度更高。
也就是说长短期记忆神经网络,可以从时序问题的数据中挖掘到更多深层次的信息。
由此可见,使用长短期记忆神经网络来进行气温时序预测确实可行、可用。
5结语
本文提出使用LSTM神经网络模型,基于天气数据进行时序预测问题的研究。
通过对比实验,发现LSTM神经网络模型在处理时序数据时,具有更强的泛化能力,其预测效果也更优于传统算法和其它神经网络。
今后,对于类似的时序预测问题,我们可以采取同样的方式去进行研究。
当下人工智能的研究与应用如火如荼。
如何更快、更准确、更节省人力物力地去做好研究、应用的工作,是我们孜孜不倦地去求索、探寻的方向。
参考文献:
[1]朱抱真.天气预报现代化的途径[J].大气科学,1978,2(4): 341-342.
[2]TomWhite.Hadoop:The Definitive Guide:Storage and Analysis at Internet Scale[M].O'ReillyMedia,2015:699-701.
[3]杨治良.漫谈人类记忆的研究[J].心理科学,2011,34(1): 249.
[4]Pang-Ning Tan,Michael Steinbach,Vipin Kumar. Introduction to Data Mining[M].Pearson,2005.
[5]Wes McKinney.Python for Data Analysis:Data Wrangling with Pandas,NumPy,and Ipython[M].O'Reilly Media,2012.
[6]Michael Bowles.Machine Learning in Python: Essential Techniques for Predictive Analysis[M].Wiley,2015.
[7]Thomas H.Cormen,Charles E.Leiserson,Ronald L. Rivest,Clifford Stein.Introduction to Algorithms,3rd Edition [M].The MIT Press,2009.
[8]周志华.机器学习[M].北京:清华大学出版社,2016.
[9]Rodolfo Bonnin.Building Machine Learning Projects with TensorFlow[M].Packt Publishing,2016.
[10]Ian Goodfellow,Yoshua Bengio,Aaron Courville. Deep Learning[M].The MIT Press,2016.
[11]黄文坚,唐源.TensorFlow实战[M].北京:电子工业出版社
,2017.
Research on Prediction Model for Time Series Based on Neural Networks
ZHANG Kai CHENSi
(China Mobile Information TechnologyCompanyLimited,Shenzhen518048,Guangdong)
As the ancient saying goes,history acts as a mirror.Drawing lessons from historical and empirical experience can make changes and prejudgment to the futuristic situation.A similar time sequence problem,which is related to trend prediction and trend analysis through historical data,can also happen in our modern life.This article is a research on time sequence related issues,a re-search on how to analyze and predict the futuristic change trend through historical statistical data.Based on neural network technolo-gy,by taking meteorological observation data as a research object,this article establishes an air temperature change time sequence prediction model.This modelling carries on characteristic processing on historical data through big data technology and learns com-plex nonlinear relationship between characteristic data and tag data through deep neural network automatically.Thus,an air tempera-ture change trend prediction can be achieved.The experimental results show that the model mentioned above has more advantages than other model on time sequence prediction,which proves the feasibilityofneural networks in meteorological prediction.
time series;neural networks;characteristic;time series prediction
(上接第57页)
Design of the Embedded C Language Learning Device Based on Proteus
ZHANGJia-hao1LIUChao1CHENWei1,2*
(1.Shaoyang University,Shaoyang422000,Hunan;
2.Hunan Provincal KeyLaboratoryofGrids Operation and Control on Multi-power Sources Area,ShaoyangUniversity,Shaoyang
422000,Hunan)
This paper based on Proteus’s Virtual System Modelling(VSM)Virtual Terminal,designed a new embedded C lan-
guage learning device for AT89S51microcontroller,and verified by C language classic program.The results of experimental proved the device can provided a newwayfor learn embedded Clanguage.
embedded Clanguage;learningdevice;Proteus;Virtual Terminal。