神经网络神经网络的概念泛指生物神经网络与人工神经网络生物神经网络由中枢神经系统(脑和脊髓)及周围神经系统(感觉、运动、交感等)所构成的错综复杂的神经网络,最重要的是脑神经系统。人工神经网络(ANN)由大量简单的处理单元广泛地互相连接而形成地复杂网络系统,以简化,抽象,和模拟人脑神经网络。概述概述神经网络的发展简史初创(1943—1969)1943年,McCulloch和Pitts提出了M-P模型1949年,Hebb提出Hebb学习规则1957年,Rosenblatt提出感知器(perceptrons)1969年,Minsky和Papert发表“Perceptrons”过渡期(1970—1986)1980年,Kohonen提出自组织映射理论1982年,Hopfield提出离散的Hopfield网络模型1984年,又提出连续的Hopfield网络模型,并用电子线路实现了该网路的仿真。1986年,Rumelhart等提出BP算法发展期(1987--)1993年创刊的“IEEETransactiononNeuralNetwork”生物神经元构成神经系统的基本单元,简称神经元。包括细胞体、树突、轴突。神经元电镜图片轴突树突突触细胞体神经末梢组成细胞体由细胞核,细胞质,和细胞膜组成。膜内外有电位差,膜外为正,膜内为负。它是神经元新陈代谢的中心,用于接收并处理从其它神经元传递的信息。轴突由细胞体向外伸出的一条最长分支,长度可达1m。它通过尾部的神经末梢向其它神经元输出神经冲动,相当于神经元的输出电缆。树突除轴突外的其它分支。数目多,长度短。它用于接受从其它神经元传来的神经冲动,相当于神经元的输入端。突触一个神经元的轴突末梢和另外一个神经元的树突相接触的地方,相当于神经元之间的接口部分。大多数神经元有103—104个突触。连接辐射一个神经元的轴突末梢与许多神经元的树突相连接。聚合许多神经元的轴突末梢与一个神经元的树突相连接。特性信息以预知的确定方向传递一个神经元的树突、细胞体-轴突-突触-另一个神经元树突时空整合功能对不同时间通过同一突触传入的信息具有时间整合功能对同一时间通过不同突触传入的信息具有空间整合功能工作状态兴奋状态,对输入信息整合后使细胞膜电位升高,当高于动作电位的阈值时,产生神经冲动,并由轴突输出。抑制状态,对输入信息整合后使细胞膜电位降低,当低于动作电位的阈值时,无神经冲动产生。结构的可塑性神经元之间的柔性连接。脉冲与电位转换功能轴突与普通传输线路不同,对于小于阈值的信号在传递过程中会被滤除,而对于大于阈值的则有整形作用。即无论输入脉冲的幅度与宽度,输出波形恒定。信息传递的时延性和不应期性在两次输入之间要有一定的时间间隔,即时延;而在此期间内不响应激励,不传递信息,称为不应期。人工神经元及其互连结构人工神经网络的基本处理单元-人工神经元模拟主要考虑两个特性:时空加权,阈值作用。其中对于时空加权,模型分为两类,即考虑时间特性,不考虑时间特性。人工神经元M-P模型最早由心理学家麦克罗奇(W.McLolloch)和数理逻辑学家皮兹(W.Pitts)于1943年提出。θY输出eeii兴奋型输入抑制型输入阈值M-P模型输入输出关系表输入条件输出0i,e0i,e0i,e0y0y1yM-P模型对抑制型输入赋予了“否决权”,只有当,且时,才有y=1,其它时候y=0。一种常见的不考虑时间特性的模型θy输出x1x2…xnwns控制符号f()--特性函数/激发函数阈值连接权值w2w1niiisxwffy1)(输入多输入单输出的非线性器件一些典型的特性函数阈值型线性s型神经元的连接人工神经网络是由神经元广泛互联构成的,不同的连接方式构成了不同的网络模型•前向网络神经元分层排列(输入层、隐层和输出层)。各层之间的神经元全互联,各层内的神经元无连接。每一层只接受来自前一层的输入。输入层输出层隐层•从输出层到输入层有反馈的网络层内有互连接的网络同一层的神经元可以互相连接.互连网络任意两个神经元之间可以互相连接。互连网络一直处于动态变化之中,最后到达某种稳定状态,也可能进入周期振荡。人工神经网络的特征及分类人工神经网络的特征能较好的模拟人的形象思维具有大规模并行协同处理能力具有较强的容错能力和联想能力具有较强的学习能力大规模、自组织、自适应的非线性动力系统人工神经网络的分类根据拓扑结构无反馈网络有反馈网络根据学习方法有教师的学习网络无教师的学习网络根据网络的状态静态网络动态网络根据处理的信息连续型网络离散型网络感知器罗森勃拉特(Rosenblatt)于1957年提出,把神经网络的研究从纯理论探讨引向了工程实践。感知器是只有单层计算单元的前向神经网络,由线性阈值单元组成。1)线性阈值单元1y=0或-12)单层感知器只有输入层和输出层组成,输入层的每个处理单元均与输出层互连,层内各神经元无连接,网络无反馈。Wij:可调权值Yj:输出j=1,…,mXi:输入i=1,…,n学习算法:假设只有一个输出y(t)1.给wi(0)(i=1,2……n)及θ赋一个较小的非0随机数作为初值2.输入一个样例X=[x1,x2……xn]和期望的输出d3.计算网络的实际输出4.调整权值0η≤1:增益因子,控制调整速度5.转第二步,直到wi对一切样例稳定为止niiixtwfty1)()(3)多层感知器(MLP)在单层感知器的输入和输出层之间增加一个或多个隐层。可产生复杂的决策界面和任意的布尔函数。前向多层神经网络也即多层感知器(MLP),也叫BP网。BP(Back-Propagation)算法,是用于前向多层神经网络的反传学习算法,是目前应用最广泛且重要的训练前向神经网络的学习算法。前向多层神经网络前向多层神经网络BP网除输入,输出层外,还有一个或多个隐层。各层之间的神经元全互连,各层内的神经元无连接,网络无反馈。X1X2XnY1Y2Yn节点的特性要求是可微的,通常选S型函数。Sigmoid函数的特点:连续可微单调取值在[0,1]xexf11)(B-P算法学习的目的:对网络的连接权值进行调整,使得对任一输入都能得到所期望的输出。学习的方法:用一组训练样本对网络进行训练,其中每一个样例都包括输入及期望的输出两部分。应用:对待识别的样本进行模式识别。BP算法的具体步骤:从训练样例集中取一样例,把输入信息输入到网络中。由网络分别计算各层节点的输出。计算网络的实际输出与期望输出的误差。从输出层反向计算到第—个隐层,按一定原则向减小误差方向调整网络的各个连接权值-反向传播。对训练样例集中的每一个样例重复以上步骤,直到对整个训练样例集的误差达到要求时为止。在训练时,需要反向传播,而一旦训练结束,求解实际问题时,则只需正向传播。具体算法:1)Oi:节点i的输出;netj:节点j的输入;wij:从节点i到节点j的连接权值。2)误差函数分别表示输出层上节点k的期望输出与实际输出yy,ˆiiijjOwnet2kkk)yyˆ(21e3)连接权值的修正wjk(t+1)和wjk(t)分别表示t+1和t时刻上从节点j到节点k的连接权值,∆wjk为修正量。jkjkjkw)t(w)1t(w为了使连接权值沿着e的梯度变化方向得以改善,网络逐渐收敛,取其中,为增益因子jkjkwewjkjkjkkOwewnetek令jjjjkjkjkkjjjkkOOjkkkjkwnetnetewe)()ˆ()(y)ˆ(y)ˆ(21yyyk''2kkkkkkkkkkkkkkkkkknetfyynetfnetyyeyyeneteneteO又时是输出层上的节点,此节点分两种情况计算mkmmkkkkkmkmmkkkkkkwnetfnetfnetOwOenetOOenete)()(k''又不是输出层上的节点节点故先计算最高层(输出层)上各节点δ值,再反传到较低层上,计算各隐层节点的δ值。)](1)[()1(11)1(1)1(1)1(1)1(1)1()1()(11)(222'xfxfeeeeeeeexfexfxxxxxxxxx则设)1()()y1(y)](1)[()(''kkkkkkkkOOnetfnetfnetfnetf对于非输出层节点,对于输出层节点,开始初始化:给出训练样本集,对阈值及各连接权值赋初值输入一个训练样本p前向传播,计算各层节点的输出:)(jjiiijjnetfOownet计算样本p的误差epkkkpyye2)ˆ(21e满足要求?计算输出层各节点的δk,并调节相应的连接权值jkjkjkjkjkkkkkkkkwtwtwOwnetfyyYYnetf)()1()(')ˆ()1()('输入一个下一个训练样本p反向传播,计算隐层各节点的δk,并调节相应的连接权值jkjkjkjkjkmkmmkkkkkwtwtwOwwnetfOOnetf)()1()(')1()('N所有e满足要求?YNY结束以上学习过程是按照样本p的误差ep减小最快的方式改变连接权值,直到获得满意的连接权值的。也可以基于E来完成在权值空间的梯度搜索。pkpkpkppyyeE2)ˆ(P21P21其中P为训练样本的个数此时,按反向传播计算样本p在各层的连接权值变化量∆pwjk,但并不对各层神经元的连接权值进行修改,而是不断重复这一过程,直至完成对训练样本集中所有样本的计算,并产生这一轮训练的各层连接权值的改变量∆wjk此时才对网络中各神经元的连接权值进行调整,若正向传播后重新计算的E仍不满足要求,则开始下一轮权值修正。2020/2/246),2,1;,2,1(1)(qqqijnjniw感知器模型中神经元的变换函数采用的是符号函数,因此输出的是二值量。它主要用于模式分类。多层前馈网具有相同的结构,只是神经元的变换函数采用S型函数,因此输出量是0到1之间的连续量,它可实现从输入到输出的任意的非线性映射。由于连接权的调整采用的是反向传播(BackPropagation)的学习算法,因此该网络也称为BP网络。在多层前馈网络中,第0层为输入层,第Q层为输出层,有nQ个输出,中间层为隐层。设第q层(q=0,2,,Q)的神经元个数为nq,输入到第q层的第i个神经元的连接权系统为:2020/2/247网络的输入输出变化关系为:Qqnjnissfxwxxwsqqqiqiqiqiqiqnjqjqijqiq,2,1,,2,1,,,2,1)exp(11)()1,(1)()()()(0)()1(00)1()()(12020/2/2481、标准BP算法设给定P组输入输出样本:),2,1(,11)0(,)0(2)0(1)0(0PpdddxxxTnppppTnppppQdx利用该样本集首先对BP网络进行训练,也即对网络的连接权系数进行学习和调整,以使该网络实现给定的输入输出映射关系。经过训练的BP网络,对于不是样本集中的输入也能给出合适的输出。该性质称为泛化(generalization)功能。从函数拟和的角度,它说明BP网络具有插值功能。2020/2/249PppPpniQpipiExdEQ1112)()(21设取拟和误差的代价函数为:QniQpipipxdE12)()(21如何调整连接权系数以使代价函数E最小。优化计算的方法很多,