径向基函数神经网络
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
h
式中 cmax 为中所选取中心之间的最大距离。
➢3.计算隐含层和输出层之间的权值
隐含层至输出层之间神经元的连接权值可以用最小二乘法 直接计算得到,计算公式如下:
w
exp(
h c2
max
2
xp ci )
p 1,2, , P;i 1,2, ,h
3.5.3 RBF网络学习算法的MATLAB实现
RBF网络的MATLAB函数及功能
➢说明
各参数的含义见Newrb。
举例:RBF网络实现函数逼近
1.问题的提出:假设如下的输入输出样本,输入向量为[-1 1] 区间上等间隔的数组成的向量P,相应的期望值向量为T。
P=-1:0.1:1; T=[-0.9602 -0.5770 -0.0729 0.3771 0.6405 0.6600 0.4609 0.1336 -0.2013 -
自组织选取中心算法步骤
➢1.基于K-均值聚类方法求取基函数中心
(1)网络初始化。
随机选取 h个训练样本作为聚类中心ci (i 1, 2, , h) 。
(2)将输入的训练样本集合按最近邻规则分组。
本按的照各x个p与聚中类心集为合ci
之间的欧氏距离将x p分配到输入样
p ( p 1, 2, , P) 中。
函数名 newrb() newrbe()
功能 新建一个径向基神经网络 新建一个严格的径向基神经网络
newgrnn() 新建一个广义回归径向基神经网络
newpnn() 新建一个概率径向基神经网络
newrb()
➢功能
建立一个径向基神经网络
➢格式
net = newrb(P,T,GOAL,SPREAD,MN, DF)
grid on % 应用newb()函数可以快速构建一个径向基神经网络,并且网络自动根据输入向量和期望值
进行调整,从而进行函数逼近,预先设定均方差精度为eg以及散布常数sc。 eg=0.02; sc=1; net=newrb(P,T,eg,sc);
3.网络测试:将网络输出和期望值随输入向量变化 的曲线绘制在一张图上,就可以看出网络设计是否 能够做到函数逼近。 figure; plot(P,T,'+'); xlabel('输入'); X=-1:0.01:1; Y=sim(net,X); hold on; plot(X,Y); hold off; legend('目标','输出') grid on
学习方法分类(按RBF中心选取方法的不同 分)
➢随机选取中心法 ➢自组织选取中心法 ➢有监督选取中心法 ➢正交最小二乘法等
3.5.2 RBF网络的学习算法
自组织选取中心学习方法
➢ 第一步,自组织学习阶段
无导师学习过程,求解隐含层基函数的中心与方差;
➢ 第二步,有导师学习阶段
求解隐含层到输出层之间的权值。
题。 局部逼近网络(MLP是全局逼近网络),这意味着逼近一个输
入输出映射时,在相同逼近精度要求下,RBF所需的时间要比 MLP少。 具有唯一最佳逼近的特性,无局部极小。 合适的隐层节点数、节点中心和宽度不易确定。
径向基函数(RBF)
1.
Gauss(高斯)函数:r
exp
r2
2 2
2. 3.
反演S型函数: r
(3)重新调整聚类中心。
中即计心为算Rc各Bi ,F个神如聚经果类网新集络的合最聚终p类中的中训基心练函不样数再本中发的心生平,变均否化值则,,返则即回所新(得的2到)聚的,类ci
进入下一轮的中心求解。
➢2.求解方差
RBF神经网络的基函数为高斯函数时,方差可由下式求解:
i
cmax 2h
,i
1, 2,
3.5径向基函数神经网络模型
概述
1985年,Powell提出了多变量插值的径向基函 数(Radical Basis Function,RBF)方法
1988年, Moody和Darken提出了一种神经网络 结构,即RBF神经网络
RBF网络是一种三层前向网络 RBF网络的基本思想
➢用RBF作为隐单元的“基”构成隐含层空间,将输入 矢量直接(即不需要通过权连接)映射到隐空间
➢当RBF的中心点确定后,映射关系也就确定 ➢隐含层空间到输出空间的映射是线性的
RBF网络特点
只有一个隐层,且隐层神经元与输出层神经元的模型不同。 隐层节点激活函数为径向基函数,输出层节点激活函数为线
性函数。 隐层节点激活函数的净输入是输入向量与节点中心的距离
(范数)而非向量内积,且节点中心不可调。 隐层节点参数确定后,输出权值可通过解线性方程组得到。 隐层节点的非线性变换把线性不可分问题转化为线性可分问
径向基函数 取统一的扩展常数
径向基函数的扩展常数 不再统一由训练算法确定
没有设置阈值
输出函数的线性中包含阈值参数, 用于补偿基函数在样本集上的
平均值与目标值之平均值之间的差别。
3.5.1 RBF神经网络模型
径向基神经网络的神经元结构
激活函数采用径向基函数
以输入和权值向量之间的 dis距t 离作为自变量
这些径向基函数的权值相加。如果隐含层神经元的数目足够,每一层的权值和阈值正确,那 么径向基函数网络就完全能够精确的逼近任意函数。
a2=radbas(p-1.5); a3=radbas(p+2); a4=a+a2*1+a3*0.5; figure; plot(p,a,'b-',p,a2,'b-',p,a3,'b-',p,a4,'m--'); title('径向基传递函数之和') xlabel('输入p') ylabel('输出a')
0.4344 -0.5000 -0.3930 -0.1647 0.0988 0.3072 0.3960 0.3449 0.1816 0.0312 -0.2189 -0.3201]; %以输入向量为横坐标,期望值为纵坐标,绘制训练用样本的数据点。 figure; plot(P,T,'+') title('训练样本') xlabel('输入矢量P') ylabel('目标矢量T') grid on %目的是找到一个函数能够满足这21个数据点的输入/输出关系,其中一个方法是通 过构建径向基函数网络来进行曲线拟合
R ( dist )=e- dist 2
径向基神经网络结构
RBF网络与BP网络比较:
➢RBF网络的输出是隐单元输出的线性加权和, 学习速度加快
➢BP网络使用sigmoid()函数作为激活函数,这 样使得神经元有很大的输入可见区域
➢径向基神经网络使用径向基函数(一般使用 高斯函数)作为激活函数,神经元输入空间区 域很小,因此需要更多的径向基神经元
分类: 解决非线性可分问题。RBF网络用隐层单元先将非线性可 分的输入空间设法变换到线性可分的特征空间(通常是高 维空间),然后用输出层来进行线性划分,完成分类功能。
RBF神经网络两种模型
正规化网络RN 通用逼近器
基本思想: 通过加入一个含有解的先验知识的约束来 控制映射函数的光滑性,若输入一输出映射 函数是光滑的,则重建问题的解是连续的, 意味着相似的输入对应着相似的输出。
高斯函数作为径向基函数
1
2
R(x p ci )=exp(- 2 2 x p ci )
网络的输出(网络结构如图2-21所示 )
h
1
y j = i=1 wijexp(- 2 2
x p ci
2
)
j=1,2, ,n
设d是样本的期望输出值,那么基函数的方差 可表示为 :
1 m
Pj
2ቤተ መጻሕፍቲ ባይዱ
d j y jci
拟多二次函数:
1
r
1
exp
r2
2
1
r 2 2
1
/
2
σ 称为基函数的扩展常数 或宽度, σ越小,径向基 函数的宽度越小,基函数 就越有选择性。
全局逼近和局部逼近
当神经网络的一个或多个可 调参数(权值和阈值)对任何 一个输出都有影响,则称该 神经网络为全局逼近网络。
全局逼近网络 学习速度很慢,无法满足实时性要求的应用
误差曲线和逼近曲线
知识回顾 Knowledge Review
祝您成功!
广义网络GN
模式分类
基本思想: 用径向基函数作为隐单元的“基”,构成隐含 层空间。隐含层对输入向量进行变换,将低维 空间的模式变换到高维空间内,使得在低维 空间内的线性不可分问题在高维空间内线性可分。
两种模型的比较
RN
隐节点=输入样本数
所有输入样本设为 径向基函数的中心
GN
隐节点<输入样本数
径向基函数的中心 由训练算法确定
RBF学习算法
t RBF学习的三个参数:①基函数的中心 i
②方差(扩展常数) i ③隐含层与输出层间的权值 wij
当采用正归化RBF网络结构时,隐节点数即样本数,基函 数的数据中心即为样本本身,参数设计只需考虑扩展常数 和输出节点的权值。
当采用广义RBF网络结构时,RBF网络的学习算法应该解决 的问题包括:如何确定网络隐节点数,如何确定各径向基 函数的数据中心及扩展常数,以及如何修正输出权值。
例2 建立一个径向基神经网络,对非线性函数
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); %在以输入x和函数值与网络输出之间的差值y-t坐标 %上绘出误差曲线,并用"*"来标记函数值与网络输 %出之间的差值 plot(x,y-t,'*-')
2.网络设计:设计一个径向基函数网络,网络有两层,隐含层 为径向基神经元,输出层为线性神经元。
p=-3:0.1:3; a=radbas(p); figure; plot(p,a) title('径向基传递函数') xlabel('输入p') ylabel('输出a')
grid on % 每一层神经元的权值和阈值都与径向基函数的位置和宽度有关系,输出层的线性神经元将
➢说明
P为输入向量,T为目标向量,GOAL为圴方误 差,默认为0,SPREAD为径向基函数的分布密 度,默认为1,MN为神经元的最大数目,DF为 两次显示之间所添加的神经元神经元数目。
newrbe()
➢功能
建立一个严格的径向基神经网络,严格是指径向基 神经网络的神经元的个数与输入值的个数相等。
➢格式 (1) net = newrb(P,T, SPREAD)
局部逼近网络 学习速度快,有可能满足有实时性要求的应用
对网络输入空间的某个局 部区域只有少数几个连接 权影响网络的输出,则称
该网络为局部逼近网络
RBF网络的工作原理
函数逼近: 以任意精度逼近任一连续函数。一般函数都可表示成一组 基函数的线性组合,RBF网络相当于用隐层单元的输出构 成一组基函数,然后用输出层来进行线性组合,以完成 逼近功能。