人工智能2012(4NN)修改_第1页
人工智能2012(4NN)修改_第2页
人工智能2012(4NN)修改_第3页
人工智能2012(4NN)修改_第4页
人工智能2012(4NN)修改_第5页
已阅读5页,还剩117页未读 继续免费阅读

下载本文档

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

文档简介

第四章计算智能(1)

--人工神经网络

神经计算神经网络原理1信息科学与生命科学的相互交叉、相互渗透和相互促进是现代科学技术发展的一个显著特点。计算智能涉及神经网络、模糊逻辑、进化计算和人工生命等领域,它的研究和发展正反映了当代科学技术多学科交叉与集成的重要发展趋势。4.1 概述2什么是计算智能

(ComputionalIntelligence,简称CI)把神经网络(NN)归类于人工智能(AI)可能不大合适,而归类于计算智能(CI)更能说明问题实质。进化计算、人工生命和模糊逻辑系统的某些课题,也都归类于计算智能。计算智能取决于制造者(manufacturers)提供的数值数据,不依赖于知识;另一方面,人工智能应用知识精品(knowledgetidbits)。人工神经网络应当称为计算神经网络。4.1概述3计算智能与人工智能的区别和关系输入人类知识(+)传感输入知识(+)传感数据计算(+)传感器C-数值的A-符号的B-生物的输入复杂性复杂性BNNBPRBIANNAPRAICNNCPRCI4.1概述4A-Artificial,表示人工的(非生物的);B-Biological,表示物理的+化学的+(??)=生物的;

C-Computational,表示数学+计算机计算智能是一种智力方式的低层认知,它与人工智能的区别只是认知层次从中层下降至低层而已。中层系统含有知识(精品),低层系统则没有。4.1概述5当一个系统只涉及数值(低层)数据,含有模式识别部分,不应用人工智能意义上的知识,而且能够呈现出:(1)计算适应性;(2)计算容错性;(3)接近人的速度;(4)误差率与人相近,则该系统就是计算智能系统。当一个智能计算系统以非数值方式加上知识(精品)值,即成为人工智能系统。4.1概述6神经计算1、生物神经元及生物神经网络2、人工神经网络3、介绍四种类型的网络4、神经网络的学习算法5、感知器网络(Perceptron)6、线性神经网络7、BP网络74.2生物神经元及生物神经网络生物神经元人脑大约由1012个神经元组成,神经元互相连接成神经网络神经元是大脑处理信息的基本单元,以细胞体为主体,由许多向周围延伸的不规则树枝状纤维构成的神经细胞,其形状很像一棵枯树的枝干。它主要由细胞体、树突、轴突和突触(Synapse,又称神经键)组成。

8生物神经元示意图

9从神经元各组成部分的功能来看,信息的处理与传递主要发生在突触附近。当神经元细胞体通过轴突传到突触前膜的脉冲幅度达到一定强度,即超过其阈值电位后,突触前膜将向突触间隙释放神经传递的化学物质。突触有两种:兴奋性突触和抑制性突触。前者产生正突触后电位,后者产生负突触后电位。

10突触传递信息的功能和特点归纳为:

信息传递有时延,一般为0.3~lms。信息的综合有时间累加和空间累加。

突触有兴奋性和抑制性两种类型。

具有脉冲/电位信号转换功能。

神经纤维传导的速度,即脉冲沿神经纤维传递的速度,在1—150m/s之间

存在不应期。

不可逆性,脉冲只从突触前传到突触后,不逆向传递。

可塑性,突触传递信息的强度是可变的,即具有学习功能。

存在遗忘或疲劳效应。11人脑神经网络系统脑神经系统的主要组成部分

121.分布存储与冗余性

2.并行处理

3.信息处理与存储合一

4.可塑性与自组织性

5.鲁棒性

人脑神经网络信息处理的特点131960年威德罗和霍夫率先把神经网络用于自动控制研究。60年代末期至80年代中期,神经网络控制与整个神经网络研究一样,处于低潮。80年代后期以来,随着人工神经网络研究的复苏和发展,对神经网络控制的研究也十分活跃。这方面的研究进展主要在神经网络自适应控制和模糊神经网络控制及其在机器人控制中的应用上。4.3人工神经网络

4.3.1人工神经网络研究的进展14归纳一下生物神经元传递信息的过程:生物神经元是一个多输入、单输出单元。常用的人工神经元模型可用图3-3模拟。

人工神经元模型

4.3.2人工神经元模型15响应函数的基本作用:1、控制输入对输出的激活作用;2、对输入、输出进行函数转换;3、将可能无限域的输入变换成指定的有限范围内的输出。

16根据响应函数的不同,人工神经元有以下几种类型:

人工神经元的响应函数

171、阈值单元

2、线性单元

3、非线性单元:Sigmoid函数

18上述模型能反映生物神经元的基本特性,但还有如下不同之点:(1)生物神经元传递的信息是脉冲,而上述模型传递的信息是模拟电压。(2)由于在上述模型中用一个等效的模拟电压来模拟生物神经元的脉冲密度,所以在模型中只有空间累加而没有时间累加(可以认为时间累加已隐含在等效的模拟电压之中)。(3)上述模型未考虑时延、不应期和疲劳等。

19并行分布处理非线性映射通过训练进行学习适应与集成硬件实现人工神经网络的特性4.2神经计算20神经网络的学习算法1、学习算法的类型决定性质的两个因素:拓扑结构、学习(工作)规划2、无监督Hebb算法21四种类型的网络1、前向型(感知器、线性网络、(BP网络))2、反馈型(Hopfield网络)3、随机型4、自组织竞争型22学习算法的类型1、死记式学习2、有监督学习3、无监督学习4、有、无监督混合学习5、无监督竞争学习6、无监督Hebb学习7、Boltzmann学习8、模糊学习9、强化学习23死记式学习连接权根据某种特殊记忆模式设计为不变联想记忆、优化计算时即为此24有监督学习学习结果(网络输出)有一评价,差值决定加权调整25无监督学习自组织学习网络根据某种规则反复调整加权以响应输入模式的激励,直到网络形成某种有序状态抽取输入信号规律(统计规律)学习评价标准隐含于网络内部学习规则:Hebb相近学习规则必要条件:输入数据的冗余性作用:主元分析、聚类、特征映射26有、无监督混合学习优点:分类精细、准确、灵活、简练缺点:学习慢、精度差一般:无监督学习,抽取数据特征,数据预处理,有监督学习处理,I/o映射27无监督学习特点:某种方法确定竞争后“获胜”神经元获胜元“1”;其它“0”加权仅在获胜元与输入间进行(相近学习规划)28无监督Hebb学习利用Hebb规划调整加权,以适合输入模式的激励29模糊学习特点:学习过程用模糊学进行测度,输入量为经过模糊化后的模拟量I/o关系为模糊集的运算关系30强化学习1、改善有监督学习“正确目标”,非具体信息仅知变化趋势正确或错误2、从环境中接受反馈信息31无监督Hebb学习1、线性单元Hebb学习2、Oja学习规划3、Oja方法推广到非线性单元32线性单元Hebb学习Model(1)

Hebb规则(2)(3)33上式w(k)无限增长,学习不会停止,只存在不稳定的平衡点34Oja学习规则改善Hebb学习收敛(5)(6)(7)引入与y2成比例的衰减项(8)

其中X’(k)称为等效输入35隐含竞争Oja有自放大和竞争两作用Oja的学习等效与规范化的Hebb学习3637Oja方法推广到非线性单元38推导可认为是以下优化问题的解39404.4感知器网络414.4感知器网络424.4感知器网络1、感知器模型2、学习训练算法3、学习算法的收敛性4、单层单输出感知器5、单层多输出感知器6、例题7、讨论434.4.1感知器神经元模型感知器模型如图1I/O关系图1

44单层感知器模型如图2定义加权系数wij为第i个神经元到第j个神经元之间的连接值

图245图形解释对n=2的情况

分平面为两部分WX+B与W正交464.4.2学习训练算法47训练步骤1)对于所要解决的问题,确定输入向量X,目标向量T,由此确定维数及网络结构参数,n,m;2)参数初始化;3)设定最大循环次数;4)计算网络输出;5)检查输出矢量Y与目标矢量T是否相同,如果时,或以达最大循环次数,训练结束,否则转入6);6)学习

并返回4)。484.4.3学习算法的收敛性可证:在训练样本XP,p=1,2,…,K是线性可分时,采用上式的学习方法,在有限次迭代后,必能归到正确解。证明此处略。49假设A1输入样本x1,x2,xk归一化A2||W*||=1A3令tq=0对应的样本XB取反向W*X<0=>W*TX>0,问题简化为对所有的XP,训练后可以得到W*,W*TX>0证明:因为K个样本线性可分,所以存在W*,对任意K W*’XP>=dd>0余弦角cosa为

s(k)=W*W(k)/||W*||||W(k)||50学习律

W(k+1)=w(k)+ux(k)u=2neq左乘W*W*W(k+1)=W*(W(k)+ux(k))>=W*W(k)+ud从k=0迭代W*W(k)>=W*W(0)+kud选择w(0)∈XP满足W*XP>0有W*W(k)>=k0ud在W(k)未达到W*时,W(k)X(k)<0所以51W(k)=W*时.S(k)=1求解得到524.4.4离散单输出感知器53离散单输出感知器训练算法54离散单输出感知器训练算法554.4.5离散多输出感知器56离散多输出感知器训练算法57离散多输出感知器训练算法58离散多输出感知器训练算法59离散多输出感知器训练算法60离散多输出感知器训练算法61离散多输出感知器训练算法624.4.6连续多输出感知器训练算法634.4.7线性不可分问题64线性不可分问题的克服6566例题例1采用单一感知器神经元解决一个简单的分类问题:将四个输入矢量分为两类,其中两个矢量对应的目标值为1,另两个矢量对应的目标值为0,即输入矢量:P=[-0.5–0.50.30.0;-0.50.5-0.51.0]

目标分类矢量:T=[1.01.00.00.0]

67解

首先定义输入矢量及相应的目标矢量:

P=[-0.5–0.50.30.0;-0.50.5-0.51.0];T=[1.01.00.00.0];

输入矢量可以用右图来描述,对应于目标值0的输入矢量用符号‘○’表示,对应于目标值1的输入矢量符号‘+’表示。

输入矢量图网络结构x1x2y68

训练结束后得到如图所示的分类结果,分类线将两类输入矢量分开,其相应的训练误差的变化如图所示。这说明经过4步训练后,就达到了误差指标的要求。

分类结果误差变化曲线69下面给出本例的MATLAB程序%Examplepre.m%clfresetfigure(gcf)setfsize(300,300);echoon

%NEWP——

建立一个感知器神经元%INIT——

对感知器神经元初始化%TRAIN——

训练感知器神经元%SIM——

对感知器神经元仿真pause%敲任意键继续clc%P为输入矢量P=[-0.5-0.5+0.3+0.0;-0.5+0.5-0.51.0];%T为目标矢量T=[1100];pause%绘制输入矢量图plotpv(P,T);pause%定义感知器神经元并对其初始化

net=newp([-0.50.5;-0.51],1);net.initFcn='initlay';net.layers{1}.initFcn='initwb';70net.inputWeights{1,1}.initFcn='rands';net.layerWeights{1,1}.initFcn='rands';net.biases{1}.initFcn='rands';net=init(net);echooffk=pickic;ifk==2net.iw{1,1}=[-0.81610.3078];net.b{1}=[-0.1680];endechoonplotpc(net.iw{1,1},net.b{1})pause

%训练感知器神经元net=train(net,P,T);pause%绘制结果分类曲线plotpv(P,T)plotpc(net.iw{1,1},net.b{1});pause%利用训练完的感知器神经元分类p=[-0.5;0];a=sim(net,p)echooff71讨论局限性1)由于激活函数为阀值函数,输出矢量只能取0,1,说已仅可以解决简单的分类问题;2)输入矢量线性可分时,学习在有限次数内收敛;3)输入矢量的奇异性导致较慢的收敛。比如当输入/输出矢量分别为:

P=[-0.5–0.5+0.3–0.1–80-0.5+0.5–0.5+1.0100];T=[11001];必然导致训练的困难;4)异或问题不可解。724.5线性神经网络1、线性神经元模型2、学习训练算法3、例题与分析734.5.1线性神经元模型线性神经元模型如图所示:

线性神经元模型744.5.2W-H学习规则W—H学习规则是由威德罗和霍夫提出的用来修正权矢量的学习规则采用W—H学习规则可以用来训练一定网络的权值和偏差使之线性地逼近一个函数式而进行模式联想(PatternAssociation)。75定义一个线性网络的输出误差函数为:我们的目的是通过调节权矢量,使E(W,B)达到最小值。所以在给定E(W,B)后,利用W—H学习规则修正权矢量和偏差矢量,使E(W,B)从误差空间的某一点开始,沿着E(W,B)的斜面向下滑行。76根据梯度下降法,权矢量的修正值正比于当前位置上E(W,B)的梯度,对于第i个输出节点有:或表示为:77η为学习速率。在一般的实际运用中,实践表明,η通常取一接近1的数,或取值为:学习速率的这一取法在神经网络工具箱中用函数maxlinlr.m来实现。上式可表示为:78W—H学习规则的函数为:learnwh.m来实现,加上线性自适应网络输出函数purelin.m,可以写出W—H学习规则的计算公式为:

A=purelin(W*P);E=T—A;[dW,dB]=learnwh(P,E,h);W=W十dW;B=B十dB;采用W—H规则训练自适应线性元件使其能够得以收敛的必要条件是被训练的输入矢量必须是线性独立的,且应适当地选择学习速率以防止产生振荡现象。794.5.3网络训练自适应线性元件的网络训练过程可以归纳为以下三个步骤:1)表达:计算模型的输出矢量A=W*P十B,以及与期望输出之间的误差E=T—A;2)检查:将网络输出误差的平方和与期望误差相比较,如果其值小于期望误差,或训练已达到事先设定的最大训练次数,则停止训练;否则继续;3)学习:采用W—H学习规则计算新的权值和偏差,并返回到1)。80采用Matlab进行自适应线性元件网络的训练过程如下:trainwh.m%表达式A=purelin(W*P,B);E=T-A;SSE=sumsqr(E); %求误差平方和forepoch=1:max_epoch %循环训练ifSSE<err_goal %比较误差epoch=epoch—1;break %若满足期望误差要求,结束训练end[dW,dB]=1earnwh(P,E,lr);%修正权值W=W十dW;B=B十dB;A=purelin(W*P,B); %网络输出E=T-A;SSE=sumsqr(E); %计算网络误差平方和end814.5.4例题与分析

例1设计自适应线性网络实现从输入矢量到输出矢量的变换关系。其输入矢量和输出矢量分别为:

P=[1.0-1.2]T=[0.51.0]82%wf1.m%P=[1-1.2];T=[0.51];[R,Q]=size(P);[S,Q]=size(T);[W,B]=rands(S,R);max_epoch=20; %最大循环次数err_goal=0.001; %期望误差1r=0.4*maxlinlr(P); %最佳学习速率disp_freq=1; %设置显示频率TP=[disp_freqmax_epocherr_goallr]; %设置参数变量TP[W,B,epochs,error]=trainwh(W,B,P,T,TP)%进行线性网络权值训练83在随机初始值为:W0=—0.9309;B0=—0.8931的情况下,经过12次循环训练后,网络的输出误差平方和达到0.000949,网络的最终权值为:W=-0.2354;B=0.7066实际上,对于这个简单的例题,它存在一个精确解,且可以用解二元一次方程的方式将P和T值分别对应地代入方程T=W*P十B得:

84可解出e=T-A=0的解为:W=-0.2273;B=0.7273由此看出,对于特别简单的问题,采用自适应线性网络的训练不一定能够得到足够精确的解。因为当训练误差达到期望误差值后,训练即被终止。

85[例2]现在来考虑一个较大的多神经元网络的模式联想的设计问题。输入矢量和目标矢量分别为:86解:由输入矢量和目标输出矢量可得:输入向量个数r=3,输出向量个数s=4,样本数q=4。所以网络的结构如下图所示。

这个问题的求解同样可以采用线性方程组求出,即对每一个输出节点写出输入和输出之间的关系等式。

87实际上要求出这16个方程的解是需要花费一定的时间的,甚至是不太容易的。对于一些实际问题,常常并不需要求出其完美的零误差时的解。也就是说允许存在一定的误差。在这种情况下,采用自适应线性网络求解就显示出它的优越性:因为它可以很快地训练出满足一定要求的网络权值。

88%wf2.m%P=[11.51.2–0.3;-123–0.5;21–1.60.9];T=[0.53–2.21.4;1.1–1.21.7–0.4;30.2–1.8–0.4;-10.1–1.00.6];disp_freq=400; %中间不显示结果max_epoch=400;err_goal=0.001;lr=0.9*maxlinlr(P);W=[1.9978–0.5959–0.3517;1.55430.053311.3660; %初始权值1.06720.3645–0.9227;-0.77471.3839–0.3384];B=[0.0746;-0.0642;-0.4256;-0.6433];SSE=sumsqr(T-purelin(W*P,B)); %未训练前误差fprintf(‘Beforetrainihg,sumsquarederror=%g.\n’,SSE)89%训练网络flops(0)tp=[disp_freqmax_epocherr_goallr]; %设置参数变量tp[W,B,epochs,errors]=trainwh(W,B,P,T,tp);%进行线性网络权值训练W %显示最终训练权矢量B %显示最终训练偏差矢量SSE=sumsqr(T-purelin(W*P,B)); %最终误差%显示结果并给出结论ploterr(errors),fprintf(‘\nAfter%.0fepochs,sumsquaredeerror=%g.\n\n’,SSE),fprintf(‘Trainingtook%.0fflops.\n’,flops),fprintf(‘Trainednetworkoperates:’);ifSSE<err_goaldisp(‘Adequately.’)elsedisp(‘Inadequ

温馨提示

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

评论

0/150

提交评论