神经网络讲义第7章.ppt

上传人:小飞机 文档编号:6190630 上传时间:2023-10-03 格式:PPT 页数:49 大小:372KB
返回 下载 相关 举报
神经网络讲义第7章.ppt_第1页
第1页 / 共49页
神经网络讲义第7章.ppt_第2页
第2页 / 共49页
神经网络讲义第7章.ppt_第3页
第3页 / 共49页
神经网络讲义第7章.ppt_第4页
第4页 / 共49页
神经网络讲义第7章.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《神经网络讲义第7章.ppt》由会员分享,可在线阅读,更多相关《神经网络讲义第7章.ppt(49页珍藏版)》请在三一办公上搜索。

1、2023/10/3,1,第七章 径向基网络 BP网络在训练过程中需要对网络的所有权值和阈值进行修正,把它称之为全局逼近神经网络。全局逼近神经网络学习速度很慢,所以在一些实时性较强的场合(如实时控制),其应用受到限制。径向基网络是一种局部逼近网络,对于每个训练祥本,它只需要对少量的权值和阈值进行修正,因此训练速度快。,2023/10/3,2,7.1 径向基网络模型 径向基函数(radial basis function,RBF)方法是在高维空间进行插值的一种技术。Bromhead和Love在1998年率先使用该技术,提出了神经网络学习的一种新手段。,2023/10/3,3,径向基神经元模型 径向

2、基神经元模型如图7.1 所示。输入 神经元 图7.1径向基神经元模型,2023/10/3,4,其输出表达式为式中:radbas 为径向基函数,一般为高斯函数:其光滑性好,径向对称,形式简单,有 称之为欧几里得距离。,2023/10/3,5,径向基函数的图形和符号如图7.2 所示。图7.2 径向基传输函数的传输特性和符号,2023/10/3,6,2.径向基神经网络模型 径向基神经网络同样是一种前馈反向传播网络,它有两个网络层:隐层为径向基层;输出为一线性层,如图7.3 所示。输入向量 径向基层 线性层 图7.3 径向基函数网络模型,2023/10/3,7,网络的输出为,2023/10/3,8,式

3、中:表示取矩阵向量主对角线上的元素组成的列向量;“”和“”分别表示数量乘方或数量乘积(即矩阵中各对应元素的乘方或乘积)。,2023/10/3,9,下面讨论径向基网络的工作特性。从图7.2 所示的径向基传输函数可以看出,只有在距离为0时,其输出为1;而在距离为0.833 时,输出仅为0.5。假如给定一个输入向量,径向基神经元将根据各输入向量与每个神经元权值的距离输出一个值,那些与神经元权值相差很远(距离大)的输入向量产生的输出值趋于0,这些很小的输出值对线性神经元输出的影响可以忽略;相反,那些与神经元权值相差较小(距离小)的输入向量产生的输出值趋于1,从而激活第二层线性神经元的输出权值。,202

4、3/10/3,10,换句话说:径向基网络只对那些靠近(距离接近于0的中央位置)输入权值向量的输入产生响应。由于隐层对输入信号的响应,只在函数的中央位置产生较大的输出,即局部响应,所以该网络具有很好的局部逼近能力。,2023/10/3,11,可以从两方面理解径向基网络的工作原理:(1)从函数逼近的观点看:若把网络看成是对未知函数的逼近,则任何函数都可以表示成一组基函数的加权和。在径向基网络中,相当于选择各隐层神经元的传输函数,使之构成一组基函数逼近未知函数。,2023/10/3,12,(2)从模式识别的观点看:总可以将低维空间非线性可分的问题映射到高维空间,使其在高维空间线性可分。在径向基网络中

5、,隐层的神经元数目一般比标准的BP网络的要多,构成高维的隐单元空间,同时,隐层神经元的传输函数为非线性函数,从而完成从输入空间到隐单元空间的非线性变换。只要隐层神经元的数目足够多,就可以使输入模式在隐层的高维输出空间线性可分。,2023/10/3,13,在径向基网络中,输出层为线性层,完成对隐层空间模式的线性分类,即提供从隐单元空间到输出空间的一种线性变换。,2023/10/3,14,7.2 径向基网络的创建与学习过程 从图7.3 所示径向基网络的结构上看,当隐层和输出层神经元的权值与阈值确定后,网络的输出也就确定了。所以径向基网络的学习,仍然是各网络层权值和阈值的修正过程。因为径向基网络设计

6、函数newrbe和newrb在创建径向基网络的过程中,就以不同的方式完成了权值和阈值的选取和修正,所以径向基网络没有专门的训练和学习函数,下面分别予以说明。,2023/10/3,15,1.newrbe 创建径向基网络的过程 以newrbe 创建径向基网络的步骤:(1)在隐含层,径向基神经元数目等于输入样本数,其权值等于输入向量的转置:,2023/10/3,16,所有径向基神经元的阈值为 式中:spread 为径向基函数的扩展系数,默认值为1.0。合理选择spread 是很重要的,spread 的值越大,其输出结果越光滑;但太大的spread 值会导致数值计算上的困难。若在设计网络时,出现“Ra

7、nk deficient”,警告时,应考虑减小spread 的值,重新进行设计。,2023/10/3,17,(2)在输出层,以径向基神经元的输出作为线性网络层神经元的输入,确定线性层神经元的权值和阈值,使之满足(解如下方程)可以看出,上述过程只要进行一次就可以得到一个零误差的径向基网络:所以newrbe 创建径向基网络的速度是非常快的。但由于其径向基神经元数等于输入样本数,、当输入向量数目很大时,将导致网络的规模也很大,所以更有效的方法是采用newrb 创建径向基网络。,2023/10/3,18,2.newrb 创建径向基网络的过程 当以newrb 创建径向基网络时,开始是没有径向基神经元的,

8、可通过以下步骤,逐渐增加径向神经元的数目:(1)以所有的输入样本对网络进行仿真。(2)找到误差最大的一个输入样本。(3)增加一个径向基神经元:其权值等于该样本输入向量的转置;阈值:spread 的选择与newrbe 一样。,2023/10/3,19,(4)以径向基神经元输出的点积作为线性网络层神经元的输入,重新设计线性网络层,使其误差最小。(5)当均方误差未达到规定的误差性能指标,且神经元的数目未达到规定的上限值时,重复以上步骤,直至网络的均方误差达到规定的误差性能指标,或神经元的数目达到规定的上限值时为止。,2023/10/3,20,可以着出,创建径向基网络时,newrb是逐渐增加径向基神经

9、元数的,所以可以获得比newrbe 更小规模的径向基网络。,关于径向基网络设计函数newrbe 和newrb 的译解可参见附录。,2023/10/3,21,7.3 其他径向基神经网络1泛化回归神经网络 泛化回归神经网络GRNN(generalized regression NN)常用于函数逼近,其网络结构如图7.4所示,它具有一个径向基网络层和一个特殊的线性网络层。,2023/10/3,22,输入向量 径向基层 线性层 图7.4 GRNN 模型,2023/10/3,23,图中,标有nprod的方框实现 的归一化点乘运算(以权值函数normprod 完成),其结果 的点乘,并以 所有元素的和进行

10、归一化,最后 作为线性神经元的加权输入。,2023/10/3,24,GRNN 的第一层与newrbe创建的RBF一样,其径向基神经元数目等于输入样本数:其权值等于输入向量的转置;阈值为:其第二层神经元数也等于输入样本数,其:目标向量为 权值等于目标向量为 无阈值向量。同样,不需要训练。函数newgrnn的详解可参见附录。,2023/10/3,25,2 概率神经网络 概率神经网络PNN(probabilistic neural networks)常用于模式分类,其网络结构如图7.5所示,它具有一个径向基网络层和一个竞争型网络层。输入向量 径向基层 竞争层 图7.5 PNN 模型,2023/10/

11、3,26,PNN的第一层与newrbe创建的RBF一样,其径向基神经元数目等于输入样本数,其权值等于输入向量的转置,阈值为:第一层将各种模式以与权值向量的距离加权表示与训练样本的相似程度。,2023/10/3,27,PNN的第二层神经元数等于分类模式数,其权值为目标向量,无阈值向量。第二层神经元的传输函数为竞争型传输函数,它选择那些距离加权值最大(最可能的训练样本模式)的,作为网络的输出,即对输入向量最可能的模式分类结果。函数newpnn 的详解可参见附录。,2023/10/3,28,需要提醒的是:第二层的目标向量T表示的各种模式和训练样本顺序的关系。其行号表示模式分类号;其列号表示训练样本序

12、号(位置)。如:T(2,3)=1 表示第三个训练样本的模式分类号为2。若T(2,3)=0,则表示2类模式不是第三个训练样本对应的模式分类号。newpnn是采用T中元素值为1的元素,可以用ind2vec来实现。,2023/10/3,29,例如:p=0 0 0 1 1 1-1-1-1;0 1-1 0 1-1 0 1-1tc=1 2 2 1 1 1 1 2 1;t=ind2vec(tc)则:t=(1,1)1(2,2)1(2,8)1(1,9)1,2023/10/3,30,同样,sim对PNN进行仿真的结果,也只取其元素值中为1的元素,表示的是模式分类结果和待测样本之间的关系。行号表示模式分类号,列号表

13、示待测样本序号,例如:net=newpnn(p,t);p=0 0 1;1-1 1;y=sim(net,p),2023/10/3,31,结果为:y=(2,1)1(2,2)1(1,3)1为了清晰的表示分类结果,可以用函数vec2ind yc=vec2ind(y)则:yc=2 2 1,2023/10/3,32,1用于曲线拟合的RBF 网络 径向基网络在完成函数逼近任务时花费的时间最短,所用的神经元个数也较少。例7.1 为了比较径向基网络与BP网络的结果,仍以例6.3进行曲线拟合为例,重新列出系统输出y与输入x 的部分对应关系,如表7.1所示。设计一RBF神经网络,完成 的曲线拟合。,2023/10/

14、3,33,表7.1 函数 的部分对应关系,2023/10/3,34,为了比较径向基网络和BP网络设计所花费的时间,在创建和训练BP网络的MATLAB 程序中加人两条语句,进行计时,重写程序如下。例5.3 创建和训练BP 网络的MATLAB 程序%Example53Tr clear all;,2023/10/3,35,p=-1:0.1:0.9;t=-0.832-0.423-0.024 0.344 1.282 3.456 4.02 3.232 2.102 1.504 0.248 1.242 2.344 3.262 2.052 1.684 1.022 2.224 3.022 1.984;tl=clo

15、ck;%计时开始net=newff(-1 1,15 1,tansig purelin,traingdx,learngdm);,2023/10/3,36,=2500;=0.001;=10;=0.05;net=train(net,p,t);datat=etime(clock,tl)%计算设计网络所用的时间save E53net net;,2023/10/3,37,由于本例的BP网络将随机初始化权值和阈值,所以每次运行上述程序的结果将不相同,不同的机型也将影响网络设计的时间。其中的一种运行结果表明,BP网络从定义网络到训练完成所需的时间为32.46s。采用径向基网络,网络设计的MATLAB 程序如下

16、。,2023/10/3,38,例7.1 设计RBF 神经网络的MATLAB程序%Example53Trclear all;%定义输入向量和目标向量p=-1:0.1:0.9;t=-0.832-0.423-0.024 0.344 1.282 3.456 4.02 3.232 2.102 1.504 0.248 1.242 2.344 3.262 2.052 1.684 1.022 2.224 3.022 1.984;%设计径向基网络,2023/10/3,39,t1=clock%计时开始%net=newrbe(p,t,0.1);net=newrb(p,t,0.1,0.1,20,5);datat=et

17、ime(clock,t1)%计算设计网络所用的时间%存储设计好的神经网络save net61 net;,2023/10/3,40,运行结果为 NEWRB,Neurons=0 SSE=22.3653 NEWRB,Neurons=5 SSE=4.99188 NEWRB,Neurons=10 SSE=0.696357 NEWRB,Neurons=15 SSE=0.0742263 datat=0.74100 网络设计花费的时间为0.741s,比BP网络训练所需的时间32.46s要少得多。训练的误差性能曲线如图7.6 所示。,2023/10/3,41,图7.6 例7.1 网络设计的误差性能曲线,2023

18、/10/3,42,例7.1 RBF 神经网络的MATLAB 仿真程序%Example6lsim clear all;%绘制训练样本图形p=-1:0.1:0.9;t=-0.832-0.423-0.024 0.344 1.282 3.456 4.02 3.232 2.102 1.504 0.248 1.242 2.344 3.262 2.052 1.684 1.022 2.224 3.022 1.984;hold on plot(p,t,*);,2023/10/3,43,%网络仿真load net61 net;i=-1:0.05:0.9;r=sim(net,i)%绘制函数拟合曲线 plot(i,r

19、);hold off 运行结果如图7.7 所示,实线为得到的拟合曲线;*为训练样本。,2023/10/3,44,图7.7 例7.1 的仿真结果 读者不妨以不同的径向基扩展常数Spread 设计该网络,看看运行的结果有什么不同。,2023/10/3,45,2用于模式分类的RBF 网络例7.2 以PNN 完成图7.8 所示的两类模式的分类。图7.8 例7.2 待分类模式解:将正方形规定为第一类模式,三角形规定为第二类模式。以(p1,p2)代表各模式样本的位置,形成相应的输入向量。,2023/10/3,46,例7.2 设计PNN 的MATLAB 程序%Example62Trclear all;%定义

20、输入向量和目标向量p=0 0 0 1 1 1-1-1-1;0 1-1 0 1-1 0 1-1;tc=1 1 2 2 1 1 1 2 1;t=ind2vec(tc);%设计PNN tl=clock;%计时开始net=newpnn(p,t,0.7),2023/10/3,47,datat=etime(clock,tl)%计算设计网络所用的时间%存储训练好的神经网络save net62 net;网络设计时间:datat=3.74s。例7.2 PNN 的MATLAB 仿真程序%Example62sim clear all;,2023/10/3,48,%定义待测试样本输入向量p=0 0 0 1 1 1-1

21、-1-1;0 1-1 0 1-1 0 1-1;%加载训练好的神经网络load net62 net;%神经网络仿真,对待测试样本进行分类y=sim(net,p);yc=vec2ind(y)仿真结果为yc=1 1 2 2 1 1 1 2 1,2023/10/3,49,结果很好地完成了分类。读者不妨采用不同的径向基扩展常数spread 设计该网络,看看分类结果有什么不同。本章讨论了径向基函数网络模型及其工作原理,对径向基函数网络的设计方法进行了较详细的阐述,并以实例说明了该网络模型的MATLAB仿真程序设计方法。径向基函数网络的优势在于其创建和训练网络的速度快,特别适于诸如实时控制等对时间要求高的场合。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号