基本信息
文件名称:《经济预测与决策技术及MATLAB实现》课件 第12、13章 神经网络预测法、层次分析法.ppt
文件大小:2.33 MB
总页数:54 页
更新时间:2025-04-02
总字数:约1.09万字
文档摘要

1.单步预测首页当k=1时,且网络的所有输入数据都是时间序列的实际观测值时所做的预测就是单步预测。在进行预测时,把实际的时序观测值,这m个数据输入网络,输出是下一时刻的预测值若要继续对的值进行预测,则用实际观测值作为输入数据,得到预测值2.多步预测首页当kl时,网络输入m个历史数据,输出的预测值。多步预测用于股票价格预测误差较大。这是因为在网络运行调整权值和阀值时,每次迭代都要累加前一次k个预测值的误差,从而造成网络难以收敛的情况,甚至导致网络发生振荡。首页3.滚动预测滚动预测,又可称为迭代一步预测,是先进行单步预测,再将网络输出的预测值反馈给网络输入端作为输入的一部分,用于下一步的预测。若开始预测时输入数据是实际的时序观测值输出是下一时刻的预测值,将与一起作为输入数据对项进行估计,得到输出的预测值如此反复迭代,就得到对未来一段时期的预测值。12.2BP神经网络的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函数用于对网络的输入数据或目标数据进行归一化,归一化后的数据将分布在[-1,1]区间内。归一化公式为:Pn=2*(P-minp)/(maxp-minp)-lTn=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)+minpT=0.5*(Tn+1)*(maxt-mint)+mint将输入数据或目标数据转化为区间[0,1]的归一化处理公式为:Pn=(P-minp)/(maxp-minp)Tn=(T-mint)/(maxt-mint)其对应的反归一化处理公式P=Pn*(maxp-minp)+minpT=Tn*(maxt-mint)+mint2.创建网络(1)newff函数:用来建立一个前馈BP网络格式:net=newff(PR,SN,TF,BTF,BLF,PF);说明:PR:表示由每组输入(共P组)元素的最大值和最小值组成的P×2维矩阵;或用函数minmax(P)表示;SN:表示网络隐含层和输出层神经元的个数;TF:表示网络隐含层和输出层的传递函数,tansig(默认),logsig,purelin;BTF:表示网络的训练函数。普通训练traingdm:需设定学习速率、动量系数,快速训练trainlm(默认):BLF:表示网络权值学习函数,learngdf(默认);PF:表示网络性能函数,mse(默认),网络输出和目标输出的均方误差。3.设定参数net=init(net);初始化网络权值和阈值(可不设定)net.trainparam.show=训练状态的显示幅度;(默认25)net.trainparam.lr=学习速率;(权值阈值的调整幅度)net.trainparam.mc=动量系数;(权阈值改变的重复度)net.trainparam.epochs=训练次数;(默认100)net.trainparam.goal=误差精度;(默认0)net.trainparam.time=训练秒数;(可不选)(4.训练网络:格式:[net,tr]=train(net,P,T)说明:P为输入样本矢量集;T为对应的目标样本矢量集:等号左右两侧的net分别用于表示训练得到和训练以前的神经网络对象;tr存储训练过程中的步数信息和误差信息,并给出网络