【剖析】为什么说RBF神经网络的误差为0

本文来自《老饼讲解-BP神经网络》https://www.bbbdata.com/

机器学习中的模型非常的多,但如果要问有没有这样的一个模型,它的训练误差为0,那么就非RBF神经网络莫属了!下面我们来聊聊,为什么RBF神经网络的训练误差为0。

一、RBF神经网络是什么

知道RBF神经网络的人都知道,但不知道RBF神经网络的人还是不知道。所以简单提一下,RBF神经网络是一个什么东西。

1.1.RBF神经网络的原理

如下所示,就是一个RBF函数(钟型函数),RBF函数很多,最常用的就是高斯函数

RBF神经网络就是通过RBF径向基函数来"凑"出可以拟合所有训练样本点的目标曲线。

从图中可以看到,RBF神经网络就是利用RBF函数的局部非0性,只要每个样本点都拱一个RBF,最后就能轻轻松松拼出目标曲线了。

1.2.RBF神经网络的数学表达式

从RBF的原理,可以轻易得到RBF神经网络的数学表达式。 以2输入3个隐节点为例,RBF 神经网络模型的数学表达式形式如下

从表达式可以看到,模型的输出y就是多个RBF函数之和。

二、RBF神经网络为什么误差为0

2.1.RBF神经网络是如何求得0误差参数的

在RBF神经网络中,有多少个样本点,就有多少个隐节点(即RBF函数)。而隐层的权重就是输入样本(即隐层参数是不需要求解的),最终只需求解输出层的权重与阈值。由于每个RBF的值都可以直接计算得到(因为隐层参数已知),因此RBF输出层的参数只需要求解以下的线性方程组就可以得到:

当样本有n个时,就有n个RBF,因此上述线性方程组的列大于行,所以必然有非0解使得上述方程组成立。因此,RBF神经网络的训练误差也就必然为0

2.2.为什么有的RBF神经网络误差不为0

当我们在matlab中用newrb构建一个RBF神经网络时,会发现误差并不为0。这是因为newrb使用了正交最小二乘法来求解RBF,它的目的是尽量地减少一些隐节点。

因为RBF神经网络的隐节点个数与样本个数一致,因此在样本较多时,网络也比较复杂,因此newrb会在保持误差不太大的前提下,尽量减少一些隐节点。虽然牺牲了一部分训练精度,但加强了网络的泛化能力,所以也不偿是件好事。


RBF神经网络真是一个有趣又有效的模型!

相关链接:

《老饼讲解-机器学习》:老饼讲解-机器学习教程-通俗易懂

《老饼讲解-神经网络》:老饼讲解-matlab神经网络-通俗易懂

《老饼讲解-神经网络》:老饼讲解-深度学习-通俗易懂

相关推荐
zhengyquan8 分钟前
7000mAh 电池 + 独立 AI 键,小米 18 Pro 是堆料还是突破?
大数据·人工智能
俊哥V10 分钟前
每日 AI 研究简报 · 2026-04-17
人工智能·ai
geneculture19 分钟前
意识的多学科定义:从16个视域,到融智学统合——基于“意+识”框架且区分“意识≠心智”系统研究
大数据·人工智能·融智学的重要应用·哲学与科学统一性·融智时代(杂志)·意识=意+识·智=信息处理+选择用意
昇腾CANN26 分钟前
码力全开特辑直播预告|4月20日19:00,PyPTO Tensor编程范式介绍
人工智能·昇腾·cann
悟乙己27 分钟前
andrej-karpathy-skills:让 AI 编程更靠谱 Karpathy 四大原则深度解析
人工智能·dreamweaver
不知名的老吴30 分钟前
AI辅助编程之生成测试用例
人工智能·测试用例
Ai1731639157934 分钟前
GB200 NVL72超节点深度解析:架构、生态与产业格局
大数据·服务器·人工智能·神经网络·机器学习·计算机视觉·架构
菜鸟‍35 分钟前
【论文学习】Transformer中的数据流动
深度学习·学习·transformer
Yolanda9438 分钟前
【人工智能】《从零搭建AI问答助手项目(二):模型选择》
人工智能
观远数据39 分钟前
跨部门BI推广权限治理指南:如何避免数据泄露与权责混乱
大数据·人工智能·数据分析