资源预览内容
第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
第9页 / 共41页
第10页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
人工神经网络,本章着重掌握亮点,1、神经网络模型的构造原理2、如何应用神经网络模型进行学习和分类,讲解思路,1、介绍神经网络模型的算法思想和模型基本构造方法2、结合实例介绍应用神经网络模型进行学习和分类,基本概念,人工神经网络(Artificial Neural Network,简称ANN),它是由简单计算单元(单个神经元结构简单,功能有限,但由大量神经元组成的网络却可以实现强大的功能)组成的广泛并行互联的网络,能够模拟生物神经网络的结构和功能,进行分布式并行信息处理的算法数学模型。人工神经网络通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。人工神经网络具有自学习和自适应的能力,可以通过预先提供的一批相互对应的输入输出数据,分析掌握两者之间潜在的规律,最终根据这些规律,用新的输入数据来推算输出结果,这种学习分析的过程被称为“训练”。,人工神经网络具有四个基本特征:(1)非线性 人工神经元处于激活或抑制二种不同的状态,这种行为在数学上表现为一种非线性具有阈值的神经元构成的网络具有更好的性能,可以提高容错性和存储容量。 (2)非局限性 一个神经网络的整体行为不仅取决于单个神经元的特征,而且可能主要由单元之间的相互作用、相互连接所决定。联想记忆是非局限性的典型例子。 (3)非常定性 人工神经网络具有自适应、自组织、自学习能力。神经网络不但处理的信息可以有各种变化,而且在处理信息的同时,非线性动力系统本身也在不断变化。经常采用迭代过程描写动力系统的演化过程。 (4)非凸性 一个系统的演化方向,在一定条件下将取决于某个特定的状态函数。例如能量函数,它的极值相应于系统比较稳定的状态。非凸性是指这种函数有多个极值,故系统具有多个较稳定的平衡态,这将导致系统演化的多样性。,神经元处理单元,人工神经网络中,神经元处理单元可表示不同的对象,例如特征、字母、概念,或者一些有意义的抽象模式。网络中处理单元的类型分为三类:输入单元、输出单元和隐单元。输入单元接受外部世界的信号与数据;输出单元实现系统处理结果的输出;隐单元是处在输入和输出单元之间,不能由系统外部观察的单元。神经元间的连接权值反映了单元间的连接强度,信息的表示和处理体现在网络处理单元的连接关系中。,神经元模型 a. 突触权值b .加法器净激活c. 激活函数,输入信号,突触权值,偏置,输出,求和结点,激活函数,人工神经网络模型,人工神经网络模型主要考虑网络连接的拓扑结构、神经元的特征、学习规则等。目前,已有近40种神经网络模型,其中比较典型的有前向神经网络BP算法、离散Hopfield神经网络和连续Hopfield神经网络模型、Boltzmann机、自组织特征映射(SOM)神经网络模型等。,7.1人工神经元及人工神经网络模型,7.1.1M-P模型,输入的连接强度,称连接权,神经元的输入,神经元兴奋时的阈值,激活(励)函数,7.1.2 人工神经元的形式化描述,x1,x2,. . . . .,xn,ui,si,yi,图7.2 人工神经元结构模型,常用的神经元状态转移函数(课本148页): 1、阶跃函数2、准线性函数3、Sigmold函数4、双曲正切函数,7.1.3神经网络的分类,1、按网络性能可分为连续型和离散型网络,确定型与随机型网络。 2、按拓扑结构可分为:前向神经网络(网络中各个神经元接受前一级的输入,并输出到下一级,网络中没有反馈,例如反传网络是一种典型的前向网络。)与反馈神经网络(网络内神经元间有反馈,例如Hopfield网络等)。,7.1.4人工神经网络的学习方式,神经网络的学习过程指网络权值的调整。 主要的学习方式有: 1、死记式学习。网络连接权值不变,如Hopfield网络在作联想记忆和优化计算时采用了死记式学习。 2、有监督学习。将训练样本的数据加到网络输入端,将实际输出与期望输出比较,得到误差信号,反复多次调整连接权值使误差函数值最小,经多次训练后收敛到一个确定的权值。当样本情况发生变化时,经学习可以修改权值以适应新的环境。如反传网络、感知器等。,3、无监督学习。事先不给定标准样本,直接将网络置于环境之中,学习阶段与工作阶段成为一体。此时,学习规律的变化服从连接权值的演变方程。网络的学习是自我调整的过程。非监督学习最简单的例子是Hebb学习规则。竞争学习规则是一个更复杂的非监督学习的例子,它是根据已建立的聚类进行权值调整。自组织映射、适应谐振理论网络等都是与竞争学习有关的典型模型。 4、有监督与无监督的混合学习。首先采用无监督学习抽取输入模式的特征,然后利用有监督学习方式对其进行处理,形成输入输出的某种映射。在以上学习方式中,常用的人工神经网络学习规则主要有Hebb学习规则,学习规则,模拟退火算法,梯度下降算法等。,7.2 前向神经网络,7.2.1感知器,单层感知器的学习算法:1、初始化权值和阈值。2、输入样本。3、计算网络实际输出。4、修正权值。5、转到步骤2,反复迭代,直到权值对样本均稳定不变。,7.2.2多层前向神经网络的BP算法 (本章重点),多层前向神经网络有一个输入层、一个输出层和若干隐层。输入样本送入输入层后,传递给第一隐层。第一隐层节点对输入信号求加权和后,利用转移函数进行处理。第一隐层的输出传递给下一隐层,各个隐层一次类推,最后一个隐层的输出作为输出层的输入,输出层给出输入样本的网络预测。有两个隐层的前向神经网络如图7.5所示。,基本的BP(Error Back Propagation, 误差反向传播算法)采用有监督学习方式,基于梯度下降算法,极小化误差函数。其主要思想是将学习过程分为信号正向传播过程和误差后向传播过程两个阶段。,BP算法的基本思想:学习过程由信号的正向传播与误差的反向传播两个过程组成。 (1)正向传播:输入样本输入层各隐层(处理)输出层 注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程) (2)误差反向传播:输出误差(某种形式)隐层(逐层)输入层 其主要目的是通过将输出误差反传,将误差分摊给各层所有单元,从而获得各层单元的误差信号,进而修正各单元的权值(其过程,是一个权值不断调整的过程,一直进行到网络输出的误差减少到可接受的程度,或进行到预先设定的学习次数为止。)。,相关概念及梯度下降算法,一、相关概念。 1、设(Xp,Tp)表示输入样本,p1,2,3N,N为输入样本的个数。W表示网络权向量。 2、误差函数。E(W)=g(f(W,Xp,Tp),E成为误差(测度)函数。用误差函数来判别网络的实际输出向量Yp与教师信号向量Tp的误差。常采用二乘误差函数加以判别(m为输出向量的维数):,映射:对于给定的一组数据(Xp,Tp),神经网络通过一组特定的权值W,实现一定程度的映射。训练目的是希望得到的权值能产生最小的误差和最好的精度。从Xp Rn到YpRm的映射记为: f: Xp RnYp Rm (7.15) 误差曲面:若隐层与输出层间的权值数目记为m.n2,对于给定的训练样本(Xp,Tp),网络权向量W(W1,W2Wm.n),通过误差函数E(W)计算出来的映射误差可描述为m.n2+1空间的一个曲面,成为误差曲面。不同的E(W)对应不同的误差曲面形状。 网络学习:是指按照某种学习规则选取新的W,使E(W) E(W),即使E(W)对应的误差曲面上的点总是由下移动,最终移到最深的谷底(全局最小)。若曲面有多个谷底,移动的过程可能陷入局部极小。 移动步长:也称学习率,步长脚小时移动轨迹较慢且平滑,易陷入局部极小;步长叫大时移动速度快,可能跳过局部极小,也可能跳过全局最小点,易产生振荡。一般情况下,开始时取较大步长,后期取较小步长。,激活函数 必须处处可导 一般都使用S型函数 使用S型激活函数时BP网络输入与输出关系 输入输出,BP算法基于梯度下降算法。在梯度下降算法中,权值修正量正比于误差函数E(W)对W的负梯度,即:,(7.16),(7.17),设有N个学习样本(Xp,Tp),p1,2,N, 对于某个Xp,网络输出为Yp,节点i的输出为Oip,神经元节点i与j的连接权值为Wij,节点j的输入加权和为:,(7.18),误差函数使用二乘误差函数:,(7.19),根据netjp定义及求偏导数的链式规则有:,7.20,7.21,7.22,若j是输出接点,则Ojp=Yjp从而有:,若j不是输出接点,则有:,(7.23),(7.24),(7.25),(7.26),(7.27),在BP算法学习过程中,对于每一个输入样本逐次修正权值向量,若有N个输入样本,一次学习过程将对权值向量修正N次。这种逐次不断修正权值向量的方法称为逐次修正法。BP算法的过程: 1、首先,确定和选择网络结构,包括确定输入层和输出层的节点数,选择隐层数和各隐层内的节点数。确定节点的转移函数、误差函数类型,并选择各个可调参数值。 2、进行训练。 1)初始化2)输入训练样本对,计算各层输出 3)计算网络输出误差 4)计算各层误差信号 5)调整各层权值 6)检查网络总误差是否达到精度要求 若满足,则训练结束;若不满足,则返回步骤2) 3、训练结束,得到各个参数值(也即权值和阈值)。,BP算法的数学描述:,为简单起见,考虑一个三层的前向神经网络,设输入层节点数为n1,中间层节点数为n2,输出层节点数为m。设 为输入层节点i的输出; 为中间层节点j的输出; 为输出层节点k的输出;Tk为输出层节点k对应的教师信号;Wij为节点i和节点j间的连接权值;Wjk为节点j和节点k间的连接权值;j为中间层节点j的阈值;k为输出层节点k的阈值。,(7.28),(7.29),(7.30),BP算法的数学描述:,(1)设定学习次数初值。 (2)输入一个学习样本。 (3)计算隐层各节点的输出值 (4)计算输出层各节点的输出 (5)计算输出层节点和隐层节点之间连接权值的修正量。 (6)计算隐层节点和输入层节点间连接权值的修正量。,(7)修正权值和阈值(8)求误差修正量 (9)如果未取完全部学习样本,则返回步骤(2) (10)计算误差函数E,并判断E是否小于规定的误差上线,如果E小于误差上限,或学习达到学习次数限制,则算法结束;否则更新学习次数t=t+1,返回步骤(2)。 其中步骤(2)至(4)为信号前向传播计算;步骤(5)至(8)为误差后向传播计算。上述BP算法采用的是逐次修正法。,应用BP网络算法进行学习,例如图7.2是具有两个输入,两个隐层单元和一个输出的多层神经网络,如学习样本为P=4,它的权的符号如图上所示,按BP网络算法进行计算。 (1)先取任意初始值:W11(0),W12(0),W21(0),W22(0),1(0), 2(0), (0)和Wa(0),Wb(0),y,wa,wb,h1,h2,w21,w22,w11,w12,x1,x2,1,1,如图:,7.2.3径向基函数神经网络,径向基函数(Radial Basis Function,简称RBF)神经网络是一种三层前向神经网络。 RBF网络的基本思想 用RBF作为隐单元的“基”构成隐含层空间,将输入矢量直接(即不需要通过权连接)映射到隐空间 当RBF的中心点确定后,映射关系也就确定 隐含层空间到输出空间的映射是线性的RBF克服了传统前向神经网络的许多缺点,它训练速度快,在训练时不会发生振荡,也不会陷入局部极小。RBF具有很好的通用性。可以证明,只要有足够多的隐层神经元,RBF就能以任意精度近似任何连续函数。,激活函数采用径向基函数 以输入与权值之间的欧氏距离作为自变量,径向基神经网络结构,RBF网络与BP网络比较: RBF网络的输出是隐单元输出的线性加权和,学习速度加快 BP网络使用sigmoid()函数作为激活函数,这样使得神经元有很大的输入可见区域 径向基神经网络使用径向基函数(一般使用高斯函数)作为激活函数,神经元输入空间区域很小,因此需要更多的径向基神经元,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号