一、介绍

  1. 径向基函数网络(RBF网络)在matlab中有两种: rb和rbe

  • 二者区别可以参考 (2条消息) RBF神经网络通用函数 newrb, newrbe_LY-林雨的博客-CSDN博客

  1. 优点:结构简单、收敛速度快、能逼近任意非线性函数。

  1. 径向基函数网络由三层构成:

  • 输入层:节点(神经元)个数等于输入的维数;

  • 隐含层:节点(神经元)个数待定;

  • 输出层:节点(神经元)个数等于输出的维数。

  1. 径向基函数能使线性不可分问题变得线性可分。

  1. 径向基函数网络还有两种变形,即概率神经网络(pnn)和广义回归神经网络(grnn)。

二、Matlab

  1. 在Matlab中,RBF网络不需要训练,创建了就可以使用。

  1. Matlab里的径向基函数网络有 netrb(近似的)(对应于广义网络) 和 netrbe(精确的)(对应于正则化网络) 两种。

  1. 对于 广义网络 和 正则化网络 先不用太纠结它是什么东西,二者只是略有区别。

三、对rbe、pnn和grnn 通过网络图与函数代码进行理解。

  1. rbe 在 Matlab中的网络框架图1与函数:

网络框架图1

function [w1,b1,w2,b2] = designrbe(p,t,spread)  [r,q] = size(p); % r是输入的维数(隐藏层神经元个数),q是样本数,即每一列是一个样本[s2,q] = size(t);                             % s2是输出的维数(图1中的S2)(输出层神经元个数),q是样本数w1 = p';                                      % 将p取转置,则变为q×r的矩阵,与网络框架图中IW的S1×R对应% 则每一行是一个样本,是因为要使用”dist“函数,解释在下面b1 = ones(q,1)*sqrt(-log(.5))/spread;%spread很重要,但是这里为什么这样我还不太清楚a1 = radbas(dist(w1,p).*(b1*ones(1,q)));x = t/[a1; ones(1,q)];                        % x就是图1的LW权重矩阵 (包含偏置的权重,偏置值为1)w2 = x(:,1:q);b2 = x(:,q+1);end
  • LW矩阵是权重矩阵,其元素个数是 S2XS1, S2是输出个数,如果是1的情况下,LW的列数就是S1,即向量a的元素个数 , 输出这里选择线性函数作为激活函数。

代码解读

Z=dist(W,P,FP)
  • dist函数中,要求W的每一行是一个输入向量(样本),P中每一列是一个输入向量(样本)

  • radbas 径向基函数

  1. pnn 在 Matlab中的网络框架图2与函数:

网络框架图2

function net = create_network(param)% Datap = param.inputs;t = param.targets;if iscell(p), p = cell2mat(p); endif iscell(t), t = cell2mat(t); end% Dimensions[R,Q] = size(p);[S,Q] = size(t);  % Architecturenet = network(1,2,[1;0],[1;0],[0 0;1 0],[0 1]);%net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect) %此示例说明如何创建一个单输入的两层前馈网络。只有第一层有偏置。输入权重从输入 1 连接到层 1。%层权重从层 1 连接到层 2。层 2 是网络输出并有一个目标。% Simulationnet.inputs{1}.size = R;net.inputWeights{1,1}.weightFcn = 'dist';net.layers{1}.netInputFcn = 'netprod';net.layers{1}.transferFcn = 'radbas';net.layers{1}.size = Q;net.layers{2}.size = S;  %S就是图上的K,即输入数据的种类数net.layers{2}.transferFcn = 'compet';net.outputs{2}.exampleOutput = t;% Weight and Bias Valuesnet.b{1} = zeros(Q,1)+sqrt(-log(.5))/param.spread;net.iw{1,1} = p';net.lw{2,1} = t;
end
  1. grnn 在 Matlab中的网络框架图3与函数:

网络框架图3

function net = create_network(param)% Datap = param.inputs;t = param.targets;if iscell(p), p = cell2mat(p); endif iscell(t), t = cell2mat(t); end% Dimensions[R,Q] = size(p);[S,Q] = size(t);% Architecturenet = network(1,2,[1;0],[1;0],[0 0;1 0],[0 1]);% Simulationnet.inputs{1}.size = R;net.layers{1}.size = Q;net.inputWeights{1,1}.weightFcn = 'dist';net.layers{1}.netInputFcn = 'netprod';net.layers{1}.transferFcn = 'radbasn';net.layers{2}.size = S;net.layerWeights{2,1}.weightFcn = 'dotprod';% Weight and Bias Valuesnet.b{1} = zeros(Q,1)+sqrt(-log(.5))/param.spread;net.iw{1,1} = p';net.lw{2,1} = t;
end

Matlab-RBF网络(径向基函数网络)-rbepnngrnn相关推荐

  1. matlab rbe神经网络代码,第五课 径向基函数网络(RBFN) 人工神经网络理论及应用 教学课件.ppt...

    第五课 径向基函数网络(RBFN) 人工神经网络理论及应用 教学课件 人工神经网络理论及应用 屈桢深 哈尔滨工业大学 准备知识:矩阵QR分解 非奇异矩阵P的正交三角分解:P=QR 证明思路:对P中各向 ...

  2. pytorch 实现径向基函数网络(RBF Network)

    文章目录 径向基函数网络 pytorch 实现 时间序列预测 多变量序列的多步预测结果展示 径向基函数网络 f(x)=w0+∑i=1Nwiϕ(x;ci),=[w0w1⋯wN][1ϕ(x;c1)⋮ϕ(x ...

  3. 径向基函数网络初认识

    一种结构简单,收敛速度快,能够逼近任意非线性函数的网络--径向基网络(RBF). 径向基网络可以分为正则化网络和广义网络,其中广义网络在工程实践中被广泛应用,它可以由正则化网络稍加变化得到. 径向基函 ...

  4. rbf网络c语言程序设计,rbf网络(径向基函数插值)

    任何神经网络的隐藏节点都不是越多越好.首先来讲吗,增加神经网络的隐藏节点会增大运算量,神经网络训练和测试需要的的时间就越长,降低了什么网络的学习速率,. rbf神经来网络即径向基函数神经网络(Radi ...

  5. 神经网络与机器学习 笔记—核方法和径向基函数网络(下)

    径向基函数(RBF)网络结构,基于产值理论 输入层,由m0个源节点组成,其中m0是输入向量x的维数. 隐藏层,由和训练样本的大小N相同个数的计算单元组成,每个单元都从数学上用一个径向基函数描述: 第j ...

  6. 神经网络与机器学习 笔记—核方法和径向基函数网络(上)

    对于神经网络的监督学习有多种不同方法.之前一直总结整理的多层感知器反向传播算法,可以看做是递归技术的应用,这种技术在统计学中通称为随机逼近. 这次是采用不同的途径,通过包含如下两个阶段的混合方式解决非 ...

  7. 神经网络——MLP(多层感知机)和RBF(径向基函数神经网络)

    一.整体概念 神经元 激活值和激活函数 二.MLP 三.RBF 参考: Principles of training multi-layer neural network using backprop ...

  8. 核方法---径向基函数网络

    为什么80%的码农都做不了架构师?>>>    Nadarayas-Watson模型 转载于:https://my.oschina.net/liyangke/blog/2986510

  9. matlab径向基网络,MATLAB——径向基网络拟合曲线和分类

    1.广义RBF P=:.:; rand('state',pi); %指定状态,产生相同的随机数 T=sin(*P)+rand(,length(P)); % 给正弦函数加噪声 plot(P,T,'o') ...

最新文章

  1. 个人品牌的思考--《赢在中国》(2008-04-01)
  2. 什么是m叉树_国考临近考试了,感觉已经没有进步空间了,最后关头还有没有什么提成成绩的好方法?...
  3. Linux:关于头文件的位置
  4. CentOS安装Etcd
  5. Jenkins+Ant自动布署war
  6. 网页特效代码大全网址
  7. mysql-8.0.11安装步骤
  8. 百度智能云新型产品了解
  9. 什么的SIT测试?什么是UAT测试?
  10. 一个简易的QQ魔法卡片炼卡消耗计算器
  11. 百度网盘如何提高下载速度
  12. Mooc视频字幕提取
  13. 微信小程序开发工具整理代码快捷键
  14. 如何下载腾讯课堂网页版的历史回放(电脑端)大多网页上的视频均可下载
  15. 【模电】习题知识点总结(持续更新ing)
  16. 【大话设计模式-2】UML 类图的绘制(源码案例分析)
  17. python如何定义函数_python如何定义函数
  18. vue 快速入门、常用指令(1)
  19. 结对编程2 单元测试
  20. 峰值检测(个人笔记)

热门文章

  1. 她是直播聊学习成“网红”的北大博士!毕业后入职民办学校,年薪70万
  2. golang xorm 自定义日志记录器,使用zap实现日志输出、切割日志
  3. 微信小程序开发和APP开发有哪些区别
  4. 央视新闻同款 教你1分钟做出三维地球动画特效
  5. 常用设计模式系列(十)—装饰者模式
  6. 2021-02-28
  7. 开启mybatis属性使用驼峰的命名
  8. css firefox火狐浏览器下的兼容性问题
  9. 【工程测试与训练】使用BiSeNetv2测试、训练cityscapes数据集、训练自己的数据集
  10. 图像处理之图像的几何变换