RBF神经网络

【例子】如何用newrbe训练一个RBF神经网络

作者 : 老饼 发表日期 : 2023-03-08 09:43:13 更新日期 : 2024-12-12 00:10:30
本站原创文章,转载请说明来自《老饼讲解-BP神经网络》www.bbbdata.com



newrbe是matlab中用来创建RBF径向基神经网络的一个函数,它使用的是插值求解方法

本文讲解newrbe的使用方法,以及出入参的意义,并通过具体的代码例子来展示newrbe的使用

通过本文,可以初步掌握matlab的newrbe函数,以及如何利用newrbe函数来创建一个RBF神经网络




   01. newrbe函数使用说明   




本节讲解newrbe函数的使用方法和相关参数的意义




    newrbe函数说明    


在matlab只需要调用newrbe就可以用RBF插值法构建一个RBF神经网络
newrbe的调用形式
newrbe的调用形式如下:
net = newrbe(P,T,spread)
newrbe的入参说明
newrbe只有三个入参:
👉P          :输入数据X                             
👉T          :输出数据Y                             
👉spread :用于控制径向基宽度的一个参数          
备注:需要注意的是,输入输出数据每列代表一个样本,每行代表一个变量
newrbe的出参说明
newrbe的出参只有一个:
👉net:返回的构建好的RBF神经网络                
RBF神经网络不需要训练,构建好后,只需要调用sim函数就可以使用网络进行预测






    newrbe使用示例-代码    


输入输出的数据如下:
 输入输出的数据
下面展示如何用newrbe构建一个RBF神经网络,并用x1,x2来预测y
%本代表用于展示如何使用newrbe构建一个RBF径向基神经网络
% 来自《老饼讲解-神经网络》www.bbbdata.com ,matlab版本:2018a   
%----数据准备----                              
x  = [-2,-1,0,1,2;-6,-2,0,3,8];                % 输入数据
y  = [3,2,3,1,2];                              % 输出数据
%----网络训练----                              
net = newrbe(x, y, 0.5);                       % 以X,Y建立径向基网络,目标误差为0.01,径向基的宽度参数spread=0.5
py = sim(net,x)                                % 用建好的网络进行预测,这里的x是要用来进行预测的输入

% ----打印结果----------
err_rate = mean(abs(py-y)./abs(y))             % 计算相对误差占比
plot(1:length(y),y,'*',1:length(y),py,'o')     % 绘制结果,x轴代表样本
legend('原始数据的y','网络预测的y')            % 添加图例
运行结果如下:
newrbe的运行结果  
newrbe的RBF神经网络预测结果 
可以看到,RBF神经网络的预测值与真实值完全一致
这并非偶然,因为本例用于预测的数据就是训练数据,而newrbe在训练数据上是0误差的






以上就是如何在matlab中用newrbe训练RBF径向基神经网络的全部内容了~








 End 




联系老饼