径向基函数神经网络模型与学习算法

1985年,Powell提出了多变量插值的径向基函数(RBF)方法。1988年Moody和Darken提出了一种神经网络结构,即RBF神经网络,属于前向神经网络类型,它能够以任意精度逼近任意连续函数,特别适合于解决分类问题。

RBF网络的结构与多层前向网络类似,它是一种三层前向网络。输入层由信号源结点组成,第二层为隐含层,隐单元数视所描述问题的需要而定,隐单元的变换函数是RBF,它是对中心点径向对称且衰减的非负非线性函数,第三层为输出层,它对输入模式的作用作出相应。从输入空间到隐含层空间的变换是非线性的,而从隐含层空间到输出层空间变换是线性的。

RBF网络的基本思想是:用RBF作为隐单元的“基”构成隐含层空间,这样就可以将输入矢量直接映射到隐空间,而不需要通过权连接。当RBF的中心点确定以后,这种映射关系也就确定了。而隐含层空间到输出空间的映射是线性的,即网络的输出是隐单元输出的线性加权和,此处的权即为网络可调参数。从总体上看,网络由输入到输出的映射是非线性的,而网络输出对可调参数而言却又是线性的。这样,网络由输入到输出的映射是非线性的,而网络输出对可调参数而言却又是线性的。这样网络的权就可由线性方程组直接解出,从而大大加快学习速度并避免局部极小问题。

RBF神经网络模型

径向基神经网络的激活函数采用径向基函数,通常定义为空间任一点到某一中心之间欧氏距离的单调函数。径向基神经网络的激活函数是以输入向量和权值向量之间的距离\(\Vert dist \Vert\) 为自变量的。径向神经网络的激活函数一般表达式为 $$R(\Vert dist \Vert) = e^{-\Vert dist \Vert^2}$$
随着权值和输入向量之间距离的减少,网络输出是递增的,当输入向量和权值向量一致时,神经元输出1。b为阈值,用于调整神经元的灵敏度。利用径向基神经元和线性神经元可以建立广义回归神经网络,该种神经网络适用于函数逼近方面的应用;径向基神经元和竞争神经元可以组件概率神经网络,此种神经网络适用于解决分类问题。输出层和隐含层所完成的任务是不同的,因而它们的学习策略也不相同。输出层是对线性权进行调整,采用的是线性优化策略,因而学习速度较快。而隐函数是对激活函数(格林函数或高斯函数,一般为高斯函数)的参数进行调整,采用的是非线性优化策略,因而学习速度较慢。

尽管RBF网络的输出是隐单元输出的线性加权和,学习速度加快,但并不等于径向基神经网络就可以取代其他前馈网络。这是因为径向神经网络很可能需要比BP网络多得多的隐含层神经元来完成工作。

RBF网络学习算法

RBF神经网络学习算法需要求解的参数有3个:基函数的中心、方差以及隐含层到输出层的权值。根据径向基函数中心选取方法的不同,RBF网络有多种学习方法。下面介绍自组织选取中心的RBF神经网络学习法。此方法由两个阶段组成:

  1. 自组织学习阶段,此阶段为无监督学习过程,求解隐含层基函数的中心与方差;
  2. 监督学习阶段,此阶段求解隐含层到输出层之间的权值。

径向基神经网络中常用的径向基函数是高斯函数,因此径向基神经网络的激活函数可表示为:$$R(x_p-c_i) = exp(-\frac{1}{2\sigma^2}\Vert x_p - c_i \Vert^2)$$

由此可得,径向基神经网络的结构可得到网络的输出为:$$y_j = \sumh_{i=1}w_{ij}exp(-\frac{1}{2\sigma2}\Vert x_p - c_i \Vert^2)\ j = 1,2,\cdots, n$$

其中\(x_p\) 为第p个输入样本。h为隐含层的结点数。

如果d是样本的期望输出值,那么基函数的方差可表示为:$$\sigma = \frac{1}{P}\sum^m_j\Vert d_j - y_jc_i \Vert^2$$

基于K-均值聚类方法求取基函数中心c

  1. 网络初始化 随机选取h个训练样本作为聚类中心\(c_i\)
  2. 将输入的训练样本集合按最近邻规则分组,按照\(x_p\) 与中心为 \(c_i\) 之间的欧式距离将\(x_p\) 分配到输入样本的各个聚类集合 \(\vartheta_p\) 之中。
  3. 重新调整聚类中心 计算各个聚类集合 \(\vartheta_p\) 中训练样本的平均值,即新的聚类中心 \(c_i\), 如果新的聚类中心不再发生变化,所得到的 \(c_i\) 就是RBF神经网络最终的基函数中心,否则返回2进行下一轮求解

求解方差\(\sigma_i\)

该RBF神经网络的基函数为高斯函数,因此方差 \(\sigma_i\) 可由下式求解得出:$$\sigma_i = \frac{c_{max}}{\sqrt{2h}} \ \ \ i=1,2,\cdots,h$$

其中 \(c_{max}\) 是所选取中心之间的最大距离

计算隐含层和输出层之间的权值

用最小二乘法直接计算得到: $$w = exp(\frac{h}{c^2_{max}} \Vert x_p - c_i \Vert^2) \ \ \ \ \ p = 1,2,\cdots,P;i=1,2,\cdots, h$$

posted @ 2017-03-17 15:37  Ant°  阅读(8229)  评论(0编辑  收藏  举报