基于贝叶斯方法的神经网络非线性模型辨识

资源类型:pdf 资源大小:421.00KB 文档分类:工业技术 上传者:崔灿

相关文档

批量下载下列文档
关闭
关闭
关闭
关闭
关闭

文档信息

【作者】 魏东  张明廉  蒋志坚  孙明 

【关键词】系统辨识 非线性 神经网络 泛化 

【出版日期】2005-04-11

【摘要】研究了基于贝叶斯推理的多层前向神经网络训练算法,以提高网络的泛化性能。在网络目标函数中引入表示网络结构复杂性的惩罚项,以便能够在训练优化过程中降低网络结构的复杂性,达到避免网络过拟合的目的。训练过程中使用显式的概率分布假设对模型进行分析和推断,根据融入先验分布的假设和依据,获取网络参数和正则化参数的后验条件概率,并基于后验分布的贝叶斯推理得出最优化参数。利用上述算法训练前向网络,对一个微型锅炉对象进行了模型辨识,通过测试,证明所辨识出的对象模型能够较好地表现出对象的动态行为,且具有较好的泛化性能。

【刊名】计算机工程与应用

全文阅读

1引言多层前向神经网络可以以任意精度逼近任何连续函数,其作为一种非线性系统的辨识工具得到了广泛的应用。神经网络建模的本质是找出蕴含在有限样本数据中的输入和输出之间的本质联系,即映射关系,从而对于未经训练的输入也能给出合适的输出,即具备泛化(generalization)功能。在实际工程中,由于所收集的样本数据都是包含噪声的,训练次数过多或网络规模过大,在训练神经网络时使网络记住了不必要的细节,网络将包含噪声的数据都记录下来,这样对于新的数据不能给出正确的输出,也即不具备很好的泛化功能,这种情况称为过拟合(overfitting)[1,2]。避免出现过拟合的最好方法就是采集尽可能多的训练样本数据,并尽可能使所使用的训练样本数据能够充分表示被控对象的输入输出关系。但是,在实际应用场合,训练样本数据通常都很有限,该文研究了基于贝叶斯正则化(regularization)方法[3]的神经网络训练算法,在网络目标函数中引入表示网络结构复杂性的惩罚项,以便能够通过在训练优化过程中降低网络结构的复杂性,达到避免网络过拟合的目的。为了能够寻找到最优的网络参数,该文在贝叶斯分析框架下,将模型参数视为不确定参数,使用显式的概率分布假设对模型进行分析和推断,其中对未知变量的先验知识可以通过先验分布来定量表述。根据融入先验分布的假设和依据,获取相关参数的后验条件概率,并基于后验分布的贝叶斯推理得出最优化参数。该文利用上述算法训练前向网络,对一个微型锅炉对象进行了模型辨识,在辨识过程中注意采用泛化方法解决样本数据采集和网络结构确定方面的问题,通过测试,证明所辨识出的对象模型能够较好地表现出对象的动态行为,且具有较好的泛化性能。2正则化方法对于实际系统而言,输入变量有两类,一类为可观测的变量,如人为给系统提供的输入,另一类为不可观测也不可控制的变量,如干扰和噪声信号,其也对系统的输出有影响。设x=[x1,x2,…,xm]为可观测的变量,则系统输出d与输入之间的关系可写为:d=f(x)+ε(1)其中ε代表不可观测输入对输出的影响,ε是服从某种分布的随机变量,一般情况下可认为ε的均值为零。如果全部输入都是可精确测量的,即ε=0,则模型辨识问题就成为一般的曲线逼近问题;ε≠0时是典型的回归模型。由于样本数有限,只能按下式求f的估计:JD(F)=12Kk=1∑Nn=1∑(dnk-ynk)2(2)JD(F)称为网络F的常规误差项,上式中N为样本数,K为神经网络输出量个数,dnk为期望输出,ynk为网络实际输出。式(2)的解不唯一,即使上述目标函数达到最小的函数有无限多个,因此由有限数据点恢复其背后隐含的规律(函数)问题往往是不适定的(ill-posed)[4],解决这类问题可用正则化理论,即加入一个约束项使问题的解稳定,从而得到有用的解,此时需要有样本以外的知识。一般说来,F(x)具有内插能力的条件是F(x)是平滑的,而当网络的权值较小时,网络的输出则较为平滑[5]。因此约束项应代表平滑性约束,目的是为了减小网络的权值(阈值)。这样,目标函数应为:J(F)=β·12Kk=1∑Nn=1∑(dnk-ynk)2+α·12‖PF‖2=βJD(F)+αJW(F)(3)其中JW(F)为正则化方法中网络复杂性惩罚项,P代表平滑性约束算子,α、β控制着其他参数(权及阈值)的分布形式,被称为超参数。超参数的大小决定着神经网络的训练目标,若α<<β,则训练算法目的在于尽量减小样本数据的训练误差;若α>>β,则训练算法目的在于使网络产生更为平滑的响应。在实际工程中,两种目的需要折衷考虑,极小化目标函数是为了在减少网络训练误差的同时,又降低网络结构的复杂性。对于正则化方法而言,难点在于超参数的确定,该文采用贝叶斯方法实现超参数的选择。3贝叶斯推理贝叶斯方法着眼于权值(阈值)在整个权空间中的概率分布。若用H表示网络结构(主要是隐层神经元个数),在网络结构已确定的情况下,在没有样本数据时,若知道权值(阈值)的先验分布p(w|α,H),其中w为权值(阈值)向量,有了样本数据集D=狖x(N),d(N)狚后的分布是后验分布p(w|D,α,β,H),根据贝叶斯规则,有:p(w|D,α,β,H)=p(D|w,β,H)p(w|α,H)p(D|α,β,H)(4)其中p(D|w,β,H)为似然函数,分母p(D|α,β,H)是一个归一化因子,即:p(D|α,β,H)=+∞-∞∫p(D|α,β,H)p(w|α,H)dw(5)在没有数据时,由于对权的分布只有很少的知识,因此先验分布是一个很宽的分布,一旦有了数据,可转化为后验分布,后验分布较为紧凑,即只有在很小范围中的权值才可能与网络的映射一致。为得到后验分布,必须知道先验分布p(w|α,H)和似然函数p(D|w,β,H)。3.1先验分布在没有权值的先验知识时,该文假设p(w|α,H)服从高斯分布,这也是常见分布,则有:p(w|α,H)=1zW(α)exp(-12α‖w‖2)(6)它对应的JW为:JW=12‖w‖2=12Wi=1∑wi2(7)式(6)中:zW(α)=+∞-∞∫exp(-αJW)dw(8)W为网络参数(权值和阈值)的个数。将(7)式代入(8)式,可得zW(α)值为:zW(α)=(2πα)W2(9)3.2似然函数假定期望输出d是由某种含零均值高斯噪声的平滑函数产生的,则给定输入量x后观察到输出d的概率为:p(dn|xn,w,β,H)∝Kk=1∏exp(-β2[dnk-ynk(xn,w,β,H)]2)(10)若各样本数据是独立选择的,则:p(D|w,β,H)=Nn=1∏p(dn|xn,w,β,H)=1zD(β)exp(-βJD)(11)其中:zD(β)=+∞-∞∫exp(-βJD)dD(12)将式(2)代入式(12),则可得zD(β)的值为[6]:zD(β)=(2πβ)N2(13)3.3优化求解将式(6)和式(11)代入式(4),可得:p(w|D,α,β,H)=1ZM(α,β)exp(-βJD-αJW)=1ZM(α,β)exp[-M(w)](14)其中:ZM(α,β)=+∞-∞∫(-βJD-αJW)dw(15)由于ZM(α,β)与w无关,因此最小化M(w)可以求得后验分布的最大值,此时所对应的权值(阈值)即为所求。3.3.1ZM(α,β)的确定当样本数据量较多时,后验分布趋于高斯分布,若后验分布曲线足够窄,峰值足够尖锐,则可利用泰勒展开对问题作进一步的简化,以求出ZM(α,β)。设M(w)取最小值时所对应的权值(阈值)为wMP,将M(w)在wMP附近泰勒展开,并忽略高次项,有:M(w)≈M(wMP)+M(wMP)(w-wMP)+12(w-wMP)TM(wMP)(w-wMP)(16)因为M(wMP)在wMP处为0,所以有:M(w)=M(wMP)+12(w-wMP)TM(wMP)(w-wMP)(17)其中M(wMP)的Hessian阵M(wMP)为:M(wMP)=βJD(wMP)+αJW(wMP)=βJD(wMP)+αI(18)则后验概率为:p(w|D,α,β,H)=1ZM(α,β)exp[-M(wMP)-12(w-wMP)TM(wMP)(w-wMP)](19)其中ZM(α,β)为ZM(α,β)的近似值,其值为:ZM(α,β)=+∞-∞∫exp[-M(wMP)-12(w-wMP)TM(wMP)(w-wMP)]dw=(2π)W2狖det[M(wMP)]狚-12exp[-M(wMP)](20)3.3.2超参数的确定此处仍然采用贝叶斯规则求取超参数α和β,还是需要求后验分布:p(α,β|D,H)=p(D|α,β,H)p(α,β|H)p(D|H)(21)假设先验分布p(α,β|H)满足一种很宽的分布函数。因为式(21)中的归一化因子p(D|H)与α、β无关,因此求取最大后验分布的问题就转化为求解最大似然函数p(D|α,β,H)(又被称为显著度(evidence))。注意到此处的似然函数p(D|α,β,H)就是式(4)中的归一化因子,则有:p(D|α,β,H)=p(D|w,β,H)p(w|α,H)p(w|D,α,β,H)(22)将式(6)、(11)和(14)代入式(22):p(D|α,β,H)=ZM(α,β)zD(β)zW(α)(23)再将式(9)、(13)和(20)代入式(23),并取对数:lnp(D|α,β,H)=-αJW(wMP)-βJD(wMP)-12ln狖det[M(wMP)]狚+W2lnα+N2lnβ-N2ln(2π)(24)将式(24)分别对α和β求偏导,即可求出最大显著度处的αMP和βMP。假设βJD(wMP)的特征值是狖λi狚,i=1,2,...,W,则根据式(18)可得出M(wMP)的特征值为狖λi+α狚,又由于JD是权值(阈值)的二次型,可得:ddαlndet犤M(wMP) =ddαln[Wi=1∏(λi+α)]=Wi=1∑1λi+α=tr[M(wMP)]-1(25)又因为λi与β成比例,所以有:dλidβ=λiβ(26)则有:ddβlndet犤M(wMP) =ddβln[Wi=1∏(λi+α)]=ddβWi=1∑[ln(λi+α)]=Wi=1∑1λi+α·dλidβ=1βWi=1∑λiλi+α(27)先将式(24)对α求偏导,并令其等于0,可得:2αJW(wMP)=W-Wi=1∑αλi+α=Wi=1∑λi+αλi+α-Wi=1∑αλi+α=Wi=1∑λiλi+α=γ(28)再将式(24)对β求偏导,并令其等于0,可得:2βJD(wMP)=N-Wi=1∑λiλi+α=N-γ(29)所以有:αMP=γ2JW(wMP),βMP=N-γ2JD(wMP)(30)由式(28)可以看出,γ表示网络中有多少参数在减少性能指标函数方面起作用,它的取值范围为0~W。3.3.3Hessian阵的近似计算在进行优化求解时需要计算M(w)在其最小点wMP处的Hessian阵,由式(18)可知,需要计算JD(wMP),计算量较大,为了提高计算速度,可对Hessian阵作进一步简化。令:εnk=(dnk-ynk)(31)则:JDw=狖Kk=1∑Nn=1∑εnkwi狚(32)则可得到JD(wMP)的元素为:(JD(wMP))ij=Kk=1∑Nn=1∑[εnkwi·εnkwj+εnk·2εnkwi·wj](33)由于εnk很小,因此此处忽略式(32)中第2项的影响,则Hessian阵JD(wMP)可近似表示为:(JD(wMP))ij≈Kk=1∑Nn=1∑[εnkwi·εnkwj](34)4对象模型辨识4.1对象描述该文所研究的被控对象是一个微型锅炉,此锅炉采用不锈钢制成,共有三层,即加热层、冷却层和溢流层,如图1所示。加热层中安装有2kW的电加热丝,通过控制器提供4~20mADC的电流控制加热功率;冷却层中流有循环水,可以使加热层中水的热量散发,水温下降,加热层也可以使冷却层的水温上升;在锅炉外围装有盘管;加热层、冷却层和盘管出来的水最后全部排到溢流层,然后直接排到储水箱中。冷却层和加热层都有温度传感器检测其水温,经过调节器的温度变送器,可将温度信号转换成4~20mADC的电流信号。冷却层的水流量采用变频调节方式实现,执行机构为电动调节阀,在水流管道中装有电磁流量传感器和电磁流量转换器,4~20mA标准信号输出。图1中未画出电动阀、流量传感器、储水箱等设备。该被控对象为两路输入、两路输出的强耦合非线性对象,两路控制量分别为加热层电加热丝加热功率和冷却层水流管道水流量,均取4~20mA范围的电流进行控制;输出量分别为加热层水温和冷却层水温。图1微型锅炉控制原理示意图4.2训练样本数据采集进行模型辨识前,首先启动变频泵将加热层和冷却层注满水,然后停止给加热层注水,接着按以下步骤采集数据:(1)热功率开关设为关闭状态。(2)调整冷却层水流量,将水流量电动调节阀的输入控制电流在4~20mA范围内每隔1mA取一个测试点。(3)每对应一个电动调节阀的输入控制电流,给加热层电加热丝施以不同的加热功率,也是在4~20mA范围内每隔1mA取一个测试点。对应于每一个加

1 2

引证文献

问答

我要提问
关闭