RBF(径向基)神经网络 非线性函数回归的实现
径向基神将网络的神经元模型: 径向基神经王阔的节点激活函数采用径向基函数,通常定义空间任意一点到某一中心之间的欧氏距离的单调函数。
从模型可以得到,径向基神经网络的激活函数的输入向量是 输入向量和权重向量之间的距离作为自变量,随着权值和输入向量之间的距离减少,网络的输出时递增的,当输入向量和权重向量相等的时,达到最大值1,利用径向基神经网络和线性神经元可以建立广义回归神经网络,此种神经网络额可以适用函数的逼近方面的应用,径向基神经网络和竞争神经网络可以建立被概率神经网络,此种神经网络适合解决分类问题。
RBF神经网络的函数逼近问题:
% RBF网络的回归--非线性函数回归的实现%% 清空环境变量
clc
clear%% 产生输入 输出数据
% 设置步长
interval=0.01;% 产生x1 x2
x1=-1.5:interval:1.5;
x2=-1.5:interval:1.5;% 按照函数先求得相应的函数值,作为网络的输出。
F =20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2); %% 网络建立和训练
% 网络建立 输入为[x1;x2],输出为F。Spread使用默认。
net=newrbe([x1;x2],F)%% 网络的效果验证% 我们将原数据回带,测试网络效果:
ty=sim(net,[x1;x2]);% 我们使用图像来看网络对非线性函数的拟合效果
figure
plot3(x1,x2,F,'rd');
hold on;
plot3(x1,x2,ty,'b-.');
view(113,36)
title('可视化的方法观察准确RBF神经网络的拟合效果')
xlabel('x1')
ylabel('x2')
zlabel('F')
grid on
newrb()函数-------------------------该函数用来设计一个径向基神经网络,
[net tr]=newrb(p,t,goal,spread,MN,DF)
goal为均方误差,sperad表示径向基函数的扩展速度,spread越大,输出结果月光花,但是太大耳朵spread值会导致数值计算的困难,MN表示你神经元的最大数目, DF为两次显示之间所添加的神经元数目, tr表示训练记录,
径向基神经网络对函数的拟合效果:
% RBF网络的回归--非线性函数回归的实现%% 清空环境变量
clc
clear
%% 产生训练样本(训练输入,训练输出)
% ld为样本例数
ld=400; % 产生2*ld的矩阵
x=rand(2,ld); % 将x转换到[-1.5 1.5]之间
x=(x-0.5)*1.5*2; % x的第一行为x1,第二行为x2.
x1=x(1,:);
x2=x(2,:);% 计算网络输出F值
F=20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);%% 建立RBF神经网络
% 采用approximate RBF神经网络。spread为默认值
net=newrb(x,F);%% 建立测试样本% generate the testing data
interval=0.1;
[i, j]=meshgrid(-1.5:interval:1.5);
row=size(i);
tx1=i(:);
tx1=tx1';
tx2=j(:);
tx2=tx2';
tx=[tx1;tx2];%% 使用建立的RBF网络进行模拟,得出网络输出
ty=sim(net,tx);%% 使用图像,画出3维图% 真正的函数图像
interval=0.1;
[x1, x2]=meshgrid(-1.5:interval:1.5);
F = 20+x1.^2-10*cos(2*pi*x1)+x2.^2-10*cos(2*pi*x2);
subplot(1,3,1)
mesh(x1,x2,F);
zlim([0,60])
title('真正的函数图像')% 网络得出的函数图像
v=reshape(ty,row);
subplot(1,3,2)
mesh(i,j,v);
zlim([0,60])
title('RBF神经网络结果')% 误差图像
subplot(1,3,3)
mesh(x1,x2,F-v);
zlim([0,60])
title('误差图像')set(gcf,'position',[300 ,250,900,400])
RBF(径向基)神经网络 非线性函数回归的实现相关推荐
- 回归预测 | MATLAB实现RBF径向基神经网络非线性函数回归
回归预测 | MATLAB实现RBF径向基神经网络多非线性函数回归 目录 回归预测 | MATLAB实现RBF径向基神经网络多非线性函数回归 基本介绍 程序设计 学习总结 参考资料 基本介绍 RBF神 ...
- 机器学习 | MATLAB实现RBF径向基神经网络newrbe参数设定
机器学习 | MATLAB实现RBF径向基神经网络newrbe参数设定 目录 机器学习 | MATLAB实现RBF径向基神经网络newrbe参数设定 基本介绍 函数描述 寄语生活 参考资料 开心一刻 ...
- 数据拟合 | MATLAB实现RBF径向基神经网络多输入数据拟合
数据拟合 | MATLAB实现RBF径向基神经网络多输入数据拟合 目录 数据拟合 | MATLAB实现RBF径向基神经网络多输入数据拟合 基本介绍 程序设计 模型差异 参考资料 基本介绍 RBF神将网 ...
- 回归预测 | MATLAB实现RBF径向基神经网络多输入单输出
回归预测 | MATLAB实现RBF径向基神经网络多输入单输出 目录 回归预测 | MATLAB实现RBF径向基神经网络多输入单输出 预测效果 基本介绍 模型结构 程序设计 参考资料 预测效果 基本介 ...
- 时间序列分析 | RBF径向基神经网络时间序列预测(Matlab完整程序)
时间序列分析 | RBF径向基神经网络时间序列预测(Matlab完整程序) 目录 时间序列分析 | RBF径向基神经网络时间序列预测(Matlab完整程序) 预测结果 评价指标 模型介绍 完整程序 预 ...
- 回归预测 | MATLAB实现RBF径向基神经网络多输入多输出预测
回归预测 | MATLAB实现RBF径向基神经网络多输入多输出预测 目录 回归预测 | MATLAB实现RBF径向基神经网络多输入多输出预测 预测效果 基本介绍 模型结构 程序设计 参考资料 预测效果 ...
- 模式分类识别 | RBF径向基神经网络多特征分类预测(Matlab完整程序)
模式分类识别 | RBF径向基神经网络多特征分类预测(Matlab完整程序) 目录 模式分类识别 | RBF径向基神经网络多特征分类预测(Matlab完整程序) 预测结果 基本介绍 程序设计 参考资料 ...
- RBF径向基神经网络
RBF径向基函数神经网络的优点:逼近能力,分类能力和学习速度等方面都优于BP神经网络,结构简单.训练简洁.学习收敛速度快.能够逼近任意非线性函数,克服局部极小值问题. RBF是具有单隐层的三层前向网络 ...
- python编写自己的RBF径向基神经网络
目录 前言 一.RBF神经网络 1.代码 总结 前言 径向基函数神经网络是一种前馈式神经网络,包含输入层.隐含层和输出层,其多输入单输出网络结构如图2所示.根据径向基函数中心确定的方法不同,径向基神经 ...
最新文章
- OpenGLES 关于 数学 的分支 - 线性变化量、离散量、随机量
- ASP.NET 如何取得 Request URL 的各個部分
- 算法提高课-搜索-Flood fill算法-AcWing 1097. 池塘计数:flood fill、bfs
- ▲为什么要用css Sprite技术?
- 西电开源社区Ubuntu 10.04软件源
- 奥本海姆信号与系统(第二版)笔记
- 高中化学实验室建设及常规设备配置
- 半导体物理学——(四)半导体的导电性
- 大众点评霸王餐自动报名autojs(更新版)
- 非标自动化设计全过程,建议收藏
- Unity入门——UI界面
- 看看月光blog2014年都搞些啥
- 苹果公司不给iPhone配大电池的原因
- M580PLC以太网读通讯和写通讯
- NR PRACH(六) type 2(2-step) RA基本过程及时频域映射
- 如何提高内存卡的读写速度
- 怎么成为开源贡献者_我如何成为一名更好的设计师并通过Jolloficons为开源做贡献...
- Flutter实践之高仿有妖气漫画,移动客户端开发工程师专业
- 安全运营四要素之资产、脆弱性、威胁和事件
- 5-2 人际资源整合-正确看待自己的领导-与领导日常互动-说服领导的技巧
热门文章
- ros创建功能包和编译过程问题处理
- 服务机器人---充电级和行进面
- Android7.0 Rild工作流程
- js添加多个子节点_JS创建DOM节点-使用document.createElement()创建子节点或同级节点...
- python无法打印unicode编码_【整理】Python中实际上已经得到了正确的Unicode或某种编码的字符,但是看起来或打印出来却是乱码...
- (四)Java B2B2C o2o多用户商城 springcloud架构-断路器(Hystrix)
- Asp.net core使用IIS在windows上进行托管
- c#获取电脑硬件信息参数说明(硬盘篇 Win32_DiskDrive)
- 关于css的一些特别用法
- android 布局权重问题(最近布局经常坑爹)