暑期数学建模培训-神经网络-12_第1页
暑期数学建模培训-神经网络-12_第2页
暑期数学建模培训-神经网络-12_第3页
暑期数学建模培训-神经网络-12_第4页
暑期数学建模培训-神经网络-12_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

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

文档简介

人工神经网络

ArtificialNeuralNetworks平顶山学院数学建模暑期培训2015.7.202023/2/412023/2/42人类对人工智能的研究可以分成两种方式对应着两种不同的技术:传统的人工智能技术——心理的角度模拟基于人工神经网络的技术——生理的角度模拟2023/2/43学习驾驶汽车的人工神经网络摘自《机器学习》,T.M.Mitchell2023/2/44人脸识别2023/2/45手写数字识别2023/2/46人工神经网络的概念1、定义

(1)Hecht—Nielsen(1988年)人工神经网络是一个并行、分布处理结构,它由处理单元及其称为联接的无向讯号通道互连而成。这些处理单元(PE—ProcessingElement)具有局部内存,并可以完成局部操作。每个处理单元有一个单一的输出联接,这个输出可以根据需要被分枝成希望个数的许多并行联接,且这些并行联接都输出相同的信号,即相应处理单元的信号,信号的大小不因分支的多少而变化。2023/2/47人工神经网络的概念别名人工神经系统(ANS)神经网络(NN)自适应系统(AdaptiveSystems)、自适应网(AdaptiveNetworks)联接模型(Connectionism)神经计算机(Neurocomputer)2023/2/48人工神经网络的研究始于本世纪40年代。1943年,心理学家McCulloch和数学家Pitts合作,融合了生物物理学和数学,提出了第一个神经元计算模型—MP模型。这种单个神经元模型功能较弱,但连接而成的网络记忆能力巨大。这种巨大的记忆能力存储在网络中足够多的神经元之间丰富的连接强度上。

MP模型虽然简单,但它开创了神经网络模型的理论研究,为各种神经元模型及网络模型的研究打下了基础。历史总结2023/2/491949年心理学家Hebb提出神经元之间突触联系强度可变的假设。他认为学习过程是在突触上发生的,突触的联系强度随其前后神经元的活动而变化。根据这一假说提出了改变神经元连接强度的Hebb规则。它对以后人工神经网络的结构及算法都有很大影响。直到现在,Hebb的学习算法仍在不少人工神经网络中应用。历史总结2023/2/41050年代末,Rosenblatt提出感知器模型,第一次把神经网络的研究付诸工程实践。这是一种学习和自组织的心理学模型,它基本上符合神经生理学的知识,模型的学习环境是有噪声的,网络构造中存在随机连接,这符合动物学习的自然环境。这是第一个真正的人工神经网络,他给出了两层感知器的收敛定理。后来的一大类神经网络模型都是感知器模型的变形。

历史总结2023/2/41160年代末,美国著名人工智能学者Minsky和Papart对Rosenblatt的工作进行了深入的研究,写了很有影响的《感知器》一书,指出感知器的处理能力有限,单层感知器只能作线性划分,对于非线性或其他分类会遇到很大的困难。这时应采用含有隐单元的多层神经网络,但引入隐单元后找到一个有效的学习算法非常困难,Minsky断言这种感知器无科学研究价值可言,包括多层的也没有什么意义。历史总结2023/2/412这个结论对当时的神经网络研究无疑是一个沉重的打击,客观上对神经网络的研究起了一定的消极作用。同时当时的微电子技术也无法为神经网络的研究提供有效的技术保障。故在其后的十几年内,从事神经网络研究的人数及经费支持大大下降,神经网络研究处于低潮。历史总结2023/2/413然而在此期间,仍有为数不多的学者致力于神经网络的研究,1969年Grossberg等提出了自适应共振理论模型。1972年Kohenen提出自组织映射的理论模型,并称神经网络为联想存贮器。所有这些理论为神经网络的进一步发展奠定了理论基础。历史总结2023/2/4141982年,美国加州工程学院物理学家Hopfield提出了一个用于联想记忆及优化计算的新途径—Hopfield模型,并于1984年进行修改,提出了利用模拟电路的基础元件构成了人工神经网络的硬件原理模型,为实现硬件奠定了基础。1985年Hopfield和Tank提出用神经网络解决优化问题。历史总结2023/2/415这一时期还有一个以Rumelhart和McClelland为首的并行分布处理(PDP)的研究小组,他们提出了多层网络学习的误差反向传播学习算法(BP算法),解决了多层网络的学习问题,从实践上证实了人工神经网络具有很强的学习能力,并不象Minsky等人预料的那样弱,相反它可以完成许多学习任务,解决许多实际问题,也因此推动了前馈式神经网络的研究。BP算法目前已成为迄今为止应用最普遍的神经网络学习算法。历史总结2023/2/416或称神经细胞,是生物神经系统的最基本单元。从组成结构看,各种神经元具有共性,它由细胞体(Soma)、轴突(Axon)和树突(Dendrite)三个主要部分组成。生物神经网

生物神经元(Neuron)时空整合功能兴奋与抑制状态脉冲与电位转换突触延时与不应期2023/2/417生物神经网1、构成胞体(Soma)枝蔓(Dendrite)胞体(Soma)

轴突(Axon)突触(Synapse)2、工作过程2023/2/418生物神经网3、六个基本特征:1)神经元及其联接;2)神经元之间的联接强度决定信号传递的强弱;3)神经元之间的联接强度是可以随训练改变的;4)信号可以是起刺激作用的,也可以是起抑制作用的;5)一个神经元接受的信号的累积效果决定该神经元的状态;6)每个神经元可以有一个“阈值”。2023/2/419人工神经元的基本构成

人工神经元模拟生物神经元的一阶特性。输入:X=(x1,x2,…,xn)联接权:W=(w1,w2,…,wn)T网络输入:

net=∑xiwi向量形式:

net=XWxn

wn∑x1w1x2w2net=XW…2023/2/4202.2.2激活函数(ActivationFunction)

激活函数——执行对该神经元所获得的网络输入的变换,也可以称为激励函数、活化函数:o=f(net)

1、线性函数(LinerFunction)

f(net)=k*net+c

netooc2023/2/4212、非线性斜面函数(RampFunction)

γ ifnet≥θf(net)=k*net if|net|<θ -γ ifnet≤-θ

γ>0为一常数,被称为饱和值,为该神经元的最大输出。

2023/2/4223、阈值函数(ThresholdFunction)阶跃函数

β ifnet>θf(net)= -γ ifnet≤θβ、γ、θ均为非负实数,θ为阈值二值形式:

1 ifnet>θf(net)= 0 ifnet≤θ双极形式:

1 ifnet>θf(net)= -1 ifnet≤θ

2023/2/4233、阈值函数(ThresholdFunction)阶跃函数β

-γθonet02023/2/4244、S形函数

压缩函数(SquashingFunction)和逻辑斯特函数(LogisticFunction)。f(net)=a+b/(1+exp(-d*net))a,b,d为常数。它的饱和值为a和a+b。最简单形式为:f(net)=1/(1+exp(-d*net))

函数的饱和值为0和1。S形函数有较好的增益控制

2023/2/4254、S形函数

a+b

o(0,c)netac=a+b/22023/2/426M-P模型

x2w2

∑fo=f(net)xn

wn…net=XWx1w1McCulloch—Pitts(M—P)模型,也称为处理单元(PE)

2023/2/427层次划分

信号只被允许从较低层流向较高层。层号确定层的高低:层号较小者,层次较低,层号较大者,层次较高。输入层:被记作第0层。该层负责接收来自网络外部的信息输出层隐藏层输入层o1o2om…x1x2xn………………2023/2/428第j层:第j-1层的直接后继层(j>0),它直接接受第j-1层的输出。输出层:它是网络的最后一层,具有该网络的最大层号,负责输出网络的计算结果。隐藏层:除输入层和输出层以外的其它各层叫隐藏层。隐藏层不直接接受外界的信号,也不直接向外界发送信号输出层隐藏层输入层o1o2om…x1x2xn………………2023/2/429约定

:输出层的层号为该网络的层数:n层网络,或n级网络。第j-1层到第j层的联接矩阵为第j层联接矩阵,输出层对应的矩阵叫输出层联接矩阵。今后,在需要的时候,一般我们用W(j)表示第j层矩阵。输出层隐藏层输入层o1o2om…x1x2xn………………W(1)W(2)W(3)W(h)2023/2/430多级网——h层网络输出层隐藏层输入层o1o2om…x1x2xn………………W(1)W(2)W(3)W(h)2023/2/431多级网非线性激活函数

F(X)=kX+CF3(F2(F1(XW(1))W(2))W(3))2023/2/432BP网络

主要内容:BP网络的构成隐藏层权的调整分析Delta规则理论推导算法的收敛速度及其改进讨论BP网络中的几个重要问题

重点:BP算法难点:Delta规则的理论推导

2023/2/433BP网络1概述

2基本BP算法

3算法的改进

4算法的实现

5算法的理论基础

6几个问题的讨论

2023/2/434概述

1、BP算法的出现非循环多级网络的训练算法UCSDPDP小组的Rumelhart、Hinton和Williams1986年独立地给出了BP算法清楚而简单的描述1982年,Paker就完成了相似的工作1974年,Werbos已提出了该方法2、弱点:训练速度非常慢、局部极小点的逃离问题、算法不一定收敛。3、优点:广泛的适应性和有效性。2023/2/435基本BP算法

网络的构成

神经元的网络输入:

neti=x1w1i+x2w2i+…+xnwni神经元的输出:2023/2/436输出函数分析

0.5f′(net)0.25o01

1(0,0.5)

net(0,0)o应该将net的值尽量控制在收敛比较快的范围内可以用其它的函数作为激活函数,只要该函数是处处可导的2023/2/437网络的拓扑结构x1o1输出层隐藏层输入层x2o2omxn…………………W(1)W(2)W(3)W(L)2023/2/438网络的拓扑结构

BP网的结构输入向量、输出向量的维数、网络隐藏层的层数和各个隐藏层神经元的个数的决定实验:增加隐藏层的层数和隐藏层神经元个数不一定总能够提高网络精度和表达能力。BP网一般都选用二级网络。2023/2/439网络的拓扑结构x1o1输出层隐藏层输入层x2o2omxn…………WV2023/2/440训练过程概述

样本:(输入向量,理想输出向量)权初始化:“小随机数”与饱和状态;“不同”保证网络可以学。1、向前传播阶段:(1)从样本集中取一个样本(Xp,Yp),将Xp输入网络;(2)计算相应的实际输出Op:

Op=Fl(…(F2(F1(XpW(1))W(2))…)W(L))2023/2/441训练过程概述

2、向后传播阶段——误差传播阶段:(1)计算实际输出Op与相应的理想输出Yp的差;(2)按极小化误差的方式调整权矩阵。(3)网络关于第p个样本的误差测度:(4)网络关于整个样本集的误差测度:2023/2/442误差传播分析

1、输出层权的调整wpq=wpq+∆wpq∆wpq=αδqop

=αfn′(netq)(yq-oq)op =αoq(1-oq)(yq-oq)op

wpqANpANq第L-1层第L层∆wpq2023/2/443隐藏层权的调整

ANpANqANhvhp δpk-1δ1kwp1wpqδqkwpmδmk第k-2层第k层第k-1层……2023/2/444隐藏层权的调整δpk-1的值和δ1k,δ2k,…,δmk

有关不妨认为δpk-1通过权wp1对δ1k做出贡献,通过权wp2对δ2k做出贡献,……通过权wpm对δmk做出贡献。δpk-1=fk-1′(netp)(wp1δ1k+wp2δ2k+…+wpmδmk)2023/2/445隐藏层权的调整vhp=vhp+∆vhp

∆vhp=αδpk-1ohk-2 =αfk-1′(netp)(wp1δ1k+wp2δ2k+…+wpmδmk)ohk-2 =αopk-1(1-opk-1)(wp1δ1k+wp2δ2k+…+wpmδmk)ohk-2ANpANqANhvhp δpk-1δ1kwp1wpmδqkwpqδmk第k-2层第k层第k-1层……2023/2/446内容回顾基本BP算法neti=x1w1i+x2w2i+…+xnwni

2023/2/447内容回顾x1o1输出层隐藏层输入层x2o2omxn…………WV2023/2/448内容回顾样本权初始化向前传播阶段Op=Fn(…(F2(F1(XpW(1))W(2))…)W(n))误差测度2023/2/449内容回顾向后传播阶段——误差传播阶段输出层权的调整∆wpq=αδqop=αfn′(netq)(yq-oq)op

=αoq(1-oq)(yq-oq)op隐藏层权的调整ANpANqANhvhp δpk-1δ1kwp1wpqδqkwpmδmk……∆vhp=αopk-1(1-opk-1)(wp1δ1k+wp2δ2k+…+wpmδmk)ohk-22023/2/450基本的BP算法

样本集:S={(X1,Y1),(X2,Y2),…,(Xs,Ys)}

基本思想:逐一地根据样本集中的样本(Xk,Yk)计算出实际输出Ok和误差测度E1,对W(1)

,W(2)

,…,W(L)各做一次调整,重复这个循环,直到∑Ep<ε。用输出层的误差调整输出层权矩阵,并用此误差估计输出层的直接前导层的误差,再用输出层前导层误差估计更前一层的误差。如此获得所有其它各层的误差估计,并用这些估计实现对权矩阵的修改。形成将输出端表现出的误差沿着与输入信号相反的方向逐级向输入端传递的过程

2023/2/451基本BP算法

1fork=1toLdo 1.1初始化W(k);2初始化精度控制参数ε;3E=ε+1;4whileE>εdo

4.1E=0;

2023/2/452基本BP算法4.2对S中的每一个样本(Xp,Yp):

4.2.1计算出Xp对应的实际输出Op;

4.2.2计算出Ep;

4.2.3E=E+Ep;

4.2.4根据相应式子调整W(L);

4.2.5k=L-1;

4.2.6whilek≠0do 4.2.6.1根据相应式子调整W(k);

4.2.6.2k=k-1

4.3E=E/2.0

2023/2/453算法的主要实现步骤

用不同的小伪随机数初始化W,V;初始化精度控制参数ε;学习率α;

循环控制参数E=ε+1;循环最大次数M;循环次数控制参数N=0;

whileE>ε&N<Mdo

4.1N=N+1;E=0;

4.2对每一个样本(X,Y),执行如下操作

2023/2/4544.2对每一个样本(X,Y),执行的操作

4.2.1计算:O1=F1(XV);O2=F2(O1W);4.2.2计算输出层的权修改量

fori=1tom 4.2.2.1∆o[i]=O2[i]*(1-O2[i])*(Y[i]-O2[i]);4.2.3计算输出误差:fori=1tom4.2.3.1E=E+(Y[i]-O2[i])2;2023/2/4554.2对每一个样本(X,Y),执行的操作4.2.4计算隐藏层的权修改量:fori=1toH 4.2.4.1Z=0;

4.2.4.2forj=1tomdoZ=Z+W[i,j]*∆o[j];

4.2.4.3Δh[i]=Z*O1[i](1-O1[i])

;4.2.5修改输出层权矩阵:fork=1toH&i=1tom 4.2.5.1W[k,i]=W[k,i]+α*O1[k]*∆o[i];4.2.5修改隐藏层权矩阵:fork=1ton&i=1toH 4.2.5.1V[k,i]=V[k,i]+α*X[k]*∆h[i];2023/2/456建议

隐藏层的神经元的个数H作为一个输入参数同时将ε、循环最大次数M等,作为算法的输入参数在调试阶段,最外层循环内,加一层控制,以探测网络是否陷入了局部极小点

2023/2/4

温馨提示

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

评论

0/150

提交评论