关键词:BP网络;非线性校正;结冰传感器
引言
结冰传感器是用于探测结冰厚度的设备。它是基于振动原理设计的,振动体采用振管形式。当振管垂直立于环境中时,激振电路为振管提供交变磁场,振管在磁场的作用下产生磁致伸缩作轴向振动,同时信号拾取电路将此机械振动信号转变为电信号反馈给激振电路,使电路谐振于振管的轴向振动固有频率上。根据振动理论,当振管表面出现冰层时,其轴向振动固有频率会产生偏移,使电路的谐振频率也产生偏移,因此根据频率偏移量即可确定冰层的厚度。
d=F(f′-f0) (1)??
式中:d为冰层厚度;
f′为结冰后的振动频率;
f0为结冰前的振动频率。
f0为定值,所以冰层厚度只与频率值f′有关系,但频率值与冰层厚度为非线性关系,不能简单地由频率值确定所测的冰层厚度,这样增加了厚度显示和处理的复杂性。为了保证一定的测量精度以便于在测控系统中应用,必须对其进行非线性校正。
以前一直采用表格法进行数据处理,通过分段线性化法来逼近传感器的静态特性曲线,简单、实用。但当表格小时,精度受到影响;表格大时,实时性受影响,对传感器的处理器提出了严格的要求。
神经网络方法为传感器的非线性校正方法的研究开辟了新的途径。具体做法是,以实验数据 为样本训练BP网络,得到结冰传感器的逆模型,从而使传感器经神经网络组成的系统线性化,传感器的非线性特性得到补偿,校正后的网络可按线性特性处理,提高了测量精度,大大拓展了结冰传感器的应用范围。??
1、BP网络
人工神经网络是一门新兴交叉学科。在人工神经网络的实际应用中,80%~90 %的人工神经网络模型是采用BP神经网络。它是一种前馈神经网络,通常由输入层、输出层和若干隐含层组成,相邻层之间通过突触权矩阵连接起来。研究最多的是一个隐含层的网络,因为3层的前馈网络就能逼近任意的连续函数。
各层节点的输出按下式计算
??
式中yi是节点输出,xi是节点接收的信息,wij是相关连接权重,θi为阈值,n是节点数。??
2、用BP网络进行数据拟合
2.1基本原理
采用神经网络方法对传感器输出特性进行数据拟合的原理图由传感器模型和神经网 络校正模型两部分组成,如图1所示。图中,假设传感器的静态输入输出的特性为y=f(x)。采用实验值通过对BP网进行训练,可以得到传感器的逆模型x=f-1(y)。对于任意输出yi,都可以找到输入输出特性曲线上对应的输入xi,从而实现了线性化。??
2.2学习算法
BP网络的基本学习算法是误差反向传播学习算法。这种算法简单、实用,但从数学上看它归结为一非线性的梯度优化问题,因此不可避免的存在局部极小问题,学习算法的收敛速度慢,通常需要上千次或更多。
近些年许多专家对学习算法进行了广泛的研究,现在已发展了许多的改进学习算法,如快速下降法、Levenberg-Marquardt法等,收敛速度快,能满足实时性要求。
其中Levenberg-Marquardt法简称L-M算法,是一种将最陡下降法和牛顿法相结合的算法。它的本质是二阶梯度法,故具有很快的收敛速度。基于此,文中采用L-M算法来训练BP网络。它不需要计算Hessian矩阵,而是利用式(3)进行估算:
式中,J为Jacobian矩阵,包括网络误差项相对于权重和阈值的一阶微分 ,e为网络的误差项。Jacobian矩阵可以利用标准的BP算法得出,这比直 接计算Hessian矩阵简单得多。L??M算法的迭代式为:
如果比例系数μ=0,则为牛顿法,如果μ取值很大,则接近梯度下降法,每迭代成 功一步,则μ减小一些,这样在接近误差目标的时候,逐渐与牛顿法相似。牛顿法在接近误 差的最小值的时候,计算速度更快,精度也更高。实践证明,采用该方法可以较原来的梯度 下降法提高速度几十甚至上百倍。
2.3MATLAB中学习过程与仿真
MATLAB6.2中的神经网络工具箱功能强大,不但能方便创建常见的神经网络,还支 持用户自己构造网络。
在实际中,根据测量范围和精度要求,以实验中的101个数据为样本,在MATLAB中构造BP网络进行训练。在训练之前,对数据进行了预处理。谐振频率值为输入样本P,将冰层厚度变换到[-1,1]的范围后作为输出样本t。训练完后,再通过后处理还原回原来的样本空间。神经网络模型为单输入单输出,隐含层有5个神经元,训练中误差指标定为0.01。训练结果如图2、图3、表1。训练进行了15步就满足了误差要求,收敛速度较快。
3、结束语
神经网络作为一种分析、处理问题的新方法已经在很多领域显示了强 大的生 命力。由于神经网络具有高速并行计算能力和非线性变换能力,能够随时进行再学习且学习 效率很高, 特别对于产品性能一致性不高的结冰传感器更见其效果。相对其他校正方式而言,神经网络 无须深入了解对象的机理,具 有很强的曲线拟合能力。实验表明,补偿的效果令人满意,大大方便了结冰传感器在测控系 统中的应用。??