神经网络学习笔记(一) RBF径向基函数神经网络

2018年08月06日 13:34:26 吃机智豆长大的少女乙 阅读数:2735

RBF径向基函数神经网络

初学神经网络,以下为综合其他博主学习材料及本人理解所得。

一、RBF神经网络的基本思想

1. 用RBF作为隐单元的“基”构成隐含层空间,将输入矢量直接(不通过权映射)映射到隐空间。

2.当RBF的中心点确定后,映射关系也就确定。(中心点通常通过K-MEANS聚类获得)

3.隐含层空间到输出空间的映射是线性的。(其中的权值通过最小二乘法获得)

4.将低维度映射到高维度,使得线性不可分转化为线性可分。

二、RBF神经网络模型

RBF神经网络神经元结构

1.输入层为向量,维度为m,样本个数为n,传输函数为线性函数。

2.隐藏层与输入层全连接,层内无连接,隐藏层神经元个数与样本个数相等,也就是n,传输函数为径向基函数。

输入的X1-Xm为离散点,我们要得到平滑函数,即通过基函数对样本点附近的点做插值。

通常我们将基函数设为高斯函数。

高斯函数: exp(-d^2/(2*sigma^2));

sigma:平滑因子,又称为基函数的拓展函数或者宽度。平滑因子控制高斯函数的平滑度。当平滑因子较低时,高斯函数就会尖锐,也就是边缘点的权值会很小,导致过拟合。

距离d:距离d就是向量离每一个隐含层中心的距离,通常隐含层的中心对应每个节点,所以每个距离就是节点矩阵自身相对自身每个点的距离。距离表示着离节点越近,所受该节点的输出影响就越大。

三、径向基神经网络结构

总体表达:

通俗过程:

求输入样本和隐藏层点(中心点)的范数,得到范数后,将其带入径向基函数。得到一个数值,再与之后的权值相乘加和,就得到了相应的输出。

四、RBF网络的学习算法

经过上面的学习,我们得到了该学习算法需要求解的参数

1.径向基函数的中心(隐含层中心点)

中心的选取主要有三个方法

(1) 固定中心法

(2)自组织选取中心法

(3)有监督选取中心法

常用K-means聚类方法求取基函数中心

原理:算法首先随机选择K个对象,每个对象初始地代表了一族的平均值或中心。对剩余的每个对象根据其余各个族中心的距离,将它赋给最近的族,然后重新计算每个族的平均值。这个过程不断重复,知道准则函数收敛。

K-means算法过程图

2.方差(sigma)

上文已介绍。

3.隐含层到输出层的权值

通过最小二乘法求得。

下面从MATLAB实例中给出最小二乘法求权值的运用。

  1. %给出变量

  2. %实际数据

  3. data=-9:1:8;

  4. %测试数据

  5. x=-9:.2:8;

  6. %目标输出

  7. label=[129,-32,-118,-138,-125,-97,-55,-23,-4,2,1,-31,-72,-121,-142,-174,-155,-77];

  8. %sigma值

  9. spread=2;

  10. plot(data, label,'o');

  11. %拟合这条曲线的权值

  12. dis=dist(data',data);

  13. gdis=exp(-dis.^2/spread);%gauss

  14. G=[gdis,ones(length(data(1,:)),1)];%广义rbf网络 (加入一个恒为1的隐含层节点)

  15. w=G\label';%最小二乘的矩阵求解

  16. %测试所拟合的权值

  17. chdis=dist(x',data);

  18. chgdis=exp(-chdis.^2/spread);

  19. chG=[chgdis,ones(length(x(1,:)),1)];

  20. chy=chG*w;

  21. plot(x,chy);

五、RBF网络学习算法的MATLAB实现

通过matlab自带的函数做RBF网络学习

1. newrb()  新建一个径向基神经网络

2.newrbe() 新建一个严格的径向基神经网络

3.newrnn() 新建一个广义回归径向基神经网络

4.newpnn() 新建一个概率径向神经网络

格式:net=newrb(P,T,GOAL,SPREAD,MN,DF)

P:输入向量

T:目标向量

SPREAD:径向基函数的分布密度,默认为1

MN:神经元的最大数目

DF:两次显示之间所添加的神经元数目

六、RBF网络学习算法的范例

例、建立一个径向基神经网络,对非线性函数y=sqrt(x)进行逼近,并作出网络的逼近误差曲线。


%输入从0开始变化到5,每次变化幅度为0.1
 x=0:0.1:5;
y=sqrt(x);
 %建立一个目标误差为0,径向基函数的分布密度为0.5
 %隐含层神经元个数的最大值为20,每增加5个神经元显示一次结构
 net=newrb(x,y,0,0.5,20,5)

t=sim(net,x)

%作出误差函数

plot(x,y-t,'*-')

神经网络学习笔记(一) RBF径向基函数神经网络相关推荐

  1. MATLAB神经网络学习笔记之:对线性神经网络进行自适应训练

    为什么80%的码农都做不了架构师?>>>    % 对线性神经网络进行自适应训练 clear all; p1 = { -1 0 1 0 1 1 -1 0 -1 1 0 1}; t1 ...

  2. 径向基(Radial Basis Function:RBF)神经网络学习笔记

    原创不易,转载前请注明博主的链接地址:Blessy_Zhu https://blog.csdn.net/weixin_42555080 一. 从BP神经网络到RDF神经网络 在上一篇文章BP(Back ...

  3. python编写自己的RBF径向基神经网络

    目录 前言 一.RBF神经网络 1.代码 总结 前言 径向基函数神经网络是一种前馈式神经网络,包含输入层.隐含层和输出层,其多输入单输出网络结构如图2所示.根据径向基函数中心确定的方法不同,径向基神经 ...

  4. RBF径向基神经网络

    RBF径向基函数神经网络的优点:逼近能力,分类能力和学习速度等方面都优于BP神经网络,结构简单.训练简洁.学习收敛速度快.能够逼近任意非线性函数,克服局部极小值问题. RBF是具有单隐层的三层前向网络 ...

  5. 神经网络学习笔记(五) 径向基函数神经网络

    径向基函数神经网络 首先介绍一下网络结构: 1.输入层为向量,维度为m,样本个数为n,线性函数为传输函数. 2.隐藏层与输入层全连接,层内无连接,隐藏层神经元个数与样本个数相等,也就是n,传输函数为径 ...

  6. 机器学习:西瓜书 神经网络 学习笔记

    文章目录 神经元模型 感知机与多层网络 误差逆传播算法 全局最小和局部极小 其他常见神经网络 RBF网络 ART网络 SOM网络 级联相关网络 Elman网络 Boltzmann机 深度学习 神经元模 ...

  7. 径向基函数神经网络RBFNN

    概述 径向基函数(Radial Basis Function)神经网络是具有唯一最佳逼近(克服局部极小值问题).训练简洁.学习收敛速度快等良好性能的前馈型神经网络,目前已证明RBFNN能够以任意精度逼 ...

  8. 径向基函数神经网络(RBFNN)详解

    径向基函数神经网络RBFNN 前言 1.基础知识 1.1 径向基函数(RBF) 1.2 非线性问题 1.3 高级的径向基函数 1.4 RBFNN的结构 2.RBFNN的原理 2.1基本原理 2.2径向 ...

  9. 径向基函数神经网络简述

    径向基函数神经网络是不同于BP神经网络的另一种的前馈神经网络,由输入层.一层非线性隐层(径向基层)和线性输出层组成的. 关于径向基函数神经网络,首先要介绍一个定理,cover定理,对于一个复杂的在低维 ...

最新文章

  1. 使用ASP.NET Core 实现Docker的HealthCheck指令
  2. 依赖: ros-melodic-desktop 但是它将不会被安装_npm系列之依赖管理
  3. 《计算机网络》学习笔记 ·006【应用层】
  4. 给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数
  5. 华中农业大学第五届程序设计大赛 (7/12)
  6. 遥感学习教学课件分享
  7. Python网页抓取教程
  8. 简记_高频变压器基础知识(一)
  9. java后台实现批量打印功能
  10. 如何***内网windows xp的几种思路和方法
  11. 数据分析里面的一些常用指标的特点(最大、最小、平均、中位数、....)
  12. 重绘回流个人理解版本
  13. imageio不存在java,Java自带的ImageIO留下的坑
  14. c语言:(指针)实现输入三个整数从小到大排序
  15. 【转】我从罗振宇、脱不花得到的10点
  16. [企业管理]宽容与尊严
  17. PowerBuilder打印QRCode
  18. pmp中ram和raci的区别_【PMP考前冲刺】知识点大全(四)
  19. 深度学习—BP神经网络
  20. mysql导入导出语句6_mysql的导入导出 | 吴老二

热门文章

  1. 遥感图像场景分类方法总结
  2. 华芯投资40亿现金收购美芯片测试设备厂商Xcerra
  3. sql compact 转mysql_如何将数据导入到 SQL Server Compact Edition 数据库中(三)
  4. 跟我学springboot(十五)springboot日志选型
  5. tb6600 两相四线步进电机相关参数计算关系
  6. 原型设计(结对第一次)--社团管理系统
  7. 以考代评职称需要聘任嘛_如何以正确的方式聘用:工程师对技术招聘的看法
  8. 基于星环TDH数据仓库典型总和场景数据流转设计
  9. 转文:华为鸿蒙操作系统全景解构
  10. 两轮差速移动机器人从A点移动到B点的C++语言代码