神经网络.doc_第1页
神经网络.doc_第2页
神经网络.doc_第3页
神经网络.doc_第4页
神经网络.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

神经网络l 神经网络是一种黑箱建模工具n 不要求建立实际系统的辨识格式,即可省去系统结构建模这一步骤;n 可以对本质非线性系统进行辨识;n 辨识的收敛速度不依赖于待辨识系统的维数,只于神经网络本身及其所采用的学习算法有关;n 神经网络的连接权值在辨识中对应于模型参数,通过权值的调节可使网络输出逼近于系统输出;n 神经网络作为实际系统的辨识模型,实际上也是系统的一个物理实现,可以用于在线控制;l 解决复杂的非线性、不确定、未知系统的控制问题l 神经网络主要应用领域有:模式识别与图象处理(语音、指纹、故障检测和图象压缩等)、控制与优化、系统辨识、预测与管理(市场预测、风险分析)、通信等。l 应用1 基于神经网络的系统辨识 n 将神经网络作为被辨识系统的模型,可在已知常规模型结构的情况下,估计模型的参数。 n 利用神经网络的线性、非线性特性,可建立线性、非线性系统的静态、动态、逆动态及预测模型,实现非线性系统的建模。 l (2) 神经网络控制器 神经网络作为实时控制系统的控制器,对不确定、不确知系统及扰动进行有效的控制,使控制系统达到所要求的动态、静态特性。 l (3) 神经网络与其他算法相结合 将神经网络与专家系统、模糊逻辑、遗传算法等相结合,可设计新型智能控制系统。 l (4) 优化计算 在常规的控制系统中,常遇到求解约束优化问题,神经网络为这类问题的解决提供了有效的途径。l hopfield神经网络模型,由非线性元件构成的全连接型单层反馈系统,每一个神经元都将自己的输出通过连接权传送给所有其它神经元,同时又都接收所有其它神经元传递过来的信息。反馈型网络的一个重要特点就是它具有稳定状态,当网络达到稳定状态的时候,也就是它的能量函数达到最小的时候。hopfield神经网络的能量函数表征网络状态的变化趋势,并可以依据hopfield工作运行规则不断进行状态变化,最终能够达到的某个极小值的目标函数。网络收敛就是指能量函数达到极小值。把一个最优化问题的目标函数转换成网络的能量函数,把问题的变量对应于网络的状态,那么hopfield神经网络就能够用于解决优化组合问题。l 解决了著名的旅行推销商问题(tsp问题),另外,它在智能控制和系统辨识中也有广泛应用。ll 径向基函数(rbf-radial basis function):具有单隐层的三层前馈网络,一种局部逼近网络,n (1) rbf网络的作用函数为高斯函数,是局部的,bp网络的作用函数为s函数,是全局的;权值调整:梯度下降法n (2) 如何确定rbf网络隐层节点的中心及基宽度参数是一个困难的问题;n (3) 已证明rbf网络具有唯一最佳逼近的特性,且无局部极小1。l 由于采用梯度下降法调节网络的权值,无法保证控制系统的稳定性和收敛性。l bp(back propagation)网络:单向传播的多层前向网络。采用梯度搜索技术,以期使网络的实际输出值与期望输出值的误差均方值为最小。权值通过学习算法进行调节;神经元激发函数为s函数;ll l bp网络的优点为:n (1)只要有足够多的隐层和隐层节点,bp网络可以逼近任意的非线性映射关系;n (2)bp网络的学习算法属于全局逼近算法,具有较强的泛化能力。n (3)bp网络输入输出之间的关联信息分布地存储在网络的连接权中,个别神经元的损坏只对输入输出关系有较小的影响,因而bp网络具有较好的容错性。l bp网络的主要缺点为:n (1)待寻优的参数多,收敛速度慢;n (2)目标函数存在多个极值点,按梯度下降法进行学习,很容易陷入局部极小值;n (3)难以确定隐层及隐层节点的数目。目前,如何根据特定的问题来确定具体的网络结构尚无很好的方法,仍需根据经验来试凑。l 由于bp网络具有很好的逼近特性和泛化能力,在模式识别、图像处理、系统辨识、函数拟合、优化计算、最优预测和自适应控制等,可用于神经网络控制器的设计。但由于bp网络收敛速度慢,难以适应实时控制的要求。l bp 算法的改进误差函数的可调整参数的个数nw等于各层权值数加上阈值数,即:误差e是nw+1维空间中一个形状极为复杂的曲面,该曲面上的每个点的“高度”对应于一个误差值,每个点的坐标向量对应着nw个权值,因此称这样的空间为误差的权空间。单权值双权值 误差曲面的分布特点决定了算法的局限性 (1)存在平坦区域-误差下降缓慢,影响收敛速度 (2)存在多个极小点-易陷入局部最小点 尽管 bp 神经网络具有算法成熟,网络结构简单等优点,但利用 bp 神经网络解决实际问题时,存在着两个主要问题:(1) bp 算法学习、收敛速度慢;(2) bp 算法是一种局部搜索算法,在寻找复杂非线性函数的全局极值时,有可能陷入局部极小值,从而导致训练失败。 隐节点的选取缺乏理论指导; 训练时学习新样本有遗忘旧样本的趋势。 针对上述问题,国内外已提出不少有效的改进算法,下面仅介绍其中3种较常用的方法。改进1 :增加动量项 改进2:自适应调节学习率 改进3: 引入陡度因子 为了有效克服传统 bp 算法的缺陷,学者们提出了一系统 bp 改进算法,主要目标是为了加快网络的训练速度、收敛速度,避免陷入局极小值,最大限度地提高网络的泛化能力。改进算法归纳起来有1) 加入动量项、共扼梯度法、正则化方法、弹性 bp 算法、自适应学习速率动量梯度下降反向传播算法、引入变步长法、遗传算法、模拟退火算法等。2) 改进算法大体上分为两类,一类是采用启发式技术,如附加动量法、自适应学习速率法、rprop 方法;另一类是采用数字优化技术,如共轭梯度法、拟牛顿法、levenberg - marquardt 方法.3) 论文中常用改进:修改误差函数,一些新的启发式算法bp神经网络在基金价格预测中的应用研究.kdh本文为了提高 bp 神经网络的性能,采用了自适应学习速率动量梯度下降反向传播的 bp 优化算法。从 bp 算法的公式可知,学习速率 决定了网络的收敛速度, 越大,则网络收敛越快,但 超过了一定值则会引起振荡现象。适当地改变学习速率,可以加快网络的速度,提高网络的泛化能力。本文的优化过程如下:1) 将本次迭代误差与上一次迭代误差进行比较,如果误差变化量为负数,则说明了迭代结果接近极小值,可以适当地增加学习速率 ,以提高网络的收敛速度;2) 当本次迭代误差与上一次迭代误差变化量为正,且数值较大,则说明了迭代结果偏离极小值,则此时,应当适度减小网络的学习速率 。数据表达式如下:引自百度文库的一文:1.附加动量法使bp 神经网络在修正其权重和阈值时,不仅考虑误差在梯度上的作用,而且考虑在误差曲面上变化趋势的影响,它允许忽略网络上的微小变化特性. 该方法是在反向传播法的基础上,在每一个权重和阈值的变化上加上一项正比于前次权重和阈值变化量的值,并根据反向传播法来产生新的权重和阈值的变化,带有附加动量因子的权重和阈值(x) 调节公式为:(1)其中k 为训练次数, mc 为动量因子,一般取0. 95 左右, lr 为学习速率,是常数, e 为误差函数.这种方法所加入的动量项实质上相当于阻尼项,它减小了学习过程的振荡趋势, 从而改善了收敛性,找到更优的解. 但是这种方法的缺点也是明显的,参数的选取只能通过实验来确定, 而且它的学习速度还不能满足实时的工作需要. 2自适应学习速率法自适应调整学习速率有利于缩短学习时间. 标准b p算法收敛速度慢的重要原因是学习速率选择不当. 学习速率选得太小,收敛太慢;学习速率选取得太大,则有可能修正过头,导致发散. 因此出现了自适应调整的改进算法,其权重和阈值(x)见公式(2)(3)其中, lr 为学习速率,是变量,而公式(1) 中lr 是常数.通常调节学习速率lr 的准则是:检查权重的修正值是否真正降低了误差函数, 如果确实如此, 则说明所选取的学习速率值小了,可以对其增加一个量;若不是这样,而产生了过调,那么就应减小学习速率的值.3弹性bp(resilient back propagation ,rprop) 方法一般来说,bp 网络的隐含层激活函数采用s形的(sigmoid) 函数. sigmoid 函数用于将神经元的输入范围( - , + ) 映射到(0 ,1) ,当输入变量很时,sigmoid 函数的斜率将接近于0. 这可能导致在利用sigmoid 函数训练bp 网络中梯度下降的问题,由于即使梯度有很小的变化,也会引起权重和阈值的微小变化,使权重和阈值远离最乐观的值.有鉴于此,1993 年德国martin riedmiller 和heinrich braun 在他们的论文中提出有弹性的bp(resilient backpropagation) 方法.这种方法的原理是打算消除偏导数的大小有害的影响权步,因此,唯有导数的符号被认为表示权更新的方向,而导数的大小对权更新没有影响. 权改变的大小仅仅由权专门的“更新t 时刻.对每个权重和阈值的更新值得到修改,权更新本身遵循一个很简单的规则:如果导数是正(增加误差) ,这个权重和阈值由它的更新值降低,如果导数是负,更新值提高:见公式(5)rprop 的基本原理是权重和阈值更新值的直接修改,它和以学习速率为基础的算法相反(正如梯度下降一样) . rprop 引入resilient (有弹性的)更新值的概念直接地修改权步的大小. 因此, 修改结果不会被不可预见的梯度性能变模糊. 由于学习规律的清楚和简单, 和最初的反传算法比较, 在计算上仅有少量的耗费. 除了快速外, rprop 的主要优点之一在于对许多问题一点也不需要参数的选择以得到最优或者至少接近最优收敛时间. 4共轭梯度法当使用共轭梯度向量来确定共轭方向时,称此算法为共轭梯度法. 1990 j .leonard 和m. a.kramer将共轭梯度法和行搜索策略结合在一起. 在共轭梯度法中,沿着共轭方向进行行搜索,收敛速度将比一般的梯度下降法要快得多. 在一般的训练算法中,是利用学习速率决定权重和阈值更新的步长,而在多数共轭梯度算法中权值步长各自反复地调整,沿着共轭梯度用行搜索来决定权值步长以减少在行中的完成功能. 共轭梯度法可以不必计算或存储二阶导数信息就具有二阶方法的功能,它与拟牛顿法相比,它的计算代价很低,因此在较大规模问题中十分有用.这里只介绍四种共轭梯度算法:fletcher - reeves、polak - ribiere 、pwell - beale以及scaled conjugate gradient (scg) 算法.4.1 fletcher - reeves 共轭梯度法所有的共轭梯度算法的搜索方向p0 是从最陡下降方向g0 (梯度的负方向) 开始搜索:见公式(6)然后利用行搜索沿着当前搜索方向决定权重和阈值( x) :见公式(7)其中p 为搜索方向,参数用来减少搜索方向的梯度. 接着,决定下一行搜索方向与以前的搜索方向是共轭的. 决定新的搜索方向的一般方法是把新的最陡下降方向g 与以前的搜索方向结合起来:见公式(8)lll bp网络学习算法的改正算法 消除样本输入顺序影响的改进算法 附加动量的改进算法 采用自适应调整参数的改进算法 使用弹性方法的改进算法 使用拟牛顿法的改进算法 基于共轭梯度法的改进算法 基于levenberg-marquardt法的改进算法 matlab各有对应的函数l 小脑模型神经网络cerebellar model articulation controller,cmaccmac网络是仿照小脑控制肢体运动的原理而建立的神经网络模型。小脑指挥运动时具有不假思索地作出条件反射迅速响应的特点,这种条件反射式响应是一种迅速联想。适合实时性要求都较高的应用,如机械手关节、机器人控制等。三个特点: 1) 利用散列编码(hash coding)进行多对少的映射;2)通过对输入分布式测量信号的编码,使输出具有泛化和插 值能力;3)通过监督学习,修改地址的内容和连接权值,使之逼成任意 非线性函数。 使输入空间中,相同或相距不远的输入向量,有相同 的输出 泛化 使输入空间中,不同或相距远的输入向量,有不同 的输出 分类 给定期望的输出函数 f 即: p* = f(s ) p* 为输出向量的期望值 对输入空间每一点,计算实际输出 pk= f(si) k = 1,2,,r (输出向量的维数) i = 1, 2,n (输入向量的维数) p = f(s ) pk = akwtk ak =(a1k ,a2k ,ank) wk = (w1k , w2k ,wnk) 对r维输出p 向量,应有r个实际存贮器。 比较pk 和 p*k 使 | pk - p*k | ek 如果不满足,按下式更改和修正权值w: 其中: 是地址 中第 次迭代的权值(新) 是地址 中第 次迭代的权值(旧) 括号中是平均误差 是修正因子。 重复以上步骤,直至误差达到规定值。1cmac的结果输出计算及误差产生阶段 (5-1)其中,为第j个存储单元的权值,若激活,则其值为1,否则为0,只有个存储单元对输出有影响。相近的输入激活的存储单元有交叠,产生相近的输出,不相近的输入将产生不相近的输出。对应的误差表达式为: (5-2)2cmac的权值调整阶段 (5-3)为状态的期望输出,为状态的实际输出,为学习常数。l 改进的cmac5.2.1 模糊cmac神经网络算法 (5-4)基于联想度的概念,可获得一模糊化的联想向量,进而得到fcmac的输出: (5-5)若令,其他情况,则退化为二进制向量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论