浅谈BP与RBF
BP网络在训练过程中需要对网络的所有权值和阈值进行修正,把它称之为全局逼近神经网络.全局逼近神经网络学习速度很慢,所以在一些实时性较强的场合(如实时控制),其应用受到限制.
RBF网络是一种局部逼近网络,对于每个训练祥本,它只需要对少量的权值和阈值进行修正,因此训练速度快。
matlab实现代码
newrb()---新建一个径向基神经网络
newrbe()---新建一个严格的径向基神经网络
newgrnn()---新建一个广义回归径向基神经网络
newpnn()---新建一个概率径向基神经网络
net=newrb(P,T,g,s)
P:输入向量 T:输出向量 g:均方差精度(拟合能力) s:径向基层的散布常数(泛化能力)
sim(net,P)---仿真
复制代码
函数逼近示例
x=-4:0.08:4;
t=1.1*(1-x+2*x.^2).*exp(-x.^2/2)+0.1*rand(1,101);
plot(x,t,'+');
hold on
net=newrb(x,t,0.001,1,1000000);
Y=net(x)
figure(1)
plot(x,Y,'g');
title('RBF神经网络函数逼近');
xlabel('input');
ylabel('output');
figure(2)
e=Y-t;
plot(x,e,'b-');
复制代码
\begin{aligned} x & = &(t+0.5\pi)sin(t+0.5\pi) \\ y & = & (t+0.5\pi)cos(t+0.5\pi) \\ z & = & 1.5t\\ & &0\le t \le2\pi \end{aligned} \right.
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
相关推荐