第二节 数学方法
本书给出近似地分析水力机械的一些特性的简便方法,这些方法涉及一些数学方法,本书简要介绍这些方法。
一、数据拟合方法
(一)数据拟合问题
在科学研究、工程技术问题和社会经济领域中,常常需要研究变量与变量之间的相互关系,由于种种原因,在许多情况下,变量之间的关系不能用准确的解析式描述,而是通过试验、观测,得到一些反映变量之间关系的数据。可以通过这些数据,找出变量之间的内在关系,同时,通过这些数据和一定的算法,求出一个解析式,用以近似地描述变量之间的关系,并供实际应用。
将通过数据和一定的算法求出近似地描述变量之间关系的解析式的方法,称为数据拟合方法。在数据拟合方法中,需要解决两个问题,第一个问题是,选择什么形式的解析式(一般将相应的解析式称为拟合函数)用于数据拟合;第二个问题是,如何确定拟合函数中的拟合系数。
【例1-1】经过试验,得到反映变量x、y之间关系的数据,见表1-1。
表1-1 反映变量x、y之间关系的数据
应用数据拟合方法,可以建立近似反映变量x、y之间关系的解析式为
这里,将解析式(1-1)称为拟合表1-1中所列数据的拟合函数,其中28.5340和130.6022称为拟合函数中拟合系数的值。
推广到一般,设已知数据(xi,yi)(i=1,2,…,m),用函数f(x)=f(cj,x)对这些数据拟合,称函数f(x)=f(cj,x)为拟合函数,拟合函数中的系数cj(j=0,1,…,n)称为拟合系数。
上面所述中的确定拟合函数,就是如何针对数据(xi,yi)(i=1,2,…,m),选择拟合函数f(x)=f(cj,x)的具体形式;而确定拟合系数,就是确定拟合函数中系数cj(j=0,1,…,n)的值。
(二)线性函数数据拟合方法
1.线性函数数据拟合问题
设已知数据(xi,yi)(i=1,2,…,m),如果可以用广义形式的函数
对这些数据拟合,则称为线性函数数据拟合问题。
拟合函数式(1-2)中,φj(x)(j=0,1,…,n)称为拟合基函数,且彼此线性无关。cj(j=0,1,…,n)为拟合系数。
【例1-2】在[例1-1]中,拟合函数式(1-2)中的拟合基函数分别是
φ0(x)=1,φ1(x)=x
拟合系数c0=28.5340,c1=130.6022。由于拟合函数式(1-2)是一个线性式子,可以采用较为简单的方法,确定拟合系数cj(j=0,1,…,n)的值。
2.最小二乘法确定拟合系数的计算原理
在选定拟合基函数φj(x)(j=0,1,…,n)以后,可以通过最小二乘法确定拟合系数cj(j=0,1,…,n)的值,具体计算原理如下。
设用拟合函数式(1-2)对数据(xi,yi)(i=1,2,…,m)进行拟合,拟合值是f(xi),定义拟合误差为
确定拟合函数式(1-2)中的拟合系数cj(j=0,1,…,n),使拟合误差δi的平方和为最小,即使
为最小。
由式(1-4)可以看出,在选定拟合基函数φj(x)(j=0,1,…,n)以后,有
根据多元函数极值原理,为使I最小,应该有
成立。
将式(1-4)代入式(1-6)中,得出
对式(1-7)进行整理,得到求出拟合系数cj(j=0,1,…,n)的方程组为
其中矩阵
列向量
以及
式(1-8)是一个线性代数方程组,一般称为法方程。由于矩阵A是一个对称正定的矩阵,因此法方程有唯一的解,可以采用主元素高斯消去法解法方程。
3.拟合过程
在已知数据(xi,yi)(i=1,2,…,m)以后,选定拟合函数中的基函数φj(x)(j=0,1,…,n),将数据(xi,yi)(i=1,2,…,m)代入式(1-9)和式(1-11)中,求得矩阵A和列向量B,然后解法方程式(1-8),求出拟合系数cj(j=0,1,…,n),这样就得到了拟合函数式(1-2)。
求得拟合函数以后,通过计算拟合误差式(1-3),来检验拟合精度,一般不仅要计算拟合误差的最大值,还要计算拟合误差的平均值,以判断拟合函数的实际应用价值。
在一般情况下,可以选用幂函数系列,作为拟合函数式(1-2)中的拟合基函数,即选取
这样,方程式(1-8)中的矩阵A和列向量B变为
4.算例
经查ZZ560—46型水轮机的模型综合特性曲线,得最优单位转速下,水轮机空蚀系数与单位流量的关系数据,如表1-2所示。
表1-2 ZZ560—46型水轮机最优单位转速下空蚀系数与单位流量的关系数据
用拟合函数
对表1-2中的数据(Q11i,σi)进行拟合。取Q11为x,σ为y,经计算,法方程中由式(1-13)定义的矩阵A为
由式(1-14)定义的列向量B为
将式(1-16)和式(1-17)代入法方程中,解得拟合系数是c0=0.36070,c1=-0.26525,c2=0.23125。最后得到拟合函数为
该拟合函数的拟合值以及拟合误差列在表1-3中。
表1-3 ZZ560—46型水轮机最优单位转速下空蚀系数拟合结果
从表1-3中数据可以看出,用拟合函数式(1-18)反映表1-2中数据(Q11i,σi)所表示的ZZ560—46型水轮机,在最优单位转速下的空蚀系数与单位流量之间的关系是可行的。
线性函数数据拟合方法在工程实际中得到了广泛的应用,在某些情况下,线性函数数据拟合方法又是非线性函数数据拟合方法的基础。
(三)非线性函数数据拟合方法
1.非线性函数数据拟合问题
在线性函数数据拟合方法中,采用线性函数式(1-2)作为拟合函数,拟合数据(xi,yi)(i=1,2,…,m),但在许多情况下,数据(xi,yi)所反映的变量y和x之间的关系是非线性的,这时必须用非线性函数,如
等,作为拟合函数,对相应数据进行拟合。选用非线性函数作为拟合函数的数据拟合问题,称为非线性函数数据拟合问题。
由于非线性拟合函数中,含有一些非线性拟合系数,如式(1-19)中的c2,导致求拟合系数的计算过程比较复杂。结合水轮机领域中的实际应用,本节只给出一些简单的非线性函数数据拟合方法,比较复杂的方法,可以参考有关专著。
2.基于线性函数数据拟合方法的非线性函数数据拟合方法
这里以选用函数式(1-19)作为拟合函数为例,给出一种基于线性函数数据拟合方法的非线性函数数据拟合方法,一维优化拟合方法。
假设已经给出了c2的值,并作变量变换
则函数式(1-19)转化为线性函数
对给出的数据(xi,yi),也采用式(1-20)的变换,转化为数据(ti,yi)(i=1,2,…,m)。用线性函数式(1-21)对数据(ti,yi)进行拟合,根据前面给出的线性函数数据拟合方法,可以写出确定拟合系数c0、c1的法方程为
解方程式(1-22),可以方便地求出拟合系数c0和c1。
当拟合系数c0、c1和c2确定以后,也就确定了拟合函数式(1-19),另外定义拟合的相对误差为
对于已知的m组数据(xi,yi)(i=1,2,…,m),平均相对误差为
这样,就可以用式(1-24)定义的平均相对误差Δ来评价拟合函数式(1-19)的拟合精度。由式(1-23)和式(1-24)不难看出,Δ越小,拟合精度越高。而从上述拟合过程也可以看出,Δ依赖于c2的值。不同的c2值,有不同的Δ值相对应,因此,有关系式Δ=f(c2)存在。可以取不同的c2值进行拟合计算,然后从多个c2所对应的拟合结果中,选取Δ最小者,作为最终的拟合结果。这样就把一个非线性数据拟合问题,转化为一个一维优化计算过程,因此,将上述方法称为一维优化拟合方法,下面给出一个例子。
【例1-3】已知数据(xi,yi)(i=1,2,…,11),并列在表1-4中,用拟合函数式(1-19)对这些数据进行拟合。
表1-4 已知数据
当取c2=0.35时,法方程式(1-22)为
解方程式(1-25),求得c0=-0.1978,c1=2.3861,相应的平均相对误差Δ为0.01181。
取不同的c2值,经过类似于取c2=0.35时的拟合计算,求得各c2下,拟合值的平均相对误差Δ值,并列在表1-5中。
表1-5 一维优化拟合计算过程
比较表7-5中的Δ值,发现当取c2=0.45时,平均相对误差最小,因此,将c2=0.45作为优化计算的最优值,相应的有c0=0.4652,c1=1.7205,最后得到拟合表1-4中数据的拟合函数是
f(x)=0.4652+1.7205x0.45
相应的拟合值以及相对拟合误差列在表1-6中,表中数据表明,拟合结果是比较理想的。
表1-6 拟合结果及拟合误差分析
可以采用一些一维优化的方法,如经典的0.618法,近代的趋化算法等,指导对非线性拟合系数的寻优过程,下面给出趋化算法用于一维优化拟合的计算步骤。
趋化算法模拟了细菌的趋化性,是一种启发性的智能算法,针对上述非线性函数数据拟合问题,下面给出具体的拟合计算步骤。
步骤1:取变量t=0,给出非线性拟合系数c2的初值,解法方程式(1-22),求出拟合系数c0、c1的值,进而求出式(1-24)定义的Δ值,并记为Δ0。
步骤2:如果t<tmax,产生一个随机增量Δc2(Δc2是一个可正可负的小数),执行步骤3;否则,转向步骤5。
步骤3:将Δc2叠加到c2上,即取c2+Δc2→c2,同样解法方程式(1-22),求出拟合系数c0、c1的值,进而求出式(1-24)定义的Δ值,并记为Δ1。
步骤4:如果Δ1<Δ0,取Δ1→Δ0,t=0,转向步骤3继续计算;否则,取t+1→t,转向步骤2。
步骤5:取最后保留的Δ0相应的拟合系数c0、c1和c2的值,作为最终的拟合结果。
上述计算过程,是一个启发计算的过程,其中的参数tmax是一个比较大的数,如100等,在计算过程中,如果连续产生tmax个Δc2,仍然不能满足Δ1<Δ0,说明已经求得了最优的c2值。
以上计算步骤相应的计算工作量比较大,应编制程序在计算机上完成计算过程。下面给出一个应用趋化算法,建立反映水轮机工作参数间关系的经验公式的算例。
从早期的水轮机型谱上,查取混流式模型水轮机在最优工况下的有关参数,列在表1-7中。
表1-7 混流式模型水轮机在最优工况下的有关参数
选取形式为
的拟合函数,分别拟合表1-7中数据所反映的关系Q11=f(ns),n11=f(ns)和σ=f(ns),其中,为了计算方便,取。应用趋化算法,求出拟合系数c0、c1和c2的值,列在表1-8中。
表1-8 拟合系数值
表1-8中所列拟合系数c0、c1、c2对应的拟合曲线绘制在图1-5、图1-6和图1-7中。
图1-5 对Q11=f(ns)的拟合曲线
图1-6 对n11=f(ns)的拟合曲线
图1-7 对σ=f(ns)的拟合曲线
当选用的非线性拟合函数比较简单的时候,还可以通过适当的变换,将非线性拟合问题转化为线性函数数据拟合过程,下面仍然通过一个具体例子,给出具体拟合计算过程。
【例1-4】已知列在表1-9中测试数据(xi,yi)(i=1,2,…,11),用非线性拟合函数
对这些数据进行拟合。
对式(1-26)两边取自然对数,且设F(x)=ln[f(x)],则式(1-26)转化为线性函数
表1-9 已知测试数据
其中,a=ln(c0)。用同样的变换方式,使数据yi 转换为新的数据Yi,也就是取Yi=ln(yi),这样就将数据(xi,yi)转换为新的数据(xi,Yi)(i=1,2,…,11)。用线性拟合函数式(1-27)对数据(xi,Yi)进行拟合,由于是线性拟合问题,可以容易地求出确定拟合函数式(1-27)中拟合系数a、c1的法方程是
解法方程,求得a=0.5542,c1=0.4484。取a=ln(c0)的逆变换,有
c0=ea=e0.5542=1.7405
最后得出拟合函数式(1-26)的具体形式是
f(x)=1.7405e0.4484x
该拟合函数的拟合结果列在表1-10中,拟合值的平均相对误差为0.006868。
表1-10 拟合结果比较
通过[例1-4]可以看出,在将一些简单的非线性函数数据拟合问题转化为线性函数数据拟合问题的过程中,首先要通过适当的数学变换,将非线性拟合函数转化为线性拟合函数,同时对被拟合的数据也要做同样的数学变换,然后通过线性函数数据拟合方法,求出拟合系数,最后,作必要的逆变换,求出原非线性拟合函数。
这种将非线性函数数据拟合问题线性化的方法,也有明显的不足,主要是求出的拟合结果不是最佳的。因为是在线性化以后,以式(1-4)定义的误差平方和为最小作为出发点,求拟合系数,并不是以原来的拟合函数所对应的误差平方和为最小作为出发点。因此,将非线性函数数据拟合问题转化为线性函数数据拟合问题的处理方法,只适用于一般对拟合精度要求不高的场合。
以上针对水轮机领域的问题,给出了一些简单的数据拟合方法,其中重点介绍了求取拟合系数的计算原理和计算过程。在具体应用数据拟合方法时,还应该对所拟合的数据进行了解和检查,必要时剔除个别异常的数据,以保证拟合结果尽可能反映实际问题的内在规律。
二、人工神经网络
(一)人工神经网络概述
人工神经网络(Artificial Neural Networks,简记ANN)是最近数十年来发展起来的一门新兴学科,由于它具有较强的非线性、大规模并行处理能力,从而引起了国内外学者的广泛关注,许多学者致力于将其引入自己的专业研究领域,取得了令人瞩目的成果。由于水力机械特性的复杂性,水力机械的输入参数与输出特性是非线性的,而人工神经网络方法具有极好的非线性逼近特性,因此可以用于在某些情况下研究水力机械的有关问题,因此这里将对人工神经网络作一介绍,其中重点介绍已经在众多领域得到了广泛应用的多层前向人工神经网络。
1.人工神经网络的发展历史
人工神经网络的产生与发展经历了艰难的历程,早在1943年,美国心理学家W.S.McCulloch和数学家W.Pitts 提出了MP神经元模型,通过MP模型提出了神经元细胞的形式化数学描述和网络结构方法,证明了单个神经元能够执行逻辑功能,从而开创了人工神经网络时代。1949年,心理学家D.O.Hebb从心理学的角度提出了至今仍对神经网络理论有着重要影响的Hebb学习法则。1961年,E.RoSenblatt提出了著名的感知机模型,此模型确立了从系统角度进行人工神经网络研究的基础。1962年,Widrow 提出了主要适用于自适应系统的自适应线性元件(adaline)网络,神经网络的研究进入了一个顶峰时刻。
然而,1969年,美国麻省理工学院的著名人工智能专家M.MinSky经过数年的潜心研究和S.Papert共同出版了影响很大的《Perceptron》(《感知机》)一书,该书指出,简单的感知机只能用于线性求解,而对像XOR这样简单的非线性问题却无能为力。由于MinSky的悲观结论,以及当时世界上以逻辑推理为研究基础的人工智能理论和数字计算机的辉煌成果,大大降低了许多人对神经网络研究的热情及克服理论障碍的勇气。在这之后近十年中,神经网络的研究进入了一个缓慢发展的低潮。
直到20世纪80年代,神经网络的研究从复兴很快转入了新的热潮,主要是因为80年代并行分布处理模式的神经网络的研究成果,使人们转而看到了新的希望。这一时期首先应提到的是美国加州理工学院的物理学家Hopfield的开拓性工作。1982年,他提出了一个新的神经网络模型——Hopfield网络模型,并首次引入网络能量函数概念,使网络稳定性研究有了明确的依据。1984年,Hinton和SejnowSki提出了Boltzman机模型借用统计物理学的概念和方法来研究神经网络,首次采用了多层网络的学习算法,并将模拟概念移植到网络的学习机理之中,以保证网络能收敛到全局最小值。1986年Rnmelhart和Mccelland及其研究小组提出的PDP(Parallel Distributed Processing)网络思想为神经网络的研究新高潮到来起到了推波助澜的作用,尤其是他们提出的误差逆传播算法,成为至今影响最大的一种网络学习方法。
从众多应用研究领域取得的丰硕成果看,人工神经网络的发展具有强大的生命力。目前存在的问题是智能水平不高,许多应用方面的要求还不能得到很好的满足,此外网络分析与综合的一些理论问题还未很好地解决。随着人们对大脑信息处理机理认识的深化以及人工神经网络智能水平的提高,人工神经网络必将在科学技术领域发挥越来越重要的作用。
2.人工神经网络的特点
随着计算机技术的普及与发展,人工神经网络的研究与应用取得了惊人的进展,特别是在人工智能、自动控制、计算机科学、信息处理、机器人、模式识别等方面都有重大的应用突破。神经网络具有以下特点:
(1)非线性映射能力。神经网络能以任意精度逼近任何非线性连续函数。
(2)并行分布处理方式。在神经网络中信息是分布储存和并行处理的,这使它具有很强的容错性和很快的处理速度。
(3)自学习和自适应能力。神经网络训练时能从输入、输出的数据中自动提取规律性的知识,记忆于网络的权值中,并具有泛化能力。
(4)数据融合能力。神经网络可以同时处理定量信息和定性信息,因此它可以利用传统的工程技术(数值运算)和人工智能技术(符号处理)。
(5)多变量系统。神经网络输入和输出变量的数目是任意的,对单变量系统与多变量系统提供了一种通用的描述方式,不必考虑各子系统间的解耦问题。
由于人工神经网络具有较强的自组织、自学习能力和非线性逼近能力,将它用于小开度特性估算中比其它非线性方法更为有效。它可以对网络进行反复的训练,从而使网络学习存储的知识用于推理时更接近实际系统的值。随着学习样本及新知识的补充,网络的适应能力将不断增强。随着条件的改变,可判别预测值与实际值的差距,如果误差太大,再加入该样本让网络重新学习。网络经过不断地学习后,其预测值越来越逼近实际值。
3.人工神经网络的原理
目前得到广泛应用的人工神经网络又称连接机制模型(Connectionism Model)或并行分布处理模型(Parallel Distributed Model),是由大量简单的元件连接而成的,用以模拟人脑行为的复杂网络系统。人工神经网络反映了人类大脑功能的许多基本特征,但并不是人脑神经网络系统的真实写照,而只是对其作某种简化抽象和模拟。
(1)人工神经元模型。
人工神经元是人工神经网络的基本单元,正如人的脑细胞。它模拟了人的脑细胞对信息的刺激的反映,其模型如图1-8所示。
人工神经元由三个基本要素组成:①一组连接(对应于生物神经元的突触),连接强度由各个连接上的权值表示,权值为正则表示激活,权值为负则表示抑制;②一个求和单元,用于求取各个输入信号的加权和;③一个非线性激活函数,起非线性映射作用,并将神经元输出幅度限制在一定范围内。另外还有一个阈值θj。以上的作用可分别以数学式表达出来:
图1-8 人工神经元模型
式中:xi(i=1,2,…,n)为输入信号;wji为神经元j的连接权值;θj为阈值;yj为j神经元的输出;φ()为激活函数,即用来描述将输入激励转换为输出的数学表达式。
常用的激活函数有:Sigmoid函数,还有符号函数、分段线性函数、双曲正切函数。
1)Sigmoid函数:
2)符号函数:
3)分段线性函数:
4)双曲正切函数:
由于Sigmoid函数导数易于计算,并且单调递增,因此更为常用。
(2)人工神经网络拓扑结构。
人工神经网络是由一些简单(通常为自适应的)的元件及其层次组织的大规模并行连接构造的网络,并致力于模拟生物神经系统的同样方式处理真实世界的客观事物。人工神经网络由其拓扑结构、神经元特性和学习规则三个因素所决定。根据神经网路的拓扑结构和信息流在其中的传递方式,人工神经网路可以大致分为前馈网络、反馈网络和混合网络三种形式。
前馈网络(Feedforward Networks)的信息流由输入层,逐级向下层传递,没有反馈信息流,经网络处理后由输出层输出。单层前馈网络是最简单的前馈网络,如图1-9所示。对于多层网络,输入、输出神经元与外界发生关系,直接感受外部环境的刺激;而中间层与外界无直接联系,所以称隐含层。图1-10为多层前馈网络的拓扑结构示意图。
图1-9 单层前馈网络拓扑结构示意图
(3)学习规则。
通过对环境学习获得知识并改进自身性能,是人工神经网络的一个重要特点,在一般情况下,性能的改善是按某种预定的度量调节自身参数(如权值)随时间逐步达到的,学习方式有以下三种:
图1-10 多层前馈网络拓扑结构示意图
监督学习(有导师的学习)。如图1-11所示,这种学习方式需要外界存在一个“导师”,他提供一组已知的输入—输出数据,即训练样本集。神经网络可根据已知输出与实际输出之间的差值(误差信号)来调节网络权值。常用的学习算法有δ规则,广义δ规则以及LVQ算法等。
图1-11 有导师指导的学习框图
无导师学习,如图1-12所示,无导师学习时不存在外部导师,神经网络完全按照环境提供数据的某些规律来调节权值,从而表示出外部输入的某种固有特性,这样的学习算法有Kohonen算法、Grossberg算法和自适应共振理论。
图1-12 无导师指导的学习框图
图1-13 强化学习框图
强化学习如图1-13所示,这种学习介于上述两种情况之间,外部环境对网络输出结果只给出评价信息(奖或惩)而不给出正确答案,神经网络通过强化那些受奖的动作来改善自身的性能,基于遗传算法(Genetic Algorithm,简称GA)的学习是强化学习算法的一种。
(二)径向基函数(RBF)神经网络
1.径向基函数神经网络的结构
人工神经网络具有非线性适应性信息处理能力、鲁棒性和容错能力,在许多领域都得到广泛应用,其中应用较多的是多层前向网络。一个三层的前馈型人工神经网络,在隐层节点足够多的情况下,经充分学习,可以任意精度逼近任何非线性函数。BP网络用于函数逼近时,权值的调节采用的是负梯度下降法,这种调节权值的方法有它的局限性,即存在着收敛速度慢和局部极小等缺点。而径向基神经网络在逼近能力、分类能力和学习速度等方面均优于BP网络。在逼近水轮机特性时,经过比较,采用的是径向基函数三层前向网络(Radial Basis Function,简称RBF),网络由输入层、隐层和输出层组成,具体结构如图1-14所示。
图1-14 径向基函数三层前向神经网络的结构
隐层节点中的作用函数(基函数)对输入信号将在局部产生响应,也就是说,当输入信号靠近基函数的中央范围时,隐层节点将产生较大的输出,由此看出,这种网络具有局部逼近能力,所以径向基函数网络也称为局部感知场网络。
作为基函数的形式,有下列几种:
这些函数都是径向对称的,但最常用的是高斯函数:
式中:x为n维输入向量;ci为第i个基函数的中心,与x具有相同维数的向量;σi为第i个感知的变量(可以自由选择的函数),它决定了该基函数围绕中心点的宽度;m为感知单元的个数;‖x-ci‖为向量x-ci的范数,通常表示x和ci之间的距离。
Ri(x)在ci处有一个唯一的最大值,随着‖x-ci‖的增大,Ri(x)迅速衰减到零。对于给定的输入x∈Rn,只有一小部分靠近x的中心被激活。
2.RBF网络的学习算法
在RBF网络中,输出层的线性权值和隐层的非线性激活函数的作用不同,从而可以采用不同的更新的策略,第一步确定网络隐层神经元数目、中心、宽度,第二步确定权值。这两步训练算法的主要特点是在第二步可以直接利用线性优化算法,从而可以加快学习速度和避免局部最优,因此得到了广泛的应用。根据数据中心的取值方法,RBF网的设计方法可分为两大类:①数据中心从样本输入中选取,如正交最小二乘算法、正则化正交最小二乘算法等;②数据中心动态调节方法,如k-means聚类方法、梯度训练方法、资源分配网络(RAN)等。
(1)聚类方法。
聚类方法是最经典的RBF网络学习算法,由Moody与Darken提出。其思路是先用自组织学习算法对样本输入进行聚类,确定RBF网络中h个隐节点的中心,并根据各数据中心之间的距离确定隐节点的宽度,然后使用有监督学习训练各隐节点的输出权值。虽然可以用批处理来完成上述两个学习阶段,但是使用迭代的方法更理想。在自组织学习阶段,可以使用k-means聚类算法,将径向基函数的中心放在输入空间中重要数据点所在的区域上。令h表示径向基函数的数目,h的取值需要实验来决定。假设n为迭代次数,第n次迭代时的聚类中心为c1(n),c2(n),…,ch(n),相应的聚类域为w1(n),w2(n),…,wh(n)。k-means聚类算法按下面的步骤进行:
步骤1:初始化。随机选择h个不同训练样本作为初始聚类中心,并令n=0。
步骤2。抽取样本。在输入空间中以某种概率抽取样本x,作为第n次迭代的输入向量。
步骤3:相似匹配。令k(x)表示输入向量x的最佳匹配中心的下标值。第n次迭代时按最小欧氏距离准则确定k(x)的值为
式中:ck(n)为第k个径向基函数在第n次迭代时的中心。
步骤4:更新。利用下述规则调整径向基函数的中心:
式中:Nk为第k个聚类域wk(n)中包含的样本数。
步骤5:继续。如果ci(n+1)≠ci(n),转步骤 2,否则聚类结束,转步骤6。
步骤6:根据各聚类中心之间的距离确定各隐节点的宽度,σi=kdi,其中di为第i个数据中心与其最近的数据中心之间的距离,即,k是重叠系数。
一旦各隐节点的数据中心和宽度确定之后,输出权值w=[w1,w2,…,wk]T就可以用由监督学习方法(梯度法)训练得到,但更简洁的方法是使用最小二乘方法(LMS)直接计算。
k-means聚类算法对初始中心敏感,只能达到依赖于这些初始中心的局部最优解。如果一些中心的初值位于输入空间中稀少数据点的区域,它们就没有机会移到它们所需的新位置去,导致不必要的网络增大。为了克服传统的k-means聚类算法的局限,Chen提出了一种建立在变差加权度量的聚类基础上的增强k-means聚类算法,可以使算法收敛于一个最优或近似最优结果,而与中心的初始位置无关。
(2)梯度训练方法。
RBF网络的梯度训练方法与BP算法训练多层感知器的原理类似,也是通过最小化目标函数实现对各隐节点数据中心、宽度和输出权值的学习。建立这种学习过程的第一步是定义代价函数的瞬时值
式中:N为用于学习的训练样本数目;ej为误差信号,定义为
目标是要找到使E最小的自由参数wi、ci和σi的值。
由于神经网络函数F(x)对数据中心ci、宽度σi和输出权值wi的梯度分别为
考虑到所有训练样本的影响,ci、σi和wi的调节量为
式中:φi(xj)为第i个隐节点对xj的输入;η1、η2、η3为学习速率。
代价函数E对线性权值wj来说是凸的,但是对于中心ci和宽度σi却是非凸的,所以中心和宽度可能会陷入参数空间的局部最小值。参数wi、ci、σi的更新公式中的学习速率应为不同的η1、η2、η3。与反向传播算法不同,该RBF网络的梯度训练法中没有误差反向传播。
(3)正交最小二乘学习算法。
正交最小二乘(Orthogonal Least Squares,OLS)学习算法从输入样本中选取数据中心。隐节点中心的选择在很大程度上决定RBF网络的性能,经常从训练数据中选取代表整个数据区域的样本。在RBF网络中,一个固定的中心对应于线性回归模型的一个给定回归因子,所以RBF网路隐节点中心的选择可以看成模型子集选择的问题。OLS算法可用作前向因子选择过程选出重要的回归因子。隐层输出矩阵Φ∈RN×N对输出向量y的能量贡献显然是不同的,因此可以从Φ的N个列向量中按能量贡献大小依次找出M≤N个向量构成,直至满足给定误差ε,即
式中:w0是使‖y-Φw0‖最小的最优权矢量w的值。正交最小二乘学习算法对Φ的列的选择是在对Φ作Gram-Schmidt正交化的过程中实现的。
Gram-Schmidt正交化选择数据中心的步骤如下:
步骤1:计算隐节点输出矩阵Φ,并令Φ的N个列向量为,他们构成N维欧氏空间。
步骤2:把输出向量y投影到上,如果y与某一个具有最大的夹角,即的绝对值最大,表示对y有最大能量贡献,则把对应的样本输入选为第一个数据中心,构成一维欧氏空间E1。
步骤3:用伪逆方法计算网络的输出权值,并得到此时样本的输出误差。如果误差小于目标值,则终止算法;否则对前一步中剩下的N-1个向量作Gram-Schmidt正交化,使之正交于E1,得到。
步骤4:找出与y有最大投影的,选择与之对应的样本输入为第 2 个数据中心;计算输出权值和训练误差,并判断是否终止算法。
步骤5:重复以上步骤,直至找到M个数据中心,使网络的训练误差小于给定值ε。ε是平衡最终网络精度和复杂程度的重要参数,在许多信号处理过程中,ε的理想值都是从多次的选择过程中学习得到的。
(4)面向MATLAB工具箱的神经网络设计。
神经网络工具箱是MATLAB环境下开发出来的许多工具箱之一,它以人工神经网络理论为基础,应用MATLAB语言构造典型神经网络的传递函数,并针对特定的网络结构进行网络设计、学习、训练和仿真。神经网络工具箱中含有丰富的工具箱函数,它们是应用MATLAB语言编写的各种网络设计与训练的子程序,网络设计者可以根据自己的需要调用工具箱中有关的设计训练仿真程序,从繁琐的编程中解放出来,从而提高了效率。
MATLAB软件包充分利用了现代计算机技术所能提供的软硬件资源和先进思想,是一个非常先进而且方便的最流行的软件。在国内外,它已逐渐成为科技工作者必须掌握的一种工具软件,而MATLAB环境下的神经网络工具将使设计研究者如虎添翼,有时间思考和研究出功能更强、更有效的神经网络和神经网络应用成果。
[1]:❶ 此处为古时度量。