>> P=0:1:20; >> T=exp(P).*sin(P); >> net=newgrnn(P,T,0.7); >> p=0:0.1:20; >> t=sim(net,p); >> plot(P,T,'*r',p,t)
4. net = newpnn(P,T,spread)概率神经网络(probabilistic neural network) 该网络与前面三个最大的区别在于,第二层不再是线性层而是竞争层,并且竞争层没有阀值,其它同newbre,故PNN网络主要用于解决分类问题。 注意:由于第二层是竞争层,故输入/输出向量必须使用ind2vec/vec2ind函数进行转换,也就是将索引转换为向量或者向量转换为索引。
5. simurb ( ) 仿真函数。
a=simurb(p,w1,b1,w2,b2)
式中,p为输入矢量,w1,b1为径向基神经元层的权值和阀值,w2,b2为线性神经元的权值和阀值。
6. rodbas( )
径向基传递函数,其使用方式多种: radbas(n) radbas(z,b)
其中radbas(n)函数可对网络输入矩阵n中的所有元素如同径向基函数。 radbas(z,b)函数提供成批处理矢量,并且提供阀值的情况,这时阀值b与加权输入矩阵z是分开的,阀值b乘以z 中的每个矢量,以形成网络的输入矢量,然后利用径向基函数网络输入转换成输出。
对于径向基函数的训练可用两个函数来实现: 7. 训练函数 (1)solverb ( )
利用solverb ( )函数可得到径向基函数隐层的权值w1和阀值b1,还得到了线性输出层的权值w2和阀值b2。
11
[w1, b1, w2, b2]=solverb(p, t, tp) 其中设计参数tp指示如何进行训练。
tp(1)指定更新显示之间的迭代次数,其缺省值25; tp(2)指定最多的神经元数,其缺省值100; tp(3)误差平方和门限,缺省值为0.02; tp(4)指定径向基层的宽度,缺省值1.0。 (2)solverbe( )
函数solverbe( )的功能是精确径向基函数求解。利用solverbe( )也可得到径向基网络隐层的权值w1和阀值b1,以及线性输出层的权值w2和阀值b2。其调用格式如下
[w1, b1, w2, b2]=solverbe(p, t, sc)
式中的可逆变量sc为径向基函数的宽度,即从函数值为1到其值为0.5之间的距离,其缺省值为1。
3.4 RBF网络的应用举例
例2 建立一个径向基神经网络,对非线性函数y=sqrt(x)进行逼近,并作出网络的逼近误差曲线。
%输入从0开始变化到5, 每次变化幅度为0.1 x=0:0.1:5; y=sqrt(x);
%建立一个目标误差为0, 径向基函数的分布密度为0.5,隐含层神经元个数的最大值为20,每增加5个神经元显示一次结果
net=newrb(x,y,0,0.5,20,5); t=sim(net,x); plot(x,y-t,’*-’)
误差曲线和逼近函数曲线如下:
12
13
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库智能计算:神经网络(3)在线全文阅读。
相关推荐: