您好,欢迎访问三七文档
人工神经网络(ArtificialNeuralNetwroks-----ANN)1.1人工神经网络发展概况人工神经网络(ArtificialNeuralNetworks,ANN):简称神经网络。模拟人脑神经细胞的工作特点:*单元间的广泛连接;*并行分布式的信息存贮与处理;*自适应的学习能力等。优点:(1)较强的容错性;(2)很强的自适应学习能力;(3)可将识别和若干预处理融为一体进行;(4)并行工作方式;(5)对信息采用分布式记忆,具有鲁棒性。四个发展阶段:第一阶段:启蒙期,始于1943年。形式神经元的数学模型提出。第二阶段:低潮期,始于1969年。《感知器》(Perceptions)一书出版,指出局限性。第三阶段:复兴期,从1982年到1986年。Hopfield的两篇论文提出新的神经网络模型;《并行分布处理》出版,提出反向传播算法。第四个阶段:1987年至今,趋于平稳。回顾性综述文章“神经网络与人工智能”。人工神经网络的基本特点(1)可处理非线性(2)并行结构.对神经网络中的每一个神经元来说;其运算都是同样的.这样的结构最便于计算机并行处理.(3)具有学习和记忆能力.一个神经网络可以通过训练学习判别事物;学习某一种规律或规则.神经网络可以用于联想记忆.(4)对数据的可容性大.在神经网络中可以同时使用量化数据和质量数据(如好、中、差、及格、不及格等).(5)神经网络可以用大规模集成电路来实现.如美国用256个神经元组成的神经网络组成硬件用于识别手写体的邮政编码.1.2神经网络基本概念1.2.1生物神经元1.生物神经元的结构来自其它神经元轴突的神经末梢细胞体轴突细胞核树突神经末梢突触细胞体、树突、轴突和突触。2.生物神经元的工作机制兴奋和抑制两种状态。抑制状态的神经元由树突和细胞体接收传来的兴奋电位产生输出脉冲输入兴奋总量超过阈值神经元被激发进入兴奋状态由突触传递给其它神经元1.2.2人工神经元及神经网络人工神经元:生物神经元的简化模拟。人工神经元间的互连:信息传递路径轴突-突触-树突的简化;连接的权值:两个互连的神经元之间相互作用的强弱。x1x2xnw1w2wn┇∑fy┇图8.2人工神经元模型接收的信息(其它神经元的输出)互连强度/权值作比较的阈值n维输入向量X输出输出函数神经元的动作:niiixwnet1)(netfy),(Rwxii输出函数f:也称作用函数,非线性。01ynetθ(a)01ynet(b)ynet(c)01阈值型S型伪线性型f为阈值型函数时:niiixwy1sgn1nw设,点积形式:)sgn(TXWyT11],,,[nnWT1]1,,,[nxxX式中,1.2.3神经网络的学习学习:同一个训练集的样本输入输出模式反复作用于网络,网络按照一定的训练规则自动调节神经元之间的连接强度或拓扑结构,使实际输出满足期望的要求或者趋于稳定。实质:1.Hebb学习规则典型的权值修正方法:Hebb学习规则、δ误差修正学习如果神经网络中某一神经元与另一直接与其相连的神经元同时处于兴奋状态,那么这两个神经元之间的连接强度应该加强。神经网络的最重要特征之一。┇x2xiiyix1jwijw2j┇w1j┇┇wnjyj┇xn)]()([)()1(tytytwtwijijijwij(t+1):修正一次后的某一权值;η:学习因子,表示学习速率的比例常数;yj(t),yi(t):分别表示t时刻第j个和第i个神经元的状态(输出)。由有:)()(txtyii)]()([)()1(txtytwtwijijij神经元间的连接2.δ学习规则(3)更新权值,阈值可视为输入恒为(-1)的一个权值;(1)选择一组初始权值wij(1);(2)计算某一输入模式对应的实际输出与期望输出的误差;)()]([)()1(txtydtwtwijjijij式中,(4)返回(2),直到对所有训练模式网络输出均能满足要求。dj,yj(t):第j个神经元的期望输出与实际输出;xi(t):第j个神经元的第i个输入。神经网络的学习体现在:权值变化;网络结构变化。η:学习因子;1.3前馈神经网络1.3.1感知器感知器(Perceptron):F.Rosenblatt于1957年提出。x1x2xn…yMy1………感知器结构示意图*双层(输入层、输出层);*两层单元之间为全互连;*连接权值可调。结构特点:*输出层神经元个数等于类别数(两类问题时输出层为一个神经元)。设输入模式向量,,共M类。T21],,,[nxxxX输出层第j个神经元对应第j个模式类,θj:第j个神经元的阈值;wij:输入模式第i个分量与输出层第j个神经元间的连接权。令。取jnjw)1(T)1(21],,,[jnjjjWT21]1,,,,[nxxxX)()(T11XWjniiijjfxwfy有)(1jniiijjxwfy输出为┇x2xiyix1jwijw2j┇w1j┇┇wnjyj输出单元对所有输入数值加权求和,经阈值型输出函数产生一组输出模式。M类问题判决规则(神经元的输出函数)为)(TXWjjfyjjXX若,1若,1Mj1*正确判决的关键:输出层每个神经元必须有一组合适的权值。*感知器采用监督学习算法得到权值;*权值更新方法:δ学习规则。算法描述第一步:设置初始权值wij(1),w(n+1)j(1)为第j个神经元的阈值。第二步:输入新的模式向量。第三步:计算神经元的实际输出。设第k次输入的模式向量为Xk,与第j个神经元相连的权向量为T)1(21],,,[)(jnjjjW第j个神经元的实际输出为])([)(TkjjkfkyXWMj1第四步:修正权值。kjjjjkydkkXWW)]([)()1(dj:第j个神经元的期望输出。jkjkjdXX,1,1Mj1第五步:转到第二步。当全部学习样本都能正确分类时,学习过程结束。经验证明,当η随k的增加而减小时,算法一定收敛。1.3.2BP网络BP网络主要用于1)函数逼近:用输入向量和相应的输出向量训练一个网络逼近一个函数。2)模式识别:用一个特定的输出向量将它与输入向量联系起来。3)分类:把输入向量以所定义的合适方式进行分类。4)数据压缩:减少输出向量维数以便于传输或存储。目前,在人工神经网络的实际应用中,绝大部分的神经网络模型是采用BP网络和它的变化形式,它也是前馈网络的核心部分,并体现了人工神经网络最精华的部分。BP网络:采用BP算法(Back-PropagationTrainingAlgorithm)的多层感知器。误差反向传播算法认识最清楚、应用最广泛。性能优势:识别、分类1.多层感知器针对感知器学习算法的局限性:模式类必须线性可分。…yMy1…x1x2xn…………输入层第一隐层第二隐层输出层中间层为一层或多层处理单元;前馈网络;结构:只允许一层连接权可调。2.BP算法两个阶段正向传播阶段:逐层状态更新反向传播阶段:误差BP算法的学习过程设:某层任一神经元j的输入为netj,输出为yj;相邻低一层中任一神经元i的输出为yi。…yMy1…x1x2xn…………jiiiijjywnet)(jjnetfywij:神经元i与j之间的连接权;f(∙):神经元的输出函数。)(jjnetfy0)(11hjjneteS型输出函数:θj:神经元阈值;h0:修改输出函数形状的参数。0.510yjnetjθj设:输出层中第k个神经元的实际输出为yk,输入为netk;与输出层相邻的隐层中任一神经元j的输出为yj。jjjkkywnet)(kknetfy对输入模式Xp,若输出层中第k个神经元的期望输出为dpk,实际输出为ypk。输出层的输出方差:kpkpkpydE2)(21若输入N个模式,网络的系统均方差为:pkpkpkydNE2)(21ppEN1当输入Xp时,wjk的修正增量:jkpjkpwEwΔjkkkpjkpwnetnetEwE其中,jjjkkywnet由式得到:pjpjjjkjkjkkyy令,可得kppknetE输出单元的误差:输出单元的修正增量:)1()(pkpkpkpkpkyyydpjpkjkpy对于与输出层相邻的隐层中的神经元j和该隐层前低一层中的神经元i:kjkpkpjpjpjwyy)1(pjpjijpywΔ输出层中神经元输出的误差反向传播到前面各层,对各层之间的权值进行修正。BP算法建模步骤:第一步:对权值和神经元阈值初始化:(0,1)上分布的随机数。第二步:输入样本,指定输出层各神经元的希望输出值。jjjdXX,1,1Mj,,2,1第三步:依次计算每层神经元的实际输出,直到输出层。第四步:从输出层开始修正每个权值,直到第一隐层。ijijijytwtw)()1(10若j是输出层神经元,则:))(1(jjjjjydyy若j是隐层神经元,则:kjkkjjjwyy)1(第五步:转到第二步,循环至权值稳定为止。改进的权值修正:)]1()([)()1(twtwytwtwijijijijij——收敛快、权值平滑变化α:平滑因子,0α1。BP算法存在问题:*存在局部极小值问题;*算法收敛速度慢;*隐层单元数目的选取无一般指导原则;*新加入的学习样本影响已学完样本的学习结果。开始初始化:给出训练样本集,对阈值及各连接权值赋初值输入一个训练样本p前向传播,计算各层节点的输出:)(jjiiijjnetfOownet计算样本p的误差epkkkpyye2)ˆ(21e满足要求?计算输出层各节点的δk,并调节相应的连接权值jkjkjkjkjkkkkkkkkwtwtwOwnetfyyYYnetf)()1()(')ˆ()1()('输入一个下一个训练样本p反向传播,计算隐层各节点的δk,并调节相应的连接权值jkjkjkjkjkmkmmkkkkkwtwtwOwwnetfOOnetf)()1()(')1()('N所有e满足要求?YNY结束开始连接权及阀值初始化学习模式对提供给网络计算中间层各单元的输入、输出计算输出层各单元的输入、输出计算输出层各单元的一般化误差计算中间层各单元的一般化误差调整中间层至输出层之间的连接权及输出层各单元的输出阀值调整输入层至中间层之间的连接权及中间层各单元的输出阀值更新学习输入模式全部模式训练完?更新学习次数误差e或学习次数N学习结束是否是否3.应用之例:蚊子的分类•已知的两类蚊子的数据如表1:翼长触角长类别1.781.14Apf1.961.18Apf1.861.20Apf1.721.24Af2.001.26Apf2.001.28Apf1.961.30Apf1.741.36Af目标值0.90.90.90.10.90.90.90.1翼长触角长类别1.641.38Af1.821.38Af1.901.38Af1.701.40Af1.821.48Af1.821.54Af2.081.56Af目标t0.10.10.10.10.10.10.1输入数据有15个,即,p=1,…,15;j=1,2;对应15个输出。建模:(输入层,中间层,输出层,每层的元素应取多少个?)建立神经网络规定目标为:当t(1)=0.9时表示属于Apf类,t(2)=0.1表示属于Af类。设两个权重系数矩阵为:)3,2()2,2()1,2()3,1()2,1()1,1(1111111)3,1()2,1()1,1(2222)()3,(jjwii为阈值其中分析如下:为第一层的输出,同时作为第二层的输入。)2()2()2,2()1
本文标题:神经网络讲解与实例
链接地址:https://www.777doc.com/doc-1650819 .html