文档详情

软件体系结构智能模型算法.doc

发布:2017-03-23约1.43千字共4页下载文档
文本预览下载声明
南京信息工程大学 实验(实习)报告 实验名称 智能模型算法过程 实验(实习)日期 6.14 得分 指导教师 系 计算机 专业 计算机 年级 2011 班次 3 姓名 学号 一、实验目的 1.了解BP神经网络算法流程 2.掌握BP神经网络算法的建模 二、实验内容及步骤 BP神经元网络算法流程: 算法流程图如下: 具体步骤: 1)确定参数 a确定输入向量; 输入量为(输入层神经元为n个)。 b.确定输出量和希望输出量: 输出向量为(输出层神经元为q个)。 希望输出向量。 c.确定隐含层输出向量: 隐含层输出向量为,(隐含层单元数为p)。 隐含层连接权初始化值:,。 输出层连接权初始化值:,。 2)输入模式顺传播: a.计算隐含层各神经元的激活值: 式中为隐含层连接权,为隐含层单元的阈值。 激活函数采用S型函数,即 b.计算隐含层j单元的输出值。将上面的激活值代入激活函数中可得隐含层j单元的 输出值为: 其中阈值与一样的被不断修改。 C.计算输出层第个单元的激活值: d.计算输出层第个单元的实际输出值: 式中为隐含层到输出层的权值; 输出单元阈值 为S型激活函数。 3)输出误差的传播 当实际输出与目标输出的误差大于要求的误差范围时,就要依次一层层对BP网络 的参数进行更改: a.输出层校正误差为: 式中为实际输出,为希望输出; b.隐含层各单元的校正误差为: c.输出层至隐含层连接权和输出层阈值的校正量为: 式中为隐含层单元的输出,校正误差,为学习系数 d.隐含层至输入层的校正量为: 为隐含层单元的校正误差,为学习系数,。 4)循环记忆训练: 为使网络误差趋于极小值,一般要经历多次循环记忆才能使网络记住这一模式, 这种循环记忆实际上就是反复重复上面的过程。 BP算法的缺点: 收敛速度慢 存在局部极小点问题 有动量的梯度下降法: 梯度下降法在修正权值时,只是按照K时刻的负梯度方向修正,并没有考虑到以前积累的经验,即以前的梯度方向,从而使得学习过程发生震荡,收敛缓慢。为此可采用如下算法进行改进: 式中,表示时刻的负梯度;为学习速率;是动量因子,当时,权值修正只与当前负梯度有关当时,权值修正就完全取决于上一次循环的负梯度了。这种方法实际上相当于给系统加入了速度反馈,引入了阻尼项从而减小了系统震荡,从而改善了收敛性。 有自适应lr的梯度下降法: 由于学习速率对于训练的成功与否有很大的影响,而且合理的学习速率将会缩短训练的时间,由此可以想到在训练的不同阶段改变梯度下降法中的学习参数,从而获得更好的训练效果,这就有了自适应lr的梯度下降法。 以上两种改进方法还可以同时使用用以更好的改进BP网路的训练过程。 三、体会和总结 通过本次实验我掌握了BP神经网络算法的流程及建模过程
显示全部
相似文档