神经网络第讲义共13讲合集_第1页
神经网络第讲义共13讲合集_第2页
神经网络第讲义共13讲合集_第3页
神经网络第讲义共13讲合集_第4页
神经网络第讲义共13讲合集_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGE7第一章:神经网络概述神经网络讲什么内容,讲计算模型,计算原理,工作原理,用途,实现方法。1什么是神经网络1神经网络与计算机计算机:四代计算机电子管,晶体管,集成电路,大规模集成电路。智能计算机是第5代,智能计算机不容易。速度提高快,智能不见怎么样。计算机特点二进制,5部分组成模块,存储程序。结构看:核心部件是中央处理器。专门存储部件,输入输出部件。神经网络发展史充满传奇色彩,讲故事。每次讲课都讲历史,过去那些出色成绩的故事,做出出色成绩的人的故事。神经网络来自人类对自己的研究,背景性研究起始于19世纪末,20世纪初。生物学家要搞清楚人或生命智能的道理。想办法解释自然现象,物理学。现代方式的神经网络研究神经网络研究,1940年,两个科学家:WarrenMcCulloch,WalterPitts,给出人工神经网络模型。现在人们使用的就是他们抽象出的神经元模型。hebb规则,1949,生物神经元学习机制。神经元传递信息的原则,互相作用的原则。两个神经原同时兴奋,则两者的连接强度增强。1958年,rosenblatt真正造了一个神经网络,号称perceptron,感知器。1960年,BernardWidrow,TedHoff给出自适应线性神经网络,利用了widrow-hoff学习规则,应用于消除回声。真正应用,用于电话消除回声,很简单的元件。1969年,minsky与papert的书批评了感知器与自适应线性神经网络,打击了神经网络发展。从此神经网络发展陷入低谷。这个时代是计算机发展飞速,同时带有很多神秘感的时代。很多东西未能搞清楚,很有用,很吸引人的时代。大家都来研究计算机的人工智能是很正常的。Minsky的书中举了一个例子,说神经网络不是万能的。科学发展需要冷静,1972年,TeuvoKohonen与JamesAnderson发明自组织神经网络,StephenGrossberg观察到自组织神经网络的许多新性质。有很多科学家在逆境中坚持神经网络研究,取得好成绩。我有时感觉在不是很热的环境下更能做出进展来。所以没有必要追求时髦。1960-1980计算机飞速发展,神经网络研究发展平静。计算机的研究发展遇到很多困难。1980年以后,神经网络又一次飞速发展,有点戏剧性。1982年Hopfield用统计机制解释神经网络,使人们对神经网络的认识前进了一大步。1986年BP学习算法,解决了minsky与papert的问题。DavidRumelhart与JamesMcClelland给出。Hopfield神经网络能解TSP问题,实现了一个神经网络解6个点的TSP问题。很神,后来实践证明也不能求精确解。1986年以后,大量的神经网络研究文章和研究项目,发现了很多神经网络的新性质和新应用。人工神经网络一定很有前途,现在缺乏真正的应用,用起来不方便。每个国家都投入很多资金研究神经网络。成果很多,神经网络也就真正成长为一门成熟的科学了。神经网络特点未必二进制,没有明确的存储器,计算,控制分工模糊,没有控制程序,性能好,用起来不方便。不好控制,不好用。2神经网络应用领域:空间技术:飞行器控制系统,飞行器元件仿真,飞行器元件错误探测器。举个例子,飞行器在飞行中判断什么是云彩,有没有风,风力多大。将飞行器飞行的环境数据采集以后训练神经网络,由神经网络控制飞行器前进速度,方向。Automotive:交通控制自动指示系统,红绿灯控制,摄像头照相看路上的车有多少,横穿马路人有多少,由此决定红灯还是绿灯,说着容易作着难。银行:信贷申请评估器。语音:语音识别,语音压缩,声调识别。现在主要的应用。机器人,Defense,Electronics,ebtertainment,Fiancial,Insurance,Manufacturing,Medical,Securities,Transportation。很多领域都用,想用就能用。3生物基础神经纤维,传递信号,数字信号,二进制数。神经突触,数模转换。数字信号转换为模拟信号。神经信号,二进制信号。时空整合,将一个时段内的各个模拟信息相加就成了。我开始看焦李成的书,看不懂,看公式,认为相加就是时空整合。第二章:神经元模型与神经网络结构本章介绍人工神经网络的数学模型,从神经元开始。1多输入神经元模型,(1(1)以后主要用到的神经元模型(2)1943年就有MP模型,一种最常用的(3)在MP模型基础上的变种。y=f()==WTX-W=(w1,w2,…,wn)TX=(x1,x2,…,xn)T。解释:(1)神经元有两种状态,兴奋/抑制。(2)wi的含义:神经突触的作用,的含义,阈值。兴奋抑制。(3)时空整合,求和。数模转换后相加。什么是时空整合?笼统,不知道什么意思,暂且理解为求和。作用函数:hardlimitf()=,=symmetrichardlimitf()=,=linearf()=,=,线性saturatinglinear,f()=,=symmetricsaturatinglinearf()=,=log-sigmoidf()=,=hyperbolictangentsigmoidf()=,=positivelinearf()=,=2神经网络结构前馈网络(1)分层(2)(1)分层(2)层间连接,(3)信号一层一层传递反馈网络(1)输出层信号返回作为输入层输入信号。(2)连续自身作用(1)输出层信号返回作为输入层输入信号。(2)连续自身作用Recurrent神经网络单层前馈神经网络问题:(1)每层有多少个神经元,每个神经元采用什么传递函数,每个连接的权值是多少?(2)针对问题,确定神经网络,即为学习。(3)用作记忆,具有联想能力的记忆函数,象人一样,识别字母,a,b,c,d,e,f,g,…,x,y,z.还有其他种类的神经网络,等讲到时再说。3神经网络学习规则自己看,以后慢慢理解。4应用实例解采用hard-limit函数神经元上次内容:(1)神经网络发展史,(2)神经元模型,8种,根据实际需要可以变化。(1)以后主要用到的神经元模型(1)以后主要用到的神经元模型(2)1943年就有MP模型,一种最常用的(3)在MP模型基础上的变种。y=f()==WTX-W=(w1,w2,…,wn)TX=(x1,x2,…,xn)T。f的形状,有变化。神经网络从结构上看:还要考虑信号,由数字式的,有连续式的。第二章神经网络的基本特征与典型模型§2.2前馈网络模型输入层,中间层,输出层。神经元全部选用同类型,结构如下:前馈神经网络能干什么?实现映射,映射能力有多大?将一个向量变成另外一个向量。定理2.1(1)为有界非线性单调递增函数,K为Rn中的紧致子集(2)F(x)=F(x1,x2,…,xn)为K上的实值连续函数,>0则:存在整数N和实常数Ci,i,i=1,2,…,N,使说明:一个神经元对应于()函数,定理说明,只要神经元足够多,实现任意函数可以使误差足够小。(2)式表达了神经网络实现的函数。()函数要求单调递增非线性。2.2.1感知器来历:Rosenblatt于1958年提出感知器神经网络,实际是多层前馈网络,每个神经元均为硬限函数神经元。第一称得上神经网络的神经网络。1单层感知器结构实际就是MP神经元模型分层处理信息的连接,因为设计了学习算法,所以叫感知器。作用函数:。1950年实际的硬件就做出来了,1958年学习算法才提出来,方法的创新比较慢。实际学习算法很简单,只针对一个神经元,但这是神经网络学习算法的第一次。感知器干什么用?连接权值标记:用权值矩阵,W1=,这是m层的连接权值矩阵。yk=f()=f(WkX-k),wk=(wk1,…,wkn)T,X=(x1,…,xn)T。k=1,2,…,m。单层感知器实现与运算:y=x1x2y=问题:一般的怎么做,当作作业y=x1x2…xk。单层感知器实现或运算:y=x1+x2再来一个,y=问题:一般的怎样处理?定理2.3:单层感知器不能实现异或运算。y=x1x2证明:若有w1,w2,使得:f(w1x1+w2x2-)=x1x2,说明这是不存在的。则:推出矛盾:由(3)、(4)得,>0,由(1)、(2)、(3)得2w1+w2<。所以得证。分析为什么一个神经元的作用,线性分割空间,例如:将(x1,x2)看作平面上的点,若该点在A区域,则神经元输出1,在B区域则输出0。异或的几何解释为:问题:单层感知器到底能实现什么样的映射,线性可分的。给定样本,怎样确定神经网络,实现样本中的映射,学习问题。不仅要实现,样本给定的映射,没有给定的映射怎样?考察其泛化能力。多层感知器(1)用于实现布尔函数定理:任意布尔函数均可用两层感知器实现。异或怎样实现,证:任意布尔函数均可写成析取泛式:例如:y=,实现如下:相与的形式用一个神经元可实现,相或的形式也可用一个神经元实现,当然任意布尔函数均可用两层神经网络实现。但是根据真值表构造神经网络不容易。(2)用于实现区域识别鼠标进入那个图标的区域,计算机要知道?要判断鼠标是否在一个某种形状的区域中:定理:任意凸区域可以用两层感知器实现。举例证明。-3x1+x2=3-3x1+x2=3x1-3x2=3x1+x2=-1x1+x2=3神经网络:四个边界线性方程,(1)-x1-x2-3(-x1-x2+30)(2)3x1-x2-3(3x1-x2+30)(3)x1+x2-1(4)-x1+3x2-3(-x1+3x2+30)任意输入(x1,x2),若输出0,则不在阴影区域,若输出1,则在阴影区域。定理:任意凸区域均可用两层感知器识别。为什么:每个边界可用一个线性方程表示,符号:L1,L2,…,Ln表示所有边界L1:W1X-10L2:W2X-20………………Lm:WmX-20Wi=(wi1,…,win)T一个神经元一条边界就是了。定理:任意区域可由三层感知器实现辨识解释:任意区域总可划分为凸区域的并。例子:L1:x1=0,x10L2:x2=-1,x2+10L3:x1=4,-x1+40L4:x1-x2=3,x1-x2-30L5:x1+x2=1,-x1-x2+10(L1L2L5)(L2L3神经网络如下:实际上,两层也能实现凹区域辨识。但是比较麻烦。解释:凸区域:A1,A2,…,Ar,Ai可用两层神经网络实现,所以进一步A1+A2+…+Ar可用再加一层神经网络实现。2.2.2反向传播神经网络,BP网络*说明一般的学习问题(1)前馈神经网络实现映射(2)相当于数据压缩(3)相当于数据存储器,输入地址,输出数据给定向量对集合{(Xi,Yi)|i=1,…,n},要构造神经网络实现向量对,输入Xi,就输出Yi。构造神经网络就是神经网络学习。举个例子:银行贷款:什么情况下可以,什么情况下不可以分为条件x1,x2,x3,…,xk,过去有很多贷款实例。形成一个表:0X1,x2,x3,…,xk贷款101010101011211001010100。。。。。。。。。。1神经网络构造出来是学习,构造完成神经网络以后再输入一个新的贷款数据,就用神经网络帮助判断。问题是(1)怎样根据原始数据构造神经网络,学习问题,第三章再讲,(2)神经网络判断是否正确。泛化能力,现在这是值得研究的问题。***说明BP神经网络先说明结构和符号:第一层n1个神经元,第2层n2个神经元,第q层nq个神经元。表示地s层第i个神经元的连接权值,由j到i的。表示第s层第i个神经元的门限值。,i=1,2,…,n1,i=1,2,…,n1,i=1,2,…,n1,s=2,…,q,i=1,2,…,ns,s=2,…,qyi=,i=1,2,…,m=nq***事件:(1)Minsky曾经在1969年说过多层前馈神经网络没有学习算法,(2)1986年Rumelhart等人就设计了第一个多层前馈神经网络的学习算法。是针对BP网络。先不讲BP算法,以后讲,现在先将应用。两个例子,1函数逼近,2声音识别函数f(x):(1)采集样本点数据,可以将x数值化为二进制数。(2)形成样本,{(Xi,Yi)|i=1,…,N}(3)根据样本构造神经网络,输入Xi则输出Yi**声音识别:识别1,2,3,4,5,6,7样本形成:x1,x2,…,xnY1,y2,y310101001010012101110000103……….不一定只有7个样本,采用不同人,10个人,每人7个样本,就是70个样本。神经元怎样输出代表1,怎样输出代表0,具体情况具体分析。2.3.1离散Hopfield神经网络1结构:说明:神经元:对称硬限函数:f()=神经网络的工作是分节拍的。一般认为,神经元的门限值为0,每个神经元都没有自反馈。是干什么用的,可以用来预置初始状态。2工作方式,两种,异步和同步。异步工作方式,每次只有一个神经元状态调整,其他神经元状态保持不变。用公式表示:到底那个神经元改变状态,可以依次改变,也可以随机选择。开始用预置初始状态,开始工作时全变为0。然后按照异步工作方式改变状态。(2)同步工作方式,每次所有神经元同时改变状态。用公式描述为:,i=1,2,…,n。写成矩阵形式:X(t+1)=f(WX(t)-)X(t)=(x1(t),…,xn(t))T=(1,…,n)TW=[wij]n*nf()=(f(1),…,f(n))T开始用预置初始状态,开始工作时全变为0。然后按照同步工作方式改变状态。问题:不就是状态变化吗?状态变到何时为止,有没有静止态,平衡态。是否从任意的初始状态,都能变到平衡态,运动到哪一个平衡态。这种状态变化有什么用?(3)神经网络的稳定性分析定义:状态X满足X=f(WX-),X称为平衡态或吸引,举例:权值矩阵:,(1)验证初始状态为(1,-1,-1,-1)T时的状态运动。(2)验证初始状态为(-1,-1,-1,-1)T时的状态运动。(3)自己举几个例子。2DHNN神经网络的稳定性将神经网络看作一个非线性动力学系统,系统稳定,则从一个初始状态可以运动到平衡态。什么是平衡态,稳定点。X=f(WX-)=f(WX),通常:=0。开始是混沌态,最终是稳定态。这应该是万物的运动规律。这种规律干什么用?定理2.4:(1)DHNN异步工作模式,(2)W对称,(3)wii0则对任意初态,网络最终收敛到稳定态。证明:下面的方法在Hopfield之前没有人用过:构造能量函数:E(t)=-XT(t)WX(t)+XT(t)说明:该函数有界,上界和下界都有。考察能量变化:E=E(t+1)-E(t)=-XT(t+1)WX(t+1)+XT(t+1)-[-XT(t)WX(t)+XT(t)]=-[X(t)+X(t)]TW[X(t)+X(t)]+[X(t)+X(t)]-[-XT(t)WX(t)+XT(t)](因为:X(t+1)=X(t)+X(t))=-XT(t)[WX(t)-]-XT(t)WX(t)(X(t)=[0,0,…,xi(t),…,0]T)=-xi(t)[]-[xi(t)]2wii0。(1)只有当状态不变时,E才为0。(2)通常wii=0,此时也是如此。(3)当X{0,1}时也有同样结论。定理2.5:(1)DHNN同步工作方式,(2)W对称,则神经网络最终收敛到2态极限环或平衡态。证明:构造能量函数:E(t)=-XT(t)WX(t-1)+(X(t)+X(t-1))TE=E(t+1)-E(t)=-XT(t+1)WX(t)+(X(t+1)+X(t))T-[-XT(t)WX(t-1)+(X(t)+X(t-1))T]=-(i(t)=)0.因能量函数有界,所以收敛。E=0时只有两种情况,即定理中的情况。定理2.5:(1)DHNN,(2)同步方式工作,(3)W对称且非负定。则对任意初态,神经网络总能收敛到平衡态。证明:E(t)=-XT(t)WX(t)+XT(t)E(t)=E(t+1)-E(t)=--XT(t)WX(t)0(1)前面一项前面已经证明是不会大于0,后面一项由W非负定保证。故得证。3联想记忆(AssociateMemory)HAM问题:(1)给定向量:X1=(x11,x12,…,x1n)TX2=(x21,x22,…,x2n)T………XN=(xN1,xN2,…,xNn)T要求:构造神经网络,使X1,X2,…,XN是神经网络的吸引子或稳定点。W=X1X1T+X2X2T+X3X3T+…+XNXNT-NI(1)利用Hebb规则解释(2)例子X1=(1,1,-1,-1,-1,-1)TX2=(-1,-1,1,1,1,-1)TW==神经网络如下:上次内容:(1)多层感知器,离散作用函数(2)BP神经网络,连续作用函数(3)Hopfield神经网络,上次讲到工作方式,现在先回忆,再继续。*神经元:对称硬限函数:f()=*两种工作方式,异步:一次只有一个神经元改变状态,同步:一次所有神经元改变状态。2DHNN神经网络的稳定性,看神经网络改变状态到什么状态。将神经网络看作一个非线性动力学系统,系统稳定,则从一个初始状态可以运动到平衡态。什么是平衡态,稳定点。X=f(WX-)=f(WX),通常:=0。解释:W=,X=,=f(WX)=开始是混沌态,最终是稳定态。这应该是万物的运动规律。这种规律干什么用?定理2.4:(1)DHNN异步工作模式,(2)W对称,(3)wii0则对任意初态,网络最终收敛到稳定态。证明:下面的方法在Hopfield之前没有人用过:构造能量函数:E(t)=-XT(t)WX(t)+XT(t)说明:该函数有界,上界和下界都有。考察能量变化:E=E(t+1)-E(t)=-XT(t+1)WX(t+1)+XT(t+1)-[-XT(t)WX(t)+XT(t)]=-[X(t)+X(t)]TW[X(t)+X(t)]+[X(t)+X(t)]-[-XT(t)WX(t)+XT(t)](因为:X(t+1)=X(t)+X(t))=-XT(t)[WX(t)-]-XT(t)WX(t)(X(t)=[0,0,…,xi(t),…,0]T)=-xi(t)[]-[xi(t)]2wii0。要讨论xi(t)[]=(xi(t+1)-xi(t))[]0(1)只有当状态不变时,E才为0。(2)通常wii=0,此时也是如此。(3)当X{0,1}时也有同样结论。定理2.5:(1)DHNN同步工作方式,(2)W对称,则神经网络最终收敛到2态极限环或平衡态。证明:构造能量函数:E(t)=-XT(t)WX(t-1)+(X(t)+X(t-1))TE=E(t+1)-E(t)=-XT(t+1)WX(t)+(X(t+1)+X(t))T-[-XT(t)WX(t-1)+(X(t)+X(t-1))T]=-0.(i(t)=)因能量函数有界,所以收敛。E=0时只有两种情况,即定理中的情况。定理2.5:(1)DHNN,(2)同步方式工作,(3)W对称且非负定。则对任意初态,神经网络总能收敛到平衡态。二次型,线性代数中讲过。证明:E(t)=-XT(t)WX(t)+XT(t)E(t)=E(t+1)-E(t)=--XT(t)WX(t)0(1)前面一项前面已经证明是不会大于0,后面一项由W非负定保证。故得证。3联想记忆神经网络(AssociateMemory)HAM问题:(1)给定向量:X1=(x11,x12,…,x1n)TX2=(x21,x22,…,x2n)T………XN=(xN1,xN2,…,xNn)T要求:构造神经网络,使X1,X2,…,XN是神经网络的吸引子或稳定点。W=X1X1T+X2X2T+X3X3T+…+XNXNT-NI(1)利用Hebb规则解释(2)例子X1=(1,1,-1,-1,-1,-1)TX2=(-1,-1,1,1,1,-1)TW==神经网络如下:连续Hopfield神经网络结构:三n个微分方程表述。Hopfield神经网络的稳定性,从任意初态均可收敛到平衡态定理2.6:任意连续Hopfield神经网络,若:(1)wij=wji(2)f()单调增则神经网络从任意初态开始均能收敛到网络平衡态。是稳定的。证明:能量函数:E(t)==需要证明,下面证明:因为f()单调增,所以f-1(xi)单调增。所以:,因而有上式的不大于0。2.3Boltzmann机单层反馈神经网络,工作方式是一个随机收敛过程,随机动力学模型:结构如下:神经元的工作模式:离散的,状态离散变化,不连续。下一个状态时什么?抛硬币决定。根据前面的概率。最后结果怎么样,也会稳定,稳定概率为1。这种神经网络也能用来求解优化问题,怎么做:构造一个由问题的参数组成的函数,恰好是一个二次型,根据二次型可以构造神经网络,认为函数是神经网络的能量函数。可以证明,利用这种机器可以求得最优解的概率为1。实际效果不见得好。§2.4Hamming神经网络:例子:X1=(0,0,1,1,1,1)T,X2=(1,1,0,0,1,1)T,X3=(1,1,1,1,0,0)T需要建立神经网络存储上述向量,存储器的容错能力应该较强。不带附加的存储模式向量。只有三个平衡态。能否做到。Hamming网络就能做到。神经元使什么样的:饱和线性函数。y=f()=,饱和线性函数hamming距离计算:X1=(x11,x12,…,x1n)T,X2=(x21,x22,…,x2n)T(2x11-1)(2x21-1)=(2x11-1)(2x21-1)+…+(2x1n-1)(2x2n-1)=-d(X1,X2)+n-d(X1,X2)=n-2d(X1,X2)n-d(X1,X2)=n+构造神经网络:给定X=(x1,…,xn),求X与X1之间的hamming距离:n-d(X1,X)=n+-§2.5自组织神经网络(1)神经网络结构(2)背景:视网膜是怎样辨别东西的?怎样成象?Kohonen总结出一套自组织工作的机制。(3)工作过程输入信息x输出层竞争,只有一个神经元取胜,取胜神经元输出1,变成兴奋态,其他神经元输出0。取胜神经元修改权值,怎样修改?希望什么?一个神经元代表一类。举例说明:声音键盘:a,b,…,x,y,z的声音编码,结果是当输入不同声音时有不同区域的神经元兴奋,实验结果确实如此。但是需要说明确实要达到这个效果。说明上述内容中的一些情况:X=(x1,x2,…,xn)T,W=(w1,w2,…,wn)T,看X和W距离有多么近,那个最近那个神经元取胜,取胜以后,W再去学习X,W朝着X移动一点。第三章模式分类与神经网络学习说明什么是模式分类问题:给定向量对:(X1,Y1),…,(XN,YN),构造神经网络使输入Xi,则输出Yi,i=1,2,…,N,最一般的认为:Xi是n维实数向量,Yi是m维实数向量。下面一点一点看:先看单个神经元是怎样学习的:y=f()=,=这样情况下,输入向量为n维,输出向量为1维。怎样学习:X1=(x11,…x1n)T,d1…………XN=(xN1,…,xNn)T,dN神经网络连接权值是任意的话,误差是多少?E=[(d1-y1)2+(d2-y2)2+…+(dN-yN)2]上面函数是误差函数。若E=0,则W是所求的,否则不行。其他情况下,E越小越好。怎样使误差减小?怎样改变w。有一个基本规则梯度下降:朝着梯度的反方向去改变w会使得误差减小最快。wi=wi-,i=1,2,…,n=[2(d1-y1)(-)+…+2(dn-yn)(-)]=[-(d1-y1)f’(1)x1i-…-(dN-yN)f’(N)xNi]可以给出一个算法:(1)随机选定wi,(2)若E<,则输出wi,,停止。(3)计算,wi=wi-,i=1,2,…,n(4)转(2)感知器是怎样学习的?(1)样本,(X1,Y1),(X2,Y2),…,(XN,YN)(2)求神经网络实现样本映射。单个神经元的学习:作用函数为:f()=(1)先随机确定w1,…,wn,(2)然后修改连接权值和门限值(3)怎样修改wi=-(4)=[-(d1-y1)f’(1)x1i-…-(dN-yN)f’(N)xNi]单个感知器怎样学习,算法是相同的,不同之处在与去掉系数:wi=-[-(d1-y1)x1i-…-(dN-yN)xNi]单个感知器学习算法:误差函数:E=[(d1-y1)2+(d2-y2)2+…+(dN-yN)2](1)随机确定w1,…,wn,(2)计算E,若E<,则停止。(3)计算wi,,i=1,2,…,n。wi=-[-(d1-y1)x1i-…-(dN-yN)xNi]=-[(d1-y1)+…+(dN-yN)](4)wi=wi+wi,=+。(5)转(2)。例子:与运算,样本如下:x1,x2D0,000,101,001,11先随机取值:w1=0.5,w2=0.5,=0.4。f(0,0)=0;f(0,1)=1;f(1,0)=1;f(1,1)=1w1=-0.05;w2=-0.05;=0.1w1=0.45;w2=0.45;=0.5f(0,0)=0;f(0,1)=0;f(1,0)=0;f(1,1)=1。还有一个问题,一般的感知器学习怎么办?有点办法,难度大了。下面最好证明一个定理:定理:若训练样本是线性可分的,则算法经过有限步一定会收敛。*这个留着,下面是BP算法:先要有网络结构:讲清楚网络的连接权值是怎么标记的门限值怎么标记,给定样本:(Xp,dp),Xp=(xp1,xp2,…,xpn)T,dp=(dp1,dp2,…,dpm)T第t层第i个神经元当输入为Xp时的输出用表示,对应的受到作用力总和:算法是怎样来的:(1)构造误差函数:E=分析:若E=0,则显然w和即为所求,若E>0,则要修改w和使E减小。怎样修改?wij=-=-====最后一层的神经元示意图。==-=-=-=-和的计算方法见课本p36。上次内容:(1)离散Hopfield神经网络,稳定性分析。异步工作模式,同步工作模式,分别具有不同的稳定性结论。(2)联想存储器3联想记忆神经网络(AssociateMemory)HAM问题:(1)给定向量:X1=(x11,x12,…,x1n)TX2=(x21,x22,…,x2n)T………XN=(xN1,xN2,…,xNn)T要求:构造神经网络,使X1,X2,…,XN是神经网络的吸引子或稳定点。W=X1X1T+X2X2T+X3X3T+…+XNXNT-NI(1)利用Hebb规则解释(2)例子X1=(1,1,-1,-1,-1,-1)TX2=(-1,-1,1,1,1,-1)TW==神经网络如下:***联想记忆神经网络的性质,要考虑什么问题:(1)要把想存储的数据都存上,能存那么多吗?(2)存储了数据以后,联想能力怎么样。(3)实际就是怎样才叫好,很多指标,先不考虑指标,观察性质。说明什么叫吸引子,就是平衡态。性质1:x是吸引子,i,i=0,,则-x也是该网络的吸引子。不存在作用力等于0的情况。证明:X=f(WX),f(W(-X))=f(-WX)=-f(WX)=-X所以得证。总是有一个多余的吸引子。多存一个。性质2:X(a)是网络吸引子,dH(X(a),X(b))=1,则X(b)一定不是该网络的吸引子。*说明什么是海明距离证明:不失一般性,设X(a)=(x1(a),…,xn(a)),X(b)=(x1(b),…,xn(b)),x1(a)x1(b),xi(a)=xi(b),i=2,…,n。另外w11=0。所以:x1(a)=f()=f()x1(b)。说明:X(a)已知是吸引子,所以有第一个等式,第二个不等式说明X(b)不是吸引子。推论:X(a)是网络吸引子,dH(X(a),X(b))=n-1,则X(b)一定不是该网络的吸引子。因为dH(X(a),-X(b))=1,由性质2说明-X(b)不是吸引子,由性质1说明X(b)不是吸引子。前面说明会有假的吸引子,也就是一个吸引子周围的点都不是吸引子。***下面要说明联想存储器的存储容量Hopfield的实验结果:m≤0.15n,*n为神经元个数,有这样的存储容量也不错。*另一个存储容量,,为吸引半径,即误差。实际是平均存储容量,数学建模,假设每一位都是任意的0/1。以后再讨论这个话题。过去从来没有人说明过,其中有一个结论看了很久似乎不对。4双向联想记忆神经网络,双向联想存储器。目的是什么:根据部分数据得到全部数据。成对的数据,互相联想。XY连续Hopfield神经网络结构:3n个微分方程表述。Hopfield神经网络的稳定性,从任意初态均可收敛到平衡态定理2.6:任意连续Hopfield神经网络,若:(1)wij=wji,作用力等于反作用力(2)f()单调增则神经网络从任意初态开始均能收敛到网络平衡态。是稳定的。证明:能量函数:E(t)==需要证明,下面证明:因为f(yi)单调增,所以f-1(xi)单调增。所以:,因而有上式的不大于0。连续Hopfield神经网络干什么用,用于联想存储器,存储连续的数据。上次讲的内容:(1)Boltzman机,随机神经网络(2)Haiming神经网络,误差修正(3)自组织神经网络。自组织分类。第三章模式分类与神经网络学习说明什么是模式分类问题:简单说明人的学习。修改连接权值。神经网络,连接权值的改变,固定即学习成功。给定向量对:(X1,d1),…,(XN,dN),构造神经网络使输入Xi,则输出di,i=1,2,…,N,最一般的认为:Xi是n维实数向量,Yi是m维实数向量。Xi=(xi1,xi2,…,xin),di=(di1,di2,…,dim)下面一点一点看:先看单个神经元是怎样学习的:y=f()=,=这样情况下,输入向量为n维,输出向量为1维。怎样学习:X1=(x11,…,x1n)T,d1…………XN=(xN1,…,xNn)T,dN神经网络连接权值是任意的话,误差是多少?,任给连接权值wi,E=[(d1-y1)2+(d2-y2)2+…+(dN-yN)2]上面函数是误差函数。若E=0,则W是所求的,否则不行。其他情况下,E越小越好。怎样学习使E越来越小。W=(w1,w2,…,wn)T,梯度。怎样使误差减小?怎样改变w。有一个基本规则梯度下降:朝着梯度的反方向去改变w会使得误差减小最快。w=(w1,w2,…,wn)T,wi=-,要有一个系数。wi=wi-,i=1,2,…,n=[2(d1-y1)(-)+…+2(dN-yN)(-)]=[-(d1-y1)f’(1)x1i-…-(dN-yN)f’(N)xNi]=[-(d1-y1)f(1)(1-f(1))x1i-(d2-y2)f(2)(1-f(2))x2i…-(dN-yN)f(N)(1-f(N))xNi]yk=f(k)k=可以给出一个算法:(1)随机选定wi,(2)若E<,则输出wi,,停止。(3)计算,wi=wi-,i=1,2,…,n(4)转(2)算法学习是否会成功。什么是成功,达到目标,不是所有样本都能达到目标。样本是线性可分的,则会成功。感知器是怎样学习的?(1)样本,(X1,Y1),(X2,Y2),…,(XN,YN)(2)求神经网络实现样本映射。单个神经元的学习:作用函数为:f()=(1)先随机确定w1,…,wn,(2)然后修改连接权值和门限值(3)怎样修改:wi=-(4)=[-(d1-y1)f’(1)x1i-…-(dN-yN)f’(N)xNi]单个感知器怎样学习,算法是相同的,不同之处在与去掉系数:wi=-[-(d1-y1)x1i-…-(dN-yN)xNi]单个感知器学习算法:误差函数:E=[(d1-y1)2+(d2-y2)2+…+(dN-yN)2](1)随机确定w1,…,wn,(2)计算E,若E<,则停止。(3)计算wi,,i=1,2,…,n。wi=-[-(d1-y1)x1i-…-(dN-yN)xNi]=-[(d1-y1)+…+(dN-yN)](4)wi=wi+wi,=+。(5)转(2)。例子:与运算,样本如下:x1x2di000010100111先随机取值:w1=0.5,w2=0.5,=0.4。f(0,0)=0;f(0,1)=1;f(1,0)=1;f(1,1)=1w1=-[-(d1-y1)x11-(d2-y2)x21-(d3-y3)x31-(d4-y4)x41]=-[-(0-0)0-(0-1)0-(0-1)1-(1-1)1]=-0.2*(1/4)(1)=-0.05;w2=-[-(0-0)0-(0-1)1-(0-1)0-(1-1)1]=-0.05=-[(0-0)*1+(0-1)*1+(0-1)*1+(1-1)*1]=-0.2*(1/4)(-2)=0.1w1=0.45;w2=0.45;=0.5f(0,0)=0;f(0,1)=0;f(1,0)=0;f(1,1)=1。还有一个问题,一般的感知器学习怎么办?有点办法,难度大了。下面最好证明一个定理:定理:若训练样本是线性可分的,则算法经过有限步一定会收敛。*这个留着,下面是BP算法:先要有网络结构:讲清楚网络的连接权值是怎么标记的门限值怎么标记,给定样本:(Xp,dp),Xp=(xp1,xp2,…,xpn)T,dp=(dp1,dp2,…,dpm)T第t层第i个神经元当输入为Xp时的输出用表示,对应的受到作用力总和:算法是怎样来的:(1)构造误差函数:E=分析:若E=0,则显然w和即为所求,若E>0,则要修改w和使E减小。怎样修改?梯度下降。wij=-=-====最后一层的神经元示意图。==-=-=-=-第t层神经元示意图。和的计算方法见课本p36。说明:没法举例子算法程序容易实现,很多现成的程序,可以用VC或VB实现。算法在神经网络规模较小时速度还行,规模大时速度太慢。有很多改进方法,但解决不了根本问题。说算法坏是正常的,总是要改进,算法的关键就是要求微分,这个微分求了30年,实际上被人家求出来了,发现很简单。BP算法求解原理是什么?局部搜索算法,开始选择随机初始点,计算到局部最优解时若没达到要求,则重新选择开始点。7.改进算法自己去看吧,什么原理呢,就是调整步长,理局部最优解远时步长加长,离局部最优解近时步长缩短。8.有一次我真是认真分析了一下时间复杂度,可以说明是指数的。空间复杂度很小,所以算法很实用。上次内容:(1)什么是学习(2)单个神经元的学习算法关于单层感知器学习的结论。定理:若训练样本是线性可分的,则算法经过有限步一定会收敛。*这个留着,现在不证明。下面是BP算法:先要有网络结构:讲清楚网络的连接权值是怎么标记的门限值怎么标记,给定样本:(Xp,dp),Xp=(xp1,xp2,…,xpn)T,dp=(dp1,dp2,…,dpm)T第t层第i个神经元当输入为Xp时的输出用表示,对应的受到作用力总和:算法是怎样来的:(1)构造误差函数:共N个样本。E=分析:若E=0,则显然w和即为所求,若E>0,则要修改w和使E减小。怎样修改?梯度下降法。(,…,,,…,,…,,…,,,…,,,…,,…,,…,,…,…,,,…,,…,,…,)=-=-====最后一层的神经元示意图。==-=-=-=-=-=-=-==第t层神经元示意图。=-和的计算方法见课本p36。说明:没法举例子算法程序容易实现,很多现成的程序,可以用VC或VB实现。算法在神经网络规模较小时速度还行,规模大时速度太慢。有很多改进方法,但解决不了根本问题。说算法坏是正常的,总是要改进,算法的关键就是要求微分,这个微分求了30年,实际上被人家求出来了,发现很简单。BP算法求解原理是什么?局部搜索算法,开始选择随机初始点,计算到局部最优解时若没达到要求,则重新选择开始点。7.改进算法自己去看吧,什么原理呢,就是调整步长,理局部最优解远时步长加长,离局部最优解近时步长缩短。8.有一次我真是认真分析了一下时间复杂度,可以说明是指数的。空间复杂度很小,所以算法很实用。§3.3联想存储器学习算法英文:associatememory,简称HAM1先说问题:给定样本模式:X1=(x11,x12,…,x1n)T{1,-1}nX2=(x21,x22,…,x2n)T{1,-1}n…………XN=(xN1,xN2,…,xNn)T{1,-1}nN个n维二值向量,学习样本。问题:要构造离散hopfield神经网络使给定样本成为神经网络的吸引子。平衡态。*也可以说这样,输入Xp时,网络稳定输出Xp,p=1,2,…,N。*问一个问题:要想输入Xp输出Yp怎样做,Xp是n维向量,Yp是m维向量。可以采用如下结构:可以采用两层学习:联想学习,前馈学习。没有十全十美的办法。只能说明越来越好。hebb规则学习神经网络结构固定学习目的是计算wij和i。规则:,1i,jnHebb规则解释:当两者相同状态时权值增加,表示同时兴奋。用连接矩阵描述hopfield神经网络的权值计算方法:W=-NI。i=0,i=1,2,…,n学习算法:训练样本:{X1,…,XN}fori=1tonforj=1tondowij=0;forp=1toNdofori=1tonforj=1tondowij=wij+xpixpj。问题:是否所有样本都会称为网络的吸引子。先举一个例子:X1=(+1,+1,-1,-1)T,X2=(+1,-1,+1,-1)TW=X1X1T+X2X2T-2I=+-=(1)初态为:(1,1,-1,-1)T,下一个状态仍然是(1,1,-1,-1)T。(2)初态为:(1,-1,1,-1)T,下一个状态是:(1,-1,1,-1)T。并不是任意一个向量都能成为平衡态,按照这样的规则。但是N能有多大呢?定理3.2设N个样本模式满足:(1)ndH(Xi,Xj)(1-)n,ij,0<<1/2(2)N1+则,当N足够大时,X1,…,XN都会成为网络的吸引子。证明:若Xk=f(WXk),则Xk是网络吸引子。WXk=(-NI)Xk=(n-N)Xk+X1X1TXk+…+XNXNTXk限定后面一部分的绝对值,使其不超过前面就行。设Y=X1X1TXk+…+XNXNTXk=(y1,…,yn),只需证明|yi|<(n-N),则Xk是神经网络平衡态。|yi|(1-2)n(N-1),解(1-2)n(N-1)<n-N并使n无穷大,就得到结论。N1+。注释:当神经网络选择{0,1}状态时怎么办?神经元作用函数,f()=此时神经网络学习方法为:wij=3.3.2双向联想记忆神经网络学习算法1问题:识别张三,但是张三的照片缺损一点。可以用双向联想存储器。给定向量组:(X1,Y1),(X2,Y2),…,(XN,YN)。Xp=(xp1,…,)T,Yp=(yp1,…,)T,当初始状态为(Xp,*)时,最终稳定态为:(Xp,Yp)很多情况下只能记忆神经网络状态的一半,另一半联想出来。根据状态的一部分可以联想出全部状态。1结构神经元是什么样的。神经元作用函数:f()=,两边的神经元都是这样。神经网络的工作是有节拍的。每个节拍神经元同时改变状态。工作状态改变规则:*从本质上理解,还是Hopfield神经网络,性质不会大变。*关心的问题,这个神经网络是否稳定,从一个状态开始是否可以收敛到平衡态上去。干什么用。2学习算法给定学习样本:(X1,Y1),(X2,Y2),…,(XN,YN),构造神经网络使每个样本均为神经网络的平衡态。分析:样本给定,神经网络结构就已经定了。每层神经元个数定了。现在只要计算神经网络的连接权值就行了。Hebb规则学习:显然:,仍然满足作用力与反作用力相等。写成矩阵形式:,显然:W1=(W2)T定理3.3:若BAM学习训练样本满足,X向量与Y向量各自相互正交,则所有训练样本均为BAM的平衡态。证明:设(Xl,Yl)是一个训练样本,t时刻的状态为:(Xl,Yl),yj(t+1)=f()=f()=f()=f(n1ylj)=ylj。同理可证:xi(t+1)=xli。举个例子:三个样本:(X1,Y1),(X2,Y2),(X3,Y3)X1=(1,-1,-1,1)T,X2=(-1,1,1,-1)T,X3=(1,-1,1,-1)T。Y1=(-1,1,1)T,Y2=(-1,-1,-1)T,Y3=(1,-1,1)T。根据hebb规则计算得:W1=(W2)T=3.3.3HAM与BAM网络模式分类器一个联想存储器神经网络,一个前馈神经网络,两者合并起来,就是一个组合的分类器,有时需要输入与输出不同。3.4Hamming神经网络分类学习算法3.4.3分类原理发生变化的概率为:规则分类误差最小就是最佳,但是没法说哪种办法是最好的。问题:给定向量:X1,X2,…,XN,Xi{1,-1}n,选择Xp通过信道,接受到X,接受到X时并不知道传送的到底是哪一个向量,怎么判断呢?按照如下规则:若,则认为Xi就是信道输入端输入的向量。从某种意义上说是最好的。计算概率:假设=,条件概率,P{X|Xj}==,n表示每个向量的维数。分析:可以认为<0.5,所以<1,所以dH(X,Xj)越小,P{X|Xj}越大,所以只需要通过海明距离衡量可能性。判断准则:哪一个向量与X海明距离小,就选那一个向量。计算dH(X,Xj)最小,相当于计算n-dH(X,Xj)最大。先看n-dH(X,Xj)怎么算法。要将计算写成神经网络计算的形式:n-dH(X,Xj)=,若二值信息为:+1/-1,则计算公式为:n-dH(X,Xj)=,其中,Xj=(xj1,xj2,…,xjn)T,上次内容:(1)BP网络与BP算法,反向传播算法,网络因算法而得名。BackPropagation(2)多层感知器仍然找不到学习算法。(3)研究问题的策略,不能全部解决就部分解决。§3.3联想存储器学习算法英文:associatememory,简称HAM1先说问题:给定样本模式:X1=(x11,x12,…,x1n)T{1,-1}nX2=(x21,x22,…,x2n)T{1,-1}n…………XN=(xN1,xN2,…,xNn)T{1,-1}nN个n维二值向量,学习样本。问题:要构造离散Hopfield神经网络使给定样本成为神经网络的吸引子平衡态。平衡态。*也可以说这样,输入Xp时,网络稳定输出Xp,p=1,2,…,N。*问一个问题:要想输入Xp输出Yp怎样做,Xp是n维向量,Yp是m维向量。没有十全十美的办法。只能说明越来越好。自然科学研究,首次尝试成功非常重要。hebb规则学习。神经网络结构固定。学习目的是计算wij和i。规则:,1i,jnHebb规则解释:当两个神经原相同状态时权值增加,表示同时兴奋。用连接矩阵描述Hopfield神经网络的权值计算方法:W=-NI。i=0,i=1,2,…,n学习算法:训练样本:{X1,…,XN},Xp=(xp1,xp2,…,xpn)Tfori=1tonforj=1tondowij=0;forp=1toNdofori=1tonforj=1tondowij=wij+xpixpj。问题:是否所有样本都会成为神经网络的吸引子。先举一个例子:X1=(+1,+1,-1,-1,-1)T,X2=(+1,-1,+1,-1,+1)TW=X1X1T+X2X2T-2I=+-=(1)初态为:(1,1,-1,-1,-1)T,下一个状态仍然是(1,1,-1,-1,-1)T。(2)初态为:(+1,-1,+1,-1,+1)T,下一个状态是:(1,-1,1,-1,1)T。并不是任意一个向量都能成为平衡态,按照这样的规则。但是N能有多大呢?定理3.2设N个样本模式满足:(1)ndH(Xi,Xj)(1-)n,ij,0<<1/2(2)N1+则,当N足够大时,X1,…,XN都会成为网络的吸引子。证明:这个结论很简单的讨论。若Xk=f(WXk),则Xk是网络吸引子。WXk=(-NI)Xk=(n-N)Xk+X1X1TXk+…+XNXNTXk限定后面一部分的绝对值,使其不超过前面就行。设Y=X1X1TXk+…+XNXNTXk==(y1,…,yn)T,只需证明|yi|<(n-N),则Xk是神经网络平衡态。||=|n-dH(Xi,Xj)|(1-2)n|yi|(1-2)n(N-1),解(1-2)n(N-1)<n-N并使n无穷大,就得到结论。N1+。注释:当神经网络选择{0,1}状态时怎么办?神经元作用函数,f()=此时神经网络学习方法为:wij=3.3.2双向联想记忆神经网络学习算法1问题:识别张三,但是张三的照片缺损一点。可以用双向联想存储器。给定向量组:(X1,Y1),(X2,Y2),…,(XN,YN)。Xp=(xp1,…,)T,Yp=(yp1,…,)T,当初始状态为(Xp,*)时,最终稳定态为:(Xp,Yp)当初始状态为(*,Yp)时,最终稳定态为:(Xp,Yp)很多情况下只能记忆神经网络状态的一半,另一半联想出来。根据状态的一部分可以联想出全部状态。1结构神经元是什么样的。神经元作用函数:f()=,两边的神经元都是这样。神经网络的工作是有节拍的。每个节拍神经元同时改变状态。工作状态改变规则:*从本质上理解,还是Hopfield神经网络,性质不会大变。*关心的问题,这个神经网络是否稳定,从一个状态开始是否可以收敛到平衡态上去。干什么用。一个方向的神经元预置初始状态,另一半任意状态,开始工作时,所有输入同时变为0开始状态自由变化。2学习算法给定学习样本:(X1,Y1),(X2,Y2),…,(XN,YN),构造神经网络使每个样本均为神经网络的平衡态。分析:样本给定,神经网络结构就已经定了。每层神经元个数定了。现在只要计算神经网络的连接权值就行了。Hebb规则学习:显然:,仍然满足作用力与反作用力相等。写成矩阵形式:,显然:W1=(W2)T定理3.3:若BAM学习训练样本满足,X向量与Y向量各自相互正交,则所有训练样本均为BAM的平衡态。证明:设(Xl,Yl)是一个训练样本,t时刻的状态为:(Xl,Yl),yj(t+1)=f()=f()=f()=f(n1ylj)=ylj。同理可证:xi(t+1)=xli。举个例子:三个样本:(X1,Y1),(X2,Y2),(X3,Y3)X1=(1,-1,-1,1)T,X2=(-1,1,1,-1)T,X3=(1,-1,1,-1)T。Y1=(-1,1,1)T,Y2=(-1,-1,-1)T,Y3=(1,-1,1)T。根据hebb规则计算得:W1=(W2)T=3.3.3HAM与BAM网络模式分类器一个联想存储器神经网络,一个前馈神经网络,两者合并起来,就是一个组合的分类器,有时需要输入与输出不同。可以采用如下结构:可以采用两层学习:联想学习,前馈学习。3.4Hamming神经网络分类学习算法3.4.3分类原理发生变化的概率为:规则分类误差最小就是最佳,但是没法说哪种办法是最好的。问题:给定向量:X1,X2,…,XN,Xi{1,-1}n,选择Xp通过信道,接受到X,接受到X时并不知道传送的到底是哪一个向量,怎么判断呢?按照如下规则:若,则认为Xi就是信道输入端输入的向量。从某种意义上说是最好的。计算概率:假设=,条件概率,P{X|Xj}==,n表示每个向量的维数。分析:可以认为<0.5,所以<1,所以dH(X,Xj)越小,P{X|Xj}越大,所以只需要通过海明距离衡量可能性。判断准则:哪一个向量与X海明距离小,就选那一个向量。计算dH(X,Xj)最小,相当于计算n-dH(X,Xj)最大。先看n-dH(X,Xj)怎么算法。要将计算写成神经网络计算的形式:n-dH(X,Xj)=,若二值信息为:+1/-1,则计算公式为:n-dH(X,Xj)=,其中,Xj=(xj1,xj2,…,xjn)T,§5.1问题简介:样本集合:{u1,u2,…,uN},ui=(Xi,Yi),Xi=(xi1,xi2,…,xim)T,Yi=(yi

温馨提示

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

评论

0/150

提交评论