• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 其它相关 > 正文

    基于FR算法的多层前向神经网络仿真研究

    来源:六七范文网 时间:2023-06-05 02:55:13 点击:

    摘 要: 概述人工神经网络及其权值调整的方法,主要介绍多层前向神经网络中能较好解决上述问题的二阶算法:共轭梯度算法FR算法,实施算法的仿真,同时对仿真结果进行分析。

    关键词: 人工神经网络;二阶算法;FR算法

    中图分类号:TP183 文献标识码:A 文章编号:1671-7597(2011)1120110-01

    1 人工神经网络概述

    人工神经网络,亦称为神经网络,通常人们也认为是第六代计算机,简写为ANN(Artificial Neural Networks),它是由大量处理单元(人工神经元)广泛互连而成的网络,是对人脑的抽象、简化和模拟,反映人脑的基本特征。从本质上来说它是基于模仿生物大脑的结构和功能而构成的一种信息处理系统或计算机。

    神经网络也经常被称为神经计算机,但它与现代数字计算机的不同之处主要表现在以下方面:

    1)神经网络的信息存储与处理是合二为一的。

    2)神经网络以大规模模拟计算为主。

    3)神经网络具有很强的鲁棒性和容错性。

    4)神经网络具有很强的自学习能力。

    神经网络的处理能力来自于神经网络中各神经元之间的连接权。连接权一般不能准确确定,故神经网络应具有学习功能,即能根据样本模式逐渐调整权值,使神经网络具有卓越的处理信息的能力。

    神经网络的学习方法有两大类:有教师学习和无教师学习。对于有教师学习,神经网络的输出和期望输出进行比较,然后根据两者之间的差的函数(如差的平方和)来调整网络的权值,最终使其函数达到最小。对于无教师学习,当输入的样本模式进入神经网络后,网络按照预先设定的规则(如竞争规则)自动调整权值,使网络最终具有模式分类等功能。

    2 多层前向神经网络

    根据神经元输入输出传递函数的差异、学习算法和网络结构上的某些区别,可将前向型神经网络分为感知器网络、BP网络、线性网络、径向基网络以及GMDH网络等不同的网络模型。同时,感知器网络又分为单层感知器和多层感知器神经网络。多层感知器是单层感知器的推广,但是它能够解决单层感知器所不能解决的非线性可分问题。

    BP网络主要用于:

    1)函数逼近:用输入向量和相应的输出向量训练一个网络逼近一个函数。

    2)模式识别:用一个特定的输出向量将它与输入向量联系起来。

    3)分类:把输入向量以所定义的合适方式进行分类。

    4)数据压缩:减少输出向量维数以便于传输。

    BP网络由输入层、隐含层和输出层组成。输入层神经元的个数为输入信号的维数,隐含层个数和隐含节点的个数视具体情况而定,输出层神经元的个数为输出信号的维数。

    BP网络中每个神经元的激励函数可以是可微的Sigmoid函数,如

    下面分别给出以含一个隐含层BP网络的不同的拓扑结构:

    图1 多层前向网络

    图2 有反馈的前向网络

    以上介绍的BP算法属于一阶算法。虽然BP网络得到了广泛应用,但其自身也存在一些缺陷和不足,主要有以下几个方面:

    1)学习速率固定,导致收敛速度很慢;

    2)易陷入局部最小值;

    3)网络存在很大的冗余性;

    4)网络的学习和记忆具有不稳定性。

    根据目标函数在极值点附近往往可以用一个二次函数来逼近,则在极值点附近采用二阶算法将有较快的收敛速度。

    图3 神经网络算法的种类

    3 FR算法简介

    BP算法在最快下降方向(负梯度方向)调整权值,在该方向上误差函数下降最快,收敛速度不一定最快,在共轭梯度算法中每次迭代中步长更改的同时,寻找决定步长的变梯度方向,使误差函数在该方向上最小,共轭梯度法亦为二阶算法,和牛顿算法一样,共轭梯度算法在目标函数二次性较强的区域有较好的收敛效果。共轭梯度算法使用共轭梯度向量来确定共轭方向,所以称此算法为共轭梯度算法。1990年J.Leonard和M.A.Kramer将共轭梯度算法和行搜索策略结合在一起,在共轭梯度算法中,沿着共轭方向进行行搜索,收敛速度将比一般的梯度下降法要快的多。在一般训练算法中,是利用学习速率决定权值更新的步长,而在多数共轭梯度算法中权值步长各自反复的调整,沿着共轭梯度用行搜索来决定权值步长以减少在行中的完成功能。共轭梯度算法可以不必计算或存储二阶导数信息就具有二阶方法的功能,它与拟牛顿算法相比,它的计算代价很低,因此在较大规模问题中十分有用。

    共轭梯度算法有多种方案,这里介绍一下用的比较广泛的FR共轭梯度法。

    Flecher-Reeves共轭梯度法:

    所有的共轭梯度算法的搜索方向 是从最陡下降方向(梯度的负方向)开始搜索

    (3)

    然后利用行搜索沿着当前搜索方向决定权值

    (4)

    其中 为搜索方向,参数 用来减少搜索方向的梯度,接着,决定下一行搜索方向与以前的搜索方向是共轭的。决定新的搜索方向 的一般方法是把新的最陡下降方向与以前的搜索方向结合起来:

    (5)

    项可通过多种方式定义,这样按照上式就有一族共轭梯度法产生方向向量,不同的表达式就有不同的共轭梯度法, 的调节参阅下式

    在权值和阈值很多时,易采用FR算法。

    4 FR算法的仿真实验及结果

    实验:曲线拟合问题。以正弦函数为例,考虑如下训练样本集:

    对于曲线拟合问题,仍采用两层前向神经网络(隐含层和输出层),显然在此只需一个输入和一个输出,这里设隐含层有10个神经元。隐含层输出的转移函数采用双曲正切S形函数,输出层输出转移函数采用线性函数,设输入层到隐含层的权值为

    ,阈值为

    (因阈值可看成是输入为-1),设隐含层到输出层的权值为

    ,阈值为,这样,该多层前向神经网络共有31个参数需要估计,现在分别用标准BP算法,FR算法对参数进行寻优进行函数逼近。仿真实验涉及到的算法的程序在附录2中给出。下面给出仿真实验中所得的各算法的训练误差和步数曲线及仿真结果图形。

    1)最小误差平方和,最大迭代次数

    标准BP算法:

    图4 Bp训练误差及步数曲线

    图5 BP仿真结果

    BP算法学习次数为400次,学习时间为3.25s,最后误差平方和SSE=0.009862。

    Fr算法:

    图6 FR训练误差及步数曲线 图7 FR仿真结果

    FR算法学习次数为6次,学习时间为1.5s,最后误差平方和=0.0007052。

    2)最小误差平方和,最大迭代次数

    图8 BP训练误差及步数曲线图9 FR训练误差及步数曲线

    通过上述仿真实验结果,可以得出这样一个直观的感受。FR算法在收敛迭代次数方面要优于BP算法。但在大规模样本训练情况下,却发现FR算法较易BP算法陷入局部最小。

    通过FR算法和标准BP算法的实验对比,分析可知:标准BP算法,由于其收敛是线性的,故收敛的步数较多,时间较长,但拟合曲线还能达到要求,而FR算法虽然迭代次数少,收敛速度快,但是它较易陷入局部最小,不能保证每次均快速收敛,且随着误差的降低,收敛速度会越来越慢。

    参考文献:

    [1]王永骥,神经元网络控制,北京:机械工业出版社.

    [2]罗四维,大规模人工神经网络理论基础,北京:清华大学出版社,2004.2.

    [3]飞思科技,神经网络理论与MATLAB7实现,第一版,北京:电子工业出版社,2005.3.

    [4]闻新,MATLAB神经网络仿真与应用,北京:科学出版社,2003.

    [5]高隽,人工神经网络原理及仿真实例,第一版,北京:机械工业出版社,2003.7.

    [6]候媛彬等,神经网络,西安:西安电子科技大学出版社,2007.

    [7]蒋宗礼,人工神经网络导论,第一版,北京:高等教育出版社2001.8.

    [8]刘卫国编著,Matlab程序设计教程,第一版,中国水利水电出版社,2005.

    作者简介:

    徐少甫(1980-),男,江苏扬州人,毕业于苏州大学,目前在无锡太湖学院计算机中心主要从事计算机等级考试考务及相关技术工作。

    推荐访问:神经网络 多层 算法 仿真 前向