具体说说-RBF神经网络-newrbe函数和newrb函数的区别

刚开始接触RBF神经网络时,会发现matlab提供了newrb和newrbe两个函数来构建RBF神经网络,那到底该使用哪一个呢?其实只要知道它们的区别,自然就知道该使用哪一个了。下面我们就来说说newrb和newrbe的区别。

一、newrbe函数

1.1. newrbe函数-简单介绍

newrbe函数是构建RBF神经网络最基础的方法,它使用的是插值法。简单来说,就是给每一个训练样本点都构建一个RBF隐节点,例如现在训练的有10000个样本,那么最终构建出来的模型就会有10000个隐节点。不懂RBF插值法原理的可以参考《RBF神经网络-训练原理》。

1.2. newrbe函数-使用说明

newrbe函数的使用说明如下:

1.3. newrbe函数-使用示例

下面是一个使用newrb来构建RBF神经网络的例子:

matlab 复制代码
%----数据准备----                              
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建立RBF神经网络,RBF宽度参数spread=0.5
py = sim(net,x)                                % 用建好的网络进行预测,这里的x是要用来进行预测的输入

以上就是newrbe函数了,接下来我们再看看newrb函数。

二、newrb函数

2.1. newrb函数-简单介绍

为什么会有newrb函数呢,这主要是newrbe函数训练出来的隐节点过多,就如上面所说的,10000个样本就有10000个隐节点,这显然是太多了,那么就到newrb出场了,它使用的是ols法来构建RBF神经网络,它的原理其实和插值法是类似的,只不过会尽量的减少隐节点的个数,当然,这是有代价的,那就是特征预测的精度,所以,我们要预设一个目标误差,这样它会在尽量减少隐节点个数的同时、keep住误差不要超出我们的目标。

2.2. newrbe函数-使用说明

newrb函数的使用方法如下:

2.3. newrb函数-使用示例

下面是一个使用newr来构建RBF神经网络的例子:

matlab 复制代码
%--------数据准备----------                              
x  = [-2,-1,0,1,2;-6,-2,0,3,8];                 % 输入数据
y  = [3,2,3,1,2];                               % 输出数据
%--------网络训练----------                              
[net,tr] = newrb(x, y, 0.01,0.5);               % 以X,Y建立RBF神经网络,目标误差0.01,RBF宽度参数spread=0.5
py = sim(net,x);                                % 用建好的网络进行预测,这里的x是要用来进行预测的输入

可以看到,使用newrb时,要比newrbe多一个参数,也就是需要设置目标误差。

三、newrb和newrbe的差异

经过上面的了解,我们可以总结一下newrb和newrbe函数的差异:

  1. newrb使用的是OLS法,而newrbe使用的是插值法。
  2. newrb需要设置一个目标误差,而newrbe误差必为0。
  3. newrb比newrbe使用更少的隐节点,模型体积更小一些。
  4. newrb使用更少的隐节点,所以一般比newrbe的泛化能力更强一些。

结束语

以上就是newrb和newrbe函数的介绍和对比了,更多的可以参考matlab的官方文档,也可以参考《老饼讲解-RBF神经网络》系列教程。

相关推荐
冬奇Lab5 分钟前
一天一个开源项目(第252篇):Lightpanda —— 用 Zig 从零写的 AI 专用无头浏览器,内存省 16 倍、速度快 9 倍
人工智能·开源·资讯
在努力的前端小白31 分钟前
基于FastAPI+LangChain+LangGraph+Agent+多模态的AI Agent 有渔渔具网站
人工智能·langchain·vue·fastapi
锋行天下1 小时前
Langgraph-cli 本地构建失败,改用服务器docker构建的流程
人工智能·前端框架·全栈
释厄6231 小时前
群体投票双通道狭隘论——AI泡沫出清后的主角确权
人工智能
IT古董1 小时前
《Agent开发工程师成长指南》- 第4章 第2节:Prompt设计五要素——任务、角色、上下文、约束与输出格式
大数据·人工智能·prompt
霸道流氓气质2 小时前
AI 流式对话与实时聊天平台:SSE 解码竞态、有状态会话隔离与背压取消的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
孟健2 小时前
我把9个AI助理迁到了Grok Bot,连远程服务器都省了
人工智能·aigc·ai编程
AI+程序员在路上2 小时前
RV1126B 上支持的模型及全流程应用--从CNN及语音到 LLMVLM 与跨平台选型
linux·c语言·人工智能
AI备案指南-满满2 小时前
算法备案审核不通过,一般是什么原因?
java·人工智能·算法·大模型备案·算法备案·大模型登记
这个DBA有点耶2 小时前
连拿六年第一后宣布出海:国产数据库凭什么敢撕掉“平替”的标签?
数据库·人工智能·架构