径向基函数网络(RBF Network)的原理与训练过程
题目描述
径向基函数网络是一种三层前馈神经网络,常用于函数逼近、分类和时序预测。其核心思想是:将输入向量映射到高维特征空间(通过径向基函数实现),然后在特征空间中进行线性组合以得到输出。与多层感知机(MLP)使用加权和与非线性激活的方式不同,RBF网络隐层采用局部响应函数(如高斯函数),输出层为线性组合。本题将详细讲解RBF网络的结构设计、参数训练(包括中心选择、宽度计算和权重优化)的完整流程。
解题过程
- 网络结构分解
RBF网络包含三层:- 输入层:接收特征向量 \(\mathbf{x} \in \mathbb{R}^d\)。
- 隐层:由 \(m\) 个径向基函数单元构成。每个单元对应一个中心 \(\mathbf{c}_j\) 和宽度参数 \(\sigma_j\),其输出为径向基函数的值(以高斯函数为例):
\[ \phi_j(\mathbf{x}) = \exp\left(-\frac{\|\mathbf{x} - \mathbf{c}_j\|^2}{2\sigma_j^2}\right) \]
该函数衡量输入与中心的相似度,距离越近输出越接近1。
- 输出层:隐层输出的线性组合,对于回归问题(单输出):
\[ f(\mathbf{x}) = \sum_{j=1}^m w_j \phi_j(\mathbf{x}) + b \]
其中 $ w_j $ 为权重,$ b $ 为偏置。
-
参数训练的三阶段方法
RBF网络的训练需确定三类参数:中心 \(\{\mathbf{c}_j\}\)、宽度 \(\{\sigma_j\}\)、权重 \(\{w_j\}\)。常用分步优化策略:阶段1:中心选择(隐层节点初始化)
- 方法1:随机采样:从训练集中随机选择 \(m\) 个样本作为中心,简单但可能不具代表性。
- 方法2:K-means聚类(更常用):
- 对训练数据运行K-means算法,聚类数设为 \(m\);
- 将每个簇的质心作为中心 \(\mathbf{c}_j\)。
此方法确保中心覆盖数据分布的关键区域。
阶段2:宽度计算
- 宽度 \(\sigma_j\) 决定径向基函数的平滑度。常用启发式方法:
\[ \sigma_j = \frac{\kappa}{\sqrt{m}} \cdot \text{avg\_dist}_j \]
其中 $ \text{avg\_dist}_j $ 是中心 $ \mathbf{c}_j $ 到其最近 $ k $ 个邻居中心的平均距离(通常 $ k $ 取2~5),$ \kappa $ 为缩放因子(常取1~2)。
- 另一种简化:对所有节点使用全局宽度 \(\sigma = \frac{\max_{i,j} \|\mathbf{c}_i - \mathbf{c}_j\|}{\sqrt{2m}}\)。
阶段3:权重优化
- 隐层参数固定后,输出层权重 \(\mathbf{w} = [w_1, \dots, w_m, b]^\top\) 的学习转化为线性回归问题:
定义设计矩阵 \(\Phi \in \mathbb{R}^{n \times (m+1)}\),其中第 \(i\) 行 \(\Phi_i = [\phi_1(\mathbf{x}_i), \dots, \phi_m(\mathbf{x}_i), 1]\),输出向量 \(\mathbf{y} \in \mathbb{R}^n\)。 - 最小二乘解:
\[ \mathbf{w} = (\Phi^\top \Phi + \lambda I)^{-1} \Phi^\top \mathbf{y} \]
其中 $ \lambda $ 为正则化系数(防止过拟合),若无需正则化则取 $ \lambda=0 $。
-
扩展讨论:端到端训练
- 上述分步方法效率高,但可能非全局最优。若需精细化结果,可进一步用梯度下降联合优化所有参数:
- 定义损失函数(如均方误差): \(L = \frac{1}{n} \sum_{i=1}^n (y_i - f(\mathbf{x}_i))^2\)
- 通过反向传播计算对 \(\mathbf{c}_j, \sigma_j, w_j\) 的梯度,进行迭代更新。
- 注意:径向基函数的梯度涉及距离计算,需谨慎选择学习率以防震荡。
- 上述分步方法效率高,但可能非全局最优。若需精细化结果,可进一步用梯度下降联合优化所有参数:
-
关键特性总结
- 局部性:每个隐单元只对输入空间的局部区域响应,适合学习平滑函数。
- 通用逼近性:足够多隐单元时可逼近任意连续函数。
- 与核方法关联:可视为核回归的一种实现,隐层相当于核函数映射。
通过以上步骤,RBF网络将非线性问题转化为特征空间中的线性问题,兼具直观性与计算效率。