在《人工神经网络理论、设计及应用》书中关于径向基函数RBF被划入了基于数学原理的神经网络,在前面所学的各种神经网络均受到某种生物学原理的启发,本章讨论的神经网络建立是受某种数学原理的指导,所以被划入了基于数学的神经网络。
说起径向基网络之前,我们先了解什么是径向基函数。径向基其实就是延径向对称的标量函数,通常定义为空间任意点X到中心c之间的欧式距离函数,我们可以看作d = (x-c)。
接下来我们对d= (X-c)做一个函数变换 =>
(方程一) , 这里的
我们可以看成一个函数,如果这个函数是高斯函数,我们把这个距离函数套入高斯函数中,得到高斯径向基函数
(方程二)。
我们通过方程一和方程二得到公式:
(方程三)。其中可以看
, F(x)就是我们想要预测的结果,或者训练集的结果。
如果将这种方法写入到神经网络中,
就是我们的权值,
就是我们的神经网络输入值(显示层),如下图所示。
当然我们可以把
看出不同的函数,不仅仅是高斯函数,在书中提到了三种函数:
下面我们用python代码实现rbf,代码使用的是高斯函数,并且中心点c是随机取值的,我们也可以使用kmean或者knn方法来确定中心点,这