ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:179.10KB ,
资源ID:2228404      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2228404.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(人工智能BP神经网络算法简单实现.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

人工智能BP神经网络算法简单实现.docx

1、人工智能BP神经网络算法简单实现人工神经网络是一种模仿人脑结构及英功能的信息处理系统,能提高人们对信息处理 的智能化水平。它是一门新兴的边缘和交叉学科,它在理论、模型、算法等方而比起以前 有了较大的发展,但至今无根本性的突破,还有很多空白点需要努力探索和研究。1人工神经网络研究背景神经网络的研究包括神经网络基本理论、网络学习算法、网络模型以及网络应用等方 o其中比较热门的一个课题就是神经网络学习算法的研究。近年来己研究岀许多与神经网络模型相对应的神经网络学习算法,这些算法大致可以 分为三类:有监督学习、无监督学习和增强学习。在理论上和实际应用中都比较成熟的算 法有以下三种:(1)误差反向传播算

2、法(BaCk PrOPagatiOn,简称BP算法);(2)模拟退火算法:(3)竞争学习算法。目前为止,在训练多层前向神经网络的算法中,BP算法是最有影响的算法之一。但这 种算法存在不少缺点,诸如收敛速度比较慢,或者只求得了局部极小点等等。因此,近年 来,国外许多专家对网络算法进行深入研究,提岀了许多改进的方法。主要有:(1)增加动量法:在网络权值的调整公式中增加一动量项,该动量项对某一时刻的调 整起阻尼作用。它可以在误差曲而出现骤然起伏时,减小振荡的趋势,提髙网络训练速度;(2)自适应调节学习率:在训练中自适应地改变学习率,使其该大时增大,该小时减 小。使用动态学习率,从而加快算法的收敛速度

3、:(3)引入陡度因子:为了提髙BP算法的收敛速度,在权值调整进入误差曲而的平坦区 时,引入陡度因子,设法压缩神经元的净输入,使权值调整脱离平坦区。此外,很多国内的学者也做了不少有关网络算法改进方而的研究,并耙改进的算法运 用到实际中,取得了一定的成果:(1)王晓敏等提出了一种基于改进的差分进化算法,利用差分进化算法的全局寻优能 力,能够快速地得到BP神经网络的权值,提髙算法的速度;(2)董国君等提岀了一种基于随机退火机制的竞争层神经网络学习算法,该算法将竞 争层神经网络的串行迭代模式改为随机优化模式,通过采用退火技术避免网络收敛到能量 函数的局部极小点,从而得到全局最优值:(3)赵青提岀一种分

4、层遗传算法与BP算法相结合的前馈神经网络学习算法。将分层遗 传算法引入到前馈神经网络权值和阈值的早期训练中,再用BP算法对前期训练所得性能较 优的网络权值、阈值进行二次训练得到最终结果,该混合学习算法能够较快地收敛到全局 最优解;(4)胡洁等提出一种快速且全局收敛的神经网络学习算法,并且对该优化算法的全局 收敛性进行分析和详细证明,说明提出的算法比标准的算法效率更高且更精确。尽管国内外的很多学者对BP算法进行了改进,但这些算法只有在某些特左要求下才有 效,并且对网络训练时要加强对网络的监控,网络的结构和参数是要通过多次的试验才能 确定,这些都导致了网络训练时间的增加,降低了网络收敛速度。因此,

5、还需要进一步研 究神经网络学习算法,提髙网络收敛速度,使网络能够更好地应用于实际。2神经网络基础21人工神经网络概念2.1.1生物神经元模型生物神经系统是一个有高度组织和相互作用的数量巨大的细胞组织群体。人类大脑的 神经细胞大约有IOlO 一 10,个。神经细胞也称神经元,是神经系统的基本单元,它们 按不同的结合方式构成了复杂的神经网络。通过神经元及其连接的可塑性,使得大脑具有 学习、记忆和认知等并种智能。人工神经网络的研究出发点是以生物神经元学说为基础的。 生物神经元学说认为,神经细胞即神经元是神经系统中独立的营养和功能单元。其独立性 是指每一个神经元均有自己的核和自己的分界线或原生质膜。生

6、物神经系统包括中枢神经 系统和大脑,均是由各类神经元组成。生物神经元之间的相互连接让信息传递的部位称为 突触(SynaPSe)O突触按苴传递信息的不同机制,可分为化学突触和电突触,其中化学突触 占大多数,其神经冲动传递借助于化学递质的作用。神经元是基本的信息处理单元。它主 要由树突、轴突和突触组成。其结构大致描述如图1所示。图1生物神经元结构2.1.2神经网络模型目前人们提出的神经元模型己有很多,其中提出最早且影响最大的是1943年心理学家MCCUIIOCh和科学家W.PittS在分析总结神经元基本特性的基础上首先提出的M-P模型, 如图2所示,它是大多数神经网络模型的基础。图2模型Wji代表

7、神经元i与神经元j之间的连接强度(模拟生物神经元之间突触连接强度),称 之为连接权;Ui代表神经元i的活跃值,即神经元状态;Vi-代表神经元j的输岀,即是神经元i的一个输入;()j代表神经元的阀值。函数f表达了神经元的输入输岀特性。在模型中,f宦义为阶跳函数:ui O ui O2.1.3神经网络结构神经网络的网络结构可以归为以下几类:1) 前馈式网络:该网络结构是分层排列的,每一层的神经元输出只与下一层神经元连接。2) 输岀反馈的前馈式网络:该网络结构与前馈式网络的不同之处在于这种网络存在着一 个从输出层到输入层的反馈回路。3) 前馈式内层互连网络:该网络结构中,同一层之间存在着相互关联,神经

8、元之间有相 互的制约关系,但从层与层之间的关系来看仍然是前馈式的网络结构,许多自组织神经网 络大多具有这种结构。4) 反馈型全互连网络:在该网络中,每个神经元的输出都和其他神经元相连,从而形成 了动态的反馈关系,该网络结构具有关于能量函数的自寻优能力。5) 反馈型局部互连网络:该网络中,每个神经元只和其周国若干层的神经元发生互连关 系,形成局部反馈,从整体上看是一种网状结构。2.1.4神经网络的学习神经网络的学习也称为训练,指的是通过神经网络所在环境的刺激作用调整神经网络 的自由参数,使神经网络以一种新的方式对外部环境做岀反应的一个过程。能够从环境中 学习和在学习中提高自身性能是神经网络的最有

9、意义的性质。神经网络经过反复学习对其 环境更为了解。学习算法是指针对学习问题的明确规则集合。学习类型是由参数变化发生 的形式决立的,不同的学习算法对神经元的突触权值调整的表达式有所不同。2.2 BP神经网络2.2.1 BP神经网络的定义、特点及应用采用误差反向传播算法(Bp:ErrOrBaCk PrOPagatiOnAIgOrithm)的多层前馈人匸神经网 络(或称多层感知器,MLP :MUItiUyerPerCePtrOn)为BP神经网络或BP神经网络模型。BP 神经网络具有明显的特点:I)分布式的信息存储方式神经网络是以务个处理器本身的状态和它们之间的连接形式存储信息的,一个信息不 是存储

10、在一个地方,而是按内容分布在整个网络上。网络上某一处不是只存储一个外部信 息,而是存储了多个信息的部分内容。整个网络对多个信息加工后才存储到网络各处,因 此,它是一种分布式存储方式。2) 大规模并行处理BP神经网络信息的存储与处理(讣算)是合二为一的,即信息的存储体现在神经元互连 的分布上,并以大规模并行分布方式处理为主,比串行离散符号处理的现代数字计算机优 越。3) 自学习和自适应性BP神经网络各层直接的连接权值具有一立的可调性,网络可以通过训练和学习来确圮 网络的权值,呈现出很强的对环境的自适应和对外界事物的自学习能力。4) 较强的鲁棒性和容错性BP神经网络分布式的信息存储方式,使其具有较

11、强的容错性和联想记忆功能,这样如 果某一部分的信息丢失或损坏,网络仍能恢复岀原来完整的信息,系统仍能运行。2.2.2 BP神经网络结构BP神经网络通常由输入层、隐含层和输出层组成,层与层之间全互连,每层节点之间 不相连。它的输入层节点的个数通常取输入向量的维数,输岀层巧点的个数通常取输岀向 量的维数,隐层节点个数目前尚无确圮的标准,需通过反复试凑的方法,然后得到最终结 果。根据KOlmOgOrO .泄瑾,具有一个隐层(隐层节点足够多)的三层BP神经网络能在闭集 上以任意精度逼近任意非线性连续函数。BP网络是一种多层前馈神经网络,由输入层、隐层和输出层组成。层与层之间采用全 互连方式,同一层之间

12、不存在相互连接,隐层可以有一个或多个。构造一个BP网络需要确 龙其处理单元 神经元的特性和网络的拓扑结构。神经元是神经网络最基本的处理单元,隐层中的神经元采用S型变换函数,输出层的神经元可采用S型或线性型变换函数。 图1为一个典型的三层BP网络的拓扑结构。神经网络学习采用改进BP算法,学习过程由前向计算过程和误差反向传播过程组成。 在前向计算过程中,输入信息从输入层经隐层逐层计算,并传向输出层,每层神经元的状态只 影响下一层神经元的状态。如输出层不能得到期望的输出,则转入误差反向传播过程,误差 信号沿原来的连接通路返回,通过修改各层的神经元的权值,使得网络系统误差最小。最终 网络的实际输岀与各

13、自所对应的期望输出逼近。3 MATLAB6.1神经网络工具箱及其相关函数简介BP神经网络设计时,需要确定网络的拓扑结构(隐层的层数及各层的神经元的数目)及 其神经元的变换函数,网络的初始化,误差计算,学习规则及网络训练,训练参数及训练样本 的归一化处理等方而的工作,在MATLAB6.1神经网络工具箱中,有对应的函数完成所涉及到 的全部计算任务。3.1设计BP网络的相关函数1)神经元变换函数:线性变换函数PUreIin.对数S型变换函数Iogsin.双曲线正切S型 变换函数tansig,2)BP网络生成函数newff:它是用来生成BP神经网络并进行初始化,可以确左网络层数、 每层中的神经元数和变

14、换函数。这个函数有六个输入参数,分别是:输入向量的范用、网络 结构、各层变换函数、训练算法函数、学习函数和性能函数。输岀参数为所生成的BP神经 网络名 net,其语法为:net=newff(PR, SIZ S2., SNII, TFl, TF2z .TFN1, BTFZ BLF,PF)貝中:PR是一个由每个输入向量的最大最小值构成的Rx2矩阵,R为输入神经元数目。Si是第i层网络的神经元个数,网络共有Nl层。TFi是第i层网络神经元的变换函数,缺省为tansig.BTF是BP训练算法函数,缺省为trainlm.BLF是学习函数,缺省为Iearngdm.PF是性能函数,缺省为mse.newff在

15、确左网络结构后会自动调用初始化函数init,用缺省参数来初始化网络中各个 权值和阈值,产生一个可训练的前馈网络,即该函数的返回值neto在MATLAB中,神经网络 net当做对象(ObjeCt)处理,其属性用结构来宦义。3)初始化函数init:它是对网络的连接权值和阈值进行初始化。newff在创建网络对象的 同时,自动调动初始化函数,根据缺省的参数对网络进行连接权值和阈值初始化。4)学习函数:提供多种学习函数,用来修正权值和阈值。基本的学习函数有Uearngd. Iear ngdm。5)性能函数:它是用来计算网络的输出误差。为训练提供判据,包括:函数mae,计算网络的平均绝 对误差;函数mse

16、,计算网络的均方误差;函数msereg,计算均方误差和权/阈值的加权;函数 sse,计算网络的均方误差和。6)训练函数train:BP网络的训练初始化后,可对它进行训练。在MATLAB中训练网络有两类模式:逐变模 式和批处理模式。在逐变模式中,每输入一个学习样本就根据网络性能指标函数对连接权值 和阈值更新一次。在批处理模式中,所有的学习样本都学习完成后,连接权值和阈值才被更 新一次。使用批处理模式不需要为每一层的连接权值和阈值设左训练函数,而只需为整个 网络指左一个训练函数,使用起来相对方便,而且许多改进的快速训练算法只能采用批处理 模式。训练网络的函数是train按设置的net.trainFcn和net.trainParam参

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1