第12章 神经网络预测法_第1页
第12章 神经网络预测法_第2页
第12章 神经网络预测法_第3页
第12章 神经网络预测法_第4页
第12章 神经网络预测法_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第12章章 神经网络预测法神经网络预测法 12.1 神经网络基本理论 12.2 BP神经网络的MATLAB函数 12.3 案例分析 12.3.1 北京市房地产开发投资及销售分析 练习与提高(练习与提高(12) 12.3.2 深证综合指数预测 12.1 神经网络基本理论 12.1.1 人工神经网络人工神经网络 人工神经网络(Artificial Neural Network,ANN),是由大 量处理单元(神经元Neurons)广泛互连而成的网络,由分 布于若干层的节点组成。每个单节点都有自己的输入值、 权重、求和与激活函数以及输出值,在处理之前,数据 被分为训练数据集(Training Dat

2、a set)和测试数据集 (Testing Data set),然后将权重或输入,指派到第一层 的每一个节点。每次重复时,系统处理输入,并与实际 值相比较,得到度量后的误差,并反馈给系统,调整权 重。大多数情形下,调整后的权重都能更好地预测实际 值。当达到预定义的最小误差水平时,处理结束。 12.1.2 BP神经网络的基本原理 BP(Back-Propagation Network) 是一种多层网络的“逆推” 学习算法。其基本思想是: 学习过程由信号的正向传播与误差的反向传播组成。 正向传播时,输入样本从输入层传入,经隐层逐层处理 后传向输出层。若输出层的实际输出与期望输出不符,则转 向误差的

3、反向传播阶段。 误差的反向传播是将输出误差以某种形势通过隐层向输 入层逐层反传,并将误差分摊给各层的所有单元,从而获得 各层单元的误差信号,此误差信号即作为修正各单元权值的 依据。 这种信号正向传播与误差反向传播的各层权值调整过程 是周而复始地进行。权值不断调整的过程,也就是网络的学 习训练过程。此过程一直进行到网络输出的误差减少到可以 接受的程度,或进行到预订的设定的学习次数为止。 12.1.3 BP神经网络过程 1BP网络的结构 BP网络是一种单向传播的多层前向网络,具有三层或三层以 上的神经网络,包括输入层、中间层(隐层)和输入层。上下 层之间实现全连接,每一层神经元之间无连接。 输入层

4、 隐层 输出层 2传递函数或激活函数 一般输入层和隐层的传递函数是S形函数(logsig): 正切S形函数(tansig) 1 ( ) 1 x f x e 1 ( ) 1 x x e f x e 输出层的是线性函数,用purelin表示 3模拟过程 首页首页 网络通过对已知信息的反复学习训练,运用根据误差 来逐步调整与改变神经元连接权重和神经元阈值的方 法,使得相似的输入有相似的输出,从而达到处理信 息、模拟输入输出关系的目的。 (1)读入样本、设定初始权值和阈值; (2)设定参数; (3)计算隐含层输出; (4)计算输出层输出; (5)计算输出值与期望值的误差; (6)判断误差是否小于设定值

5、,是则结束; (7)调整隐层到输出层的权值和阈值; (8)调整输入层到隐层的权值和阈值; (9)返回计算隐含层输出。 4学习过程 首页首页 (1)读入样本; (2)数据处理; (3)创建网络; (4)设定参数; (5)训练网络; (6)模拟输出; (7)调整参数:学习速率、动量系数、训练次数、 误差精度等; (8)仿真预测:网络固定,输入新的样本集,模拟 输出。 12.1.4 BP神经网络预测神经网络预测 首页首页 BP神经网络通过对以往历史数据的学习,找出数据的变化 趋势之间的非线性关系,并将其存储在网络具体的权值和 阀值中,从而预测未来数据的走势。 用神经网络进行预测,即用神经网络通过一组

6、数据点 来拟合函数f,得出未来 (k1)时刻 数据的预测值。 1 (,) n m knnn m Xf XXX 1 , nnn m XXX nmk 1单步预测 首页首页 当k=1时,且网络的所有输入数据都是时间序列的实际 观测值时所做的预测就是单步预测。 在进行预测时,把实际的时序观测值 ,这 m个数据输入网络,输出是下一时刻的预测值 1 , nnn m XXX 1n m X 若要继续对 的值进行预测,则用实际观测值 作为输入数据,得到预测值 2n m X 121 , nnn m XXX 2n m X 2多步预测 首页首页 当kl时,网络输入m个历史数据,输出 的预测值。多步预测用于股票价格预测

7、误差较大。这 是因为在网络运行调整权值和阀值时,每次迭代都要 累加前一次k个预测值的误差,从而造成网络难以收 敛的情况,甚至导致网络发生振荡。 12 , n mn mn m k XXX 首页首页 3滚动预测 滚动预测,又可称为迭代一步预测,是先进行单步预 测,再将网络输出的预测值反馈给网络输入端作为输 入的一部分,用于下一步的预测。 若开始预测时输入数据是实际的时序观测值 输出是下一时刻的预测值 , 1 , nnn m XXX 1n m X 将 与 一起作为输入数据对 项进行估计,得到输出的预测值 1n m X 12 , nnn m XXX 2nm X 2n m X 如此反复迭代,就得到对未来

8、一段时期的预测值。 12.2 BP神经网络的MATLAB函数 1数据的预处理和后处理 数据的预处理和后处理是有效训练神经网络的关键步骤, 直接影响到训练后神经网络的性能。常见的方法是将原 始数据进行归一化处理,即通过一定的线性变换将输入 和输出数据统一限制在0,1或-1,1区间内。 利用premnmx或prestd函数可以对输入和目标数据集进 行归一化处理,使其落入-1,1区间。 首页首页 格式:格式: Pn,minp,maxp=premnmx(P) Pn,minp,maxp,Tn,mint,maxt=premnmx(P,T) 说明:说明:premnmx函数用于对网络的输入数据或目标数 据进行

9、归一化,归一化后的数据将分布在-1,1区间 内。归一化公式为: Pn=2*(P-minp)(maxp-minp)-l Tn=2*(T-mint)(maxt-mint)-l 其中,P为原始输入数据,maxp和minp分别是P中的最 大值和最小值,Pn为归一化后的输入数据。T是原始目 标数据,maxt和mint分别是T的最大值和最小值,Tn是 归一化后的目标数据。 格式:格式:P,T=postmnmx(Pn,minp,maxp,Tn,mint,maxt) 说明:说明:Postmnmx函数可将premnmx函数所归一化数据进行反 归一化处理 P=0.5*(Pn+1)*(maxp-minp)+minp

10、 T=0.5*(Tn+1)*(maxt-mint)+mint 将输入数据或目标数据转化为区间0,1的归一化处理公式为: Pn=(P-minp)(maxp-minp) Tn=(T-mint)(maxt-mint) 其对应的反归一化处理公式 P=Pn*(maxp-minp)+ minp T=Tn*(maxt-mint)+ mint 2.创建网络 (1)newff函数:用来建立一个前馈BP网络 格式:格式:net=newff(PR,SN,TF,BTF,BLF,PF); 说明:说明:PR:表示由每组输入(共P组)元素的最大值和最小值 组成的P2维矩阵;或用函数minmax(P)表示; SN:表示网络隐

11、含层和输出层神经元的个数; TF:表示网络隐含层和输出层的传递函数,tansig(默认), logsig,purelin; BTF:表示网络的训练函数。普通训练traingdm:需设定 学习速率、动量系数,快速训练trainlm(默认): BLF:表示网络权值学习函数,learngdf(默认); PF:表示网络性能函数,mse(默认),网络输出和目标输出的 均方误差。 3设定参数 net=init(net);初始化网络权值和阈值(可不设定) net.trainparam.show=训练状态的显示幅度;(默认25) net.trainparam.lr=学习速率;(权值阈值的调整幅度) net.t

12、rainparam.mc=动量系数;(权阈值改变的重复度) net.trainparam.epochs=训练次数;(默认100) net.trainparam.goal=误差精度;(默认0) net.trainparam.time=训练秒数;(可不选) (4.训练网络: 格式:格式:net,tr=train(net,P,T) 说明:说明:P为输入样本矢量集;T为对应的目标样本矢量集: 等号左右两侧的net分别用于表示训练得到和训练以前的神 经网络对象;tr存储训练过程中的步数信息和误差信息,并 给出网络误差实时变化曲线。 5.BP神经网络的仿真 格式:格式:Y,Pf,Af,E,perf=sim

13、(net,P,Pi,Ai,T) 说明:说明:输入net为神经网络对象,P为网络输入,Pi为 输入延迟的初始状态,Ai为层延迟的初始状态,T为 目标矢量,Y为网络输出,Pf为训练终止时的输入延 迟状态,Af为训练终止时的层延迟状态,E为输出和 目标矢量之间的误差,perf为网络性能值。 首页首页 6.模拟输出 图形输出:plot(横坐标,纵坐标,参数) 查看参数:权值:net.IW(层序号) 阈值:net.b(层序号) 12.3 案例分析 12.3.1 北京市房地产开发投资及销售分析 北京市1999年至2010年房地产开发投资的资金来源中 的国内贷款,与各种房屋类型销售额数据如表12-1所 示,

14、进而计算出2000年至2010年各项指标的增长率, 数据如表12-2所示,试将住宅、办公楼、商业营业用 房的销售额增长率作为输入元素,国内贷款额增长率 作为目标函数,建立BP神经网络仿真模拟。 日期国内贷款住宅销售额办公楼销售额 商业营业用房销售 额 1999165.22232.0266.087.62 2000238.82409.3451.804.25 2001340.30531.7161.7312.46 2002382.77716.5357.6825.95 2003586.86789.1640.5851.78 2004549.961085.1199.2150.59 2005676.92173

15、9.94249.62120.85 2006841.421626.30352.94162.56 20071063.211845.97402.54237.07 2008889.371201.37230.72192.76 20092367.772486.77431.14299.86 20101439.082060.52487.32318.99 北京市房地产开发投资及销售原始数据 北京市房地产开发投资及销售额增长率 日期国内贷款住宅销售额办公楼销售额商业营业用房销售额 2000 0.36840.5677-0.2435-0.5839 2001 0.35410.26160.17541.0756 2002

16、0.11760.2983-0.06790.7336 2003 0.42740.0965-0.35160.6908 2004 -0.06490.31850.8940-0.0233 2005 0.20770.47220.92270.8708 2006 0.2175-0.06750.34640.2965 2007 0.23400.12670.13150.3773 2008 -0.1785-0.4295-0.5566-0.2069 2009 0.97920.72750.62520.4419 2010 -0.4979-0.18800.12250.0618 案例二:案例二: 中空保温玻璃的销售预测中空保温

17、玻璃的销售预测 MATLAB程序如下: clear p=0.5677 -0.2435 -0.5839 0.2616 0.1754 1.0756 0.2983 -0.0679 0.7336 0.0965 -0.3516 0.6908 0.3185 0.8940 -0.0233 0.4722 0.9227 0.8708 -0.0675 0.3464 0.2965 0.1267 0.1315 0.3773 -0.4295 -0.5566 -0.2069 0.7275 0.6252 0.4419 -0.1880 0.1225 0.0618; t=0.3684 0.3541 0.1176 0.4274

18、-0.0649 0.2077 0.2175 0.2340 -0.1785 0.9792 -0.4979; ( rand(state,0); %保证每次结果都相同 net=newff(minmax(p),3,7,1,tansig,tansig,purelin, trainlm); net.trainparam.lr=0.1; net.trainparam.epochs=1000; net.trainparam.goal=0.001; net=train(net,p,t); y=sim(net,p) e=t-y res=norm(e) %整个网络误差 m=2000:2010; plot(m,t,-

19、+,m,y,o) xlabel(日期) ylabel(国内贷款额增长率) 00.511.522.533.54 10-4 10-3 10-2 10-1 100 101 4 Epochs Training-Blue Goal-Black Performance is 0.000176118, Goal is 0.001 20002001200220032004200520062007200820092010 -0.5 0 0.5 1 日 期 国内贷款额增长率 确定最佳隐含层神经元个数 网络的设计及训练代码如下: s=4:8 res=1:5 for i=1:5 rand(state,0); net=newff(minmax(p),s(i),1,tansig,purelin); net.trainparam.lr=0.1; net.trainparam.epochs=1000; net.trainparam.goal=0.001; net=train(net,p,t); y=sim(ne

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论