若考虑S2=1的情况,此时把整个神经网络看成一个
其中,ci(i=1,2,…,S)为矩阵C的每一行,它代表相应神经元径向基函数的中心向量,b1=λ=(λ1,λ2,…λS),其中λi代表径向基函数的方差,W2=W=(w1,w2,…,wS),则网路输出为:
2.2 网络的训练
仅仅搭建这样一个模型是没有意义的,神经网络在实际工作之前必须进行学习,通过学习,神经网络才能获得一定的“智能”。
学习是神经网络一种最重要也最令人瞩目的特点。在神经网络的发展进程中,学习算法的研究有着十分重要的地位。目前,人们所提出的神经网络模型都是与学习算法相对应的。所以,有时人们并不苛求对模型和算法进行严格的定义或区分。有的模型可以有多种算法,而有的算法可能用于多种模型。
本文根据均衡器的传输特性,在训练学习过程中,其连接权值的不断调整以及学习修正采用BP网络学习算法中的LM算法。LM算法是为了训练中等规模的前馈神经网络而提出的最快速算法,它对MATLAB实现也是相当有效的,在BP网络的众多学习算法中,通常对于包含数百个权值的函数逼近网络,LM算法的收敛速度最快。如果要求的精度比较高,则该算法的优点尤其突出。在许多情况下,采用LM算法的训练函数trainlm可以获得比其他算法更小的均方误差。
LM算法实际上是梯度下降法和牛顿法的结合。梯度下降法在开始的几步下降较快,当接近最优值时,由于梯度趋于零,使得目标函数下降缓慢;而牛顿法可以在最优值附近产生一个理想的搜索方向。其主要算法为:
其中J是包含网络误差对权值及阈值的一阶导数的雅可比矩阵。
牛顿法能够更快更准确地逼近一个最小误差,在每一步成功后,μ都会减小,只有当发现下一步输出变坏时才增加μ。按这种方法,算法的每一步运行都会使目标函数向好的方向发展。
算法开始时,μ取小值μ=0.001。如果某一步不能减小E,则将μ乘以10后再重复这步,最后使E下降。如果某一步产生了更小的E,则将μ乘以0.1继续运行。算法的执行步骤如图3所示。
对于RBF网络与BP网络的主要区别在于使用不同的作用函数,BP网络中的隐层节点使用的是Sigmoid函数,其函数值在输入空间中无限大的范围内为非零值。而RBF网络的作用函数为高斯函数,因而其对任意的输入均有高斯函数值大于零的特性,从而失去调整权值的优点。但加入LM算法进行网络训练后,RBF网络也同样具备局部逼近网络学习收敛快的优点,可在一定程度上克服高斯函数不具备紧密性的缺点。由于RBF网络采用高斯函数,表示形式简单,即使对于多变量输入也不增加太多的复杂性。
2.3 仿真设计结果