正在加载图片...
应的预测 网络的设计: 我们借助多层前向BP网络( Back-Propagation Network) 令y()=N(A,y(-1)…,y(t-n,),u(t-1),…,u(【-nn);将y(t-1)经过i步时延反馈到网络的输入 端对网络的权值、阈值不断修改,进行自适应训练,以跟踪网络输入样本值的变化,达到对未来 值的预测 其中y(-1),u(t-j)(=1,2,…n1,j=1,2,…,n)为神经网络的输入,y(1)为神经网络的输出,A 代表神经网络的权空间。 网络的几个主要参数: 1.网络层数、结点数的确定 如果网络过于复杂,就不利于网络学习的收敛,得不到良好的学习结果。因此,在确定输 入层时,我们仅选择下一个输出值的前10个已确定样值和t作为网络输入层的输入结点。 由于10个样值点之间取值差异可能很大,这样的输入数据不利于网络学习及收敛,因此将 数据除以一个整数N对数据进行压缩(如:累计病例作为输入时最大最小可相差1000多,我 们选取N=80,数据压缩到[0,13]范围内)。 对于输出层,采用单节点形式。 对于隐层,我们采用隐层个数为输入层的一半,即5个 2网络各层激活函数的确定及算法的选用: 我们采用了BP网络经典的 Sigmoid传递函数:f(x)=,x和改进BP算法(动量法+学 习自适应调整策略)对网络进行训练。 3.训练次数1000次 详细算法步骤如下 Step1:初始化:令i=1;设定预测天数N Step2用过去以有的n个样点值(n代表天数),设为P={P,P1…,Pn}作为网络输入的样本向 量,用BP算法训练此网络:计算各层接收向量Z及输出向量y利用实际输出y与该样 本理想输出D的差值反向修改前面各层的权值矩阵A,使权值的改变方向沿着负导数方 向,使实际输出尽量逼近理想输出,最后在激励u(n+i)下得到将来的一个预测点值P Step3将预测出的Pn,加入样点值集合P,并执行P=P/{P}将元素P从集合P中除去,l=i+1; Step4:若i未达到设定的预测天数N,转Step2,否则退出系统循环。 Step5:在同一坐标系中作出预测值和实际采样值曲线 利用 Matlab神经网络工具箱编程求解: 仿真预测曲线 新增的病例数预测图13 应的预测: 网络的设计: 我们借助多层前向 BP 网络(Back-Propagation Network) 令 ( ) ( , ( 1), , ( ), ( 1), , ( )) y u y t = N A y t − y t − n u t − u t − n ∧ ∧ ∧ L L ;将 y(t − i) ∧ 经过i 步时延反馈到网络的输入 端,对网络的权值、阈值不断修改,进行自适应训练,以跟踪网络输入样本值的变化,达到对未来 值的预测。 其中 y(t − i),u(t − j) ∧ ( 1,2, , 1,2, , ) y nu i = Ln j = L 为神经网络的输入,y(t) ∧ 为神经网络的输出,A 代表神经网络的权空间。 网络的几个主要参数: 1. 网络层数、结点数的确定: 如果网络过于复杂,就不利于网络学习的收敛,得不到良好的学习结果。因此,在确定输 入层时,我们仅选择下一个输出值的前 10 个已确定样值和 t 作为网络输入层的输入结点。 由于 10 个样值点之间取值差异可能很大,这样的输入数据不利于网络学习及收敛,因此将 数据除以一个整数 N 对数据进行压缩(如:累计病例作为输入时最大最小可相差 1000 多,我 们选取 N=80,数据压缩到[0,13]范围内)。 对于输出层,采用单节点形式。 对于隐层,我们采用隐层个数为输入层的一半,即 5 个。 2.网络各层激活函数的确定及算法的选用: 我们采用了 BP 网络经典的 Sigmoid 传递函数: x e f x − + = 1 1 ( ) 和改进 BP 算法(动量法+学 习自适应调整策略)对网络进行训练。 3.训练次数 1000 次 详细算法步骤如下: Step 1: 初始化:令i =1; 设定预测天数 N; Step 2:用过去以有的 n 个样点值(n 代表天数),设为 P= } { , , , Pi Pi+1 L Pn+i−1 作为网络输入的样本向 量,用 BP 算法训练此网络:计算各层接收向量 Z 及输出向量 y;利用实际输出 y 与该样 本理想输出 D 的差值反向修改前面各层的权值矩阵 A,使权值的改变方向沿着负导数方 向,使实际输出尽量逼近理想输出,最后在激励 u( n + i )下得到将来的一个预测点值 Pn+i ; Step 3:将预测出的 Pn+i 加入样点值集合 P,并执行 P=P } /{Pi ,将元素 Pi 从集合 P 中除去,i = i +1; Step 4:若i 未达到设定的预测天数 N,转 Step2,否则退出系统循环。 Step 5:在同一坐标系中作出预测值和实际采样值曲线; 利用 Matlab 神经网络工具箱编程求解: 仿真预测曲线 新增的病例数预测图
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有