您好,欢迎访问三七文档
人工神经网络简介一、人工神经网络的发展⑴Mcculloch(生理学家)和Pitts(数理逻辑学家)1943年首次提出神经网络数学模型;M-P数学模型,神经元的数学模型。⑵VonNeumann冯·诺依曼模型⑶50年代,F·Rosenblatt单层网络,可学习——感知机⑷1962年Widraw提出自适应线性元件网络⑸Hopfield1982和1984年发表论文,将能量函数引入神经网络计算——HNN模型⑹1986年Rumelhart提出PDP理论,解决中间层神经元权的调整问题,并行分布式,——多层网络的反向传播算法。BP——ErrorBackPropagation误差反向传播算法(前向网络的一种)二、神经元的特点⑴神经元是一个多输入、单输出的元件⑵神经元是一个具有非线性的元件⑶神经元具有可塑性,传递强度可变⑷神经元的输出是每个输入综合的结果三、人工神经网络特点⑴分步存储与容错性⑵并行处理⑶信息处理与存储合二为一⑷层次性与系统性四、BP人工神经网络1、BP网络的学习过程⑴模式的顺向传播过程⑵误差的逆向传播过程⑶记忆训练过程:⑴、⑵的交替过程⑷学习的收敛过程:E-min2、输入输出变换函数:f(x)①阶跃函数:f(x)=0x00x1(不可导)输入层隐含层输出层n个Wijp个Vjtq个a1aian┋┋┋┋┋ij┋┋ty1ytyq②S型函数f(x)=xe11(可导)③比例函数f(x)=kx④符号函数f(x)=0x10x1⑤饱和函数f(x)=kkxkx1x11k1-k1x1⑥双曲函数f(x)=xeex113、M-P神经元模型输入向量:X=(X1,X2,…,Xn)权值向量:W=(w1,w2,…,wn)阈值:θ1Sj-1/k1/k1-1θf(.)x1x2┋┋xn┋yw1wn输出:y=f(niiixw1)若f(x)为阶跃函数则f(x)=0x00x15、BP网络学习算法⑴变量假定:输入:Ak=(a1k,a2k,…,ank)希望输出:Yk=(y1k,y2k,…,yqk)中间层神经元输入:Sk=(s1k,s2k,…,spk)中间层神经元输出:Bk=(b1k,b2k,…,bpk)输出层神经元输入:Lk=(l1k,l2k,…,lqk)输出层神经元实际输出:Ck=(c1k,c2k,…,cnk)中间层神经元阈值:θj(j=1,2,…,p)输出层神经元阈值:γt(t=1,2,…,q)S型函数:f(x)=1/(1+e-x),f'(x)=f(x)[1-f(x)](中间层两端可取不同函数,但此处相同。)输入层与中间层连接权值:wij(i=1,2,…,n,j=1,2,…,p)中间层与输出层连接权值:vjt(j=1,2,…,p,t=1,2,…,q)⑵模式顺传播过程:中间层神经元输入:Sj=jiijniaw1(j=1,2,…,p)中间层神经元输出:Bj=f1(sj)(j=1,2,…,p)输出层神经元输入:Lt=tjjtpjbv1(t=1,2,…,q)输出层神经元实际输出:Ct=f2(Lt)(t=1,2,…,q)误差函数:Ek=qtktktcy12)(21-min权值调整:kjktktbLfcyvLLccEvccEvEvtjtttttkjtttkjtkjt)()('2(按负梯度方向变化或梯度下降原则,应使jtkjtvEv与的负值成正比例变化,优化算法中得到。)ijtijkijkijkijkijkijkijkijkijasfvLfcywssbbLLccEwbbLLccEwLLccEwccEwccEwccEwccEwEwkjqtktktktqtkjkjkjkjktktktktqtkjkjktktktktqtqtktktktktktktkqkqkkkk)(])()[(][][][]['11'211112211(wij对所有输出都有影响,与Δvjt不同。)令dtk=(ytk-ctk)f2'(Ltk)=δtkf2’(输出层广义误差,=tkLE)则Δvjt=dtkbjk—Hebb规则(—学习率,dt—广义误差,bj—输入)Δwij=kikjqtktasfvdjt)(]['11令ejk=)(]['11kjqtktsfvdjt(广义误差)则Δwij=βejkaik(Hebb学习规则,β学习率)后层误差加权后传向前层误差dtkjtvejk阈值修正值:Δγt=dtkΔθj=βejk6、BP网络学习算法流程图⑴初始化tjjtijvw赋予[-1,+1]间随机值⑵随机选取一模式对(Ak,yk)提供给网络⑶计算中间层单元的输入与输出Sj=jiijniaw1(i=1,2,…,n)Bj=f1(sj)(j=1,2,…,p)⑷计算输出层单元的输入及输出Lt=tpjjjtbv1(t=1,2,…,q)Ct=f2(Lt)⑸计算输出层一般误差dtk=(ytk-ct)f2'(Lt)(t=1,2,…,q)⑹计算中间层各单元一般化误差ejk=)(]['11jjttsfvdqt⑺权值修正vjt(N+1)=vjt(N)+αdtkbj(j=1,2,…,p)γt(N+1)=γt(N)+αdtk(t=1,2,…,q)wij(N+1)=wij(N)+βejkaikθj(N+1)=θj(N)+βejk⑻随机选取一个学习模式提供给网络,返回⑶,直到m个模式训练完毕⑼重新从m个模式对中随机选取一个模式对重返⑶,直到全局误差mkkEE1开始连接权及阀值初始化学习模式对提供给网络计算中间层各单元的输入、输出计算输出层各单元的输入、输出计算输出层各单元的一般化误差计算中间层各单元的一般化误差调整中间层至输出层之间的连接权及输出层各单元的输出阀值调整输入层至中间层的连接权及中间层各单元的输出阀值更新学习输入模式全部模式训练完?更新学习次数误差〈ε或学习次数〉N?结束学习
本文标题:人工神经网络简介.
链接地址:https://www.777doc.com/doc-5752457 .html