BP算法在腔烟叶水分测量中的应用
1 引 言在**厂加工和处理烟叶的过程中, 控制好烟叶的水分有着非常重要的意义。目前, 适合于烟叶水分在线检测的比较可行的方法是微波谐振腔法, 该方法通过谐振腔耦合到空间的弥散场和物料相互作用, 利用物料中水分子的弛豫效应实现测量。微波谐振腔法
测量精度高、实时性好、通过算法可以实现与密度无关且测量结果为物料内部水分, 适合应用于工业在线测量。微波谐振腔法中, 检测量谐振频率fres 及3dB带宽b和水分的函数关系由多元线性回归确定, 因此减小多元线性回归法产生的测量误差是微波谐振腔法
测水分的一个难点。近年来, 针对应用多元线性回归法产生测量误差的问题发展出许多改进方法。但这些方法主要是寻找更加准确的多元线性回归因子, 从而能够使多元线性回归的确定系数和方差减小到小。应用BP算355法对测量结果进行校正是一种可行的方法, 但传统BP网络具有结构不**性和极慢收敛性的固有缺点, 无法避免局部极小。
在实际微波谐振腔水分测量中, 减小多元线性回归带来的测量误差是一个关键问题, 因为该误差是决定测量系统精度的主要因素。应用BP算法对测量结果进行校正时, 神经网络的初始权值随机给定, 因而每次训练的次数及终权值会略有不同, 即网络的寻优不具有**性, 会出现局部极小。此外, 初始权值给定的/ 盲目性0导致了训练次数的增多, 使得网络收敛速度极慢。实验表明, 在没有对测量结果进行校正前, 实际水分与预测水分之间的确定系数为0. 9607、均方差为0. 3805, 测量精度不高。为此, 本文提出应用基于遗传学习算法和BP算法的神经网络校正测量结果。
2 微波谐振腔水分测量
2.1 开路谐振腔水分传感器及其等效模型本文实验中采用一种开路同轴微波谐振腔作为水分测量传感器, 如图1所示。在其中心处( 电磁场强处) 开一个窗口, 用低损耗绝缘板盖住窗口, 将一定水分的烟叶放在该窗口处。这种结构使得部分场能通过窗口穿透到腔体外,然后再穿过被测烟叶, 就可以实现对烟叶水分的测量。通常情况下, 可以将谐振腔等效为一个单调谐回路模型,如图2所示
。
图1 开路同轴微波谐振腔
(1-样品容器2-同轴谐振腔3-圆柱谐振腔4-耦合探针)
图2 开路微波谐振腔单调谐回路模型
其中L、G、C0、C1、C2 分别等效为谐振腔的电感、内部损耗、内部电容、保护盖及被测烟叶的影响。
2. 2 微波谐振腔水分测量原理大量实验表明, 烟叶水分是关于谐振腔3dB带宽b和谐振频率f
res 的非线性函数[6] [7]
, 如公式( 1) 所示:
5= a1b+ a2
f
res + a3
(1)
对观测数据进行多元线性回归分析, 确定( 1) 式中的回归系数A1
, A2 和A3
, 就可以得到水分7与b及f
res 之间
的关系曲线, 如图3所示。
图3 b及f
res 与水分7 之间的非线性关系
图4 多元线性回归法得到的7predicted 与7real 之间的对应关系图4为由公式( 1) 得到的预测水分7predicted 和烟叶
实际水分7real 的对比曲线图。从图4中可以看出, 二者之间存在很大的误差, 为了使测量误差尽可能的小,
本文提出利用改进的BP算法对测量结果进行校正来提高测量精度。
3 改进的BP神经元网络校正算法
BP网络是一种非线性映射人工神经网络, 可以用含有一个隐层的BP网络来逼近任意闭合区间连续函数
[ 4]
, 因而可以用一个三层的BP网络来模拟烟叶水分测量结果的校正过程。当网络训练好之后, 就可以用来校正测量结果。应用BP网络具有较高的预测精度,
356
但鉴于传统BP算法所具有的结构不**性和极慢的收敛性限制了其在实时预报和大量样本情况下的应用。
遗传算法是基于自然选择和遗传规律的并行全局搜索算法, 具有很强的宏观搜索能力, 及寻优的全局性, 将其应用于测量结果的校正可以克服传统BP算法的缺点。因此, 先利用遗传算法来训练网络, 再用BP算法进行**求解。这样, 先得到了权值的一个范
围, 在此基础上训练网络就可以避免局部极小, 同时训练次数和终权值相对稳定,训练速度加快。
3.1 改善BP算法收敛速度
BP算法把网络的学习过程分为正向传播和反向传播两种交替过程。如果其中正向传播输出的误差平方和达不到预期的精度, 则沿误差的负梯度方向修正各层神经元的权值和阈值,如此反复, 直至网络全局误差平方和达到预期精度。BP算法基于速下降法, 但
由于速下降法的易陷入局部极小、收敛速度慢和引起振荡效应的缺点,因此需要在权调节向量中增加/ 惯
性量0,即:
$wij
(t+ 1) = GDj oi + A$wij
(t) (2)
式中: $wij
(t+1), $wij
(t)分别表示第t+1次、第t 次
迭代的权值修正量; A、G为比例因子, 表示BP算法中的误差平方和对权值的负梯度。应用该方法加速了网络的收敛速度, 并在一定程度上减少了陷入局部极小的概率。为了进一步加快收
敛速度, 使用变步长寻优法:
$E> 0 G(t+ 1) = G(t) #< <> 1
$E> 0 G(t+ 1) = G(t) #B B> 1
(3)
式中: $E是误差平方和的变化量; U、B是比例因子。3.2 基于遗传学习算法和BP算法的前馈网络BP算法局部极小问题在实际计算过程中可以通过调整初始权值来解决, 而收敛速度慢和引起振荡效应往往是网络训练后期陷入局部极小所致。因此提出在BP算法之前, 使用遗传算法大致搜索出一定的权值, 作为BP算法的初始权值, 则可以解决上述问题。由于遗传算法具有很强的宏观搜索能力, 并且具有简单通用、鲁棒性强、并行运算的特点, 所以用它来完成形成一种混合训练算法, 达到优化网络的目的。训练
首先由遗传学习算法进行寻优,将搜索范围缩小之后,再利用BP网络来寻优。
具体步骤如下:
①初始化网络及群体,给出训练参数; 对于每一个
输入向量进行归一化处理, 公式为:
[ Vj - min(Vi
)] / [ max(Vi
)- min(Vi
)] #0. 9+ 0.
05 (4)
网络的初始权值为[-1, 1] 之内的一组随机数;②计算误差平方和, 若达到预定值EGA则转④;③遗传操作产生新一代个体, 淘汰父代个体转②;④BP迭代计算( 次数限定) , 若未达到指定精度
EBP即EBP<EGA
, 则转③;
⑤输出此时的权值、阈值, 结束训练;
⑥以此时的权值、阈值计算实例, 并将计算结果参照归一化公式还原, 进行预测。
网络的初始权值区间取[-1, 1] 较为恰当, 在网络的初始权值区间取得较大时, 如果EG取较小值, 会导致训练次数增加, 但对终结果影响不大; 如果EGA取较大值,将导致终权值的范围较大, 影响网络的范化能力。
本文提出的训练BP网络的遗传学习算法和BP
算法结合的混合训练算法, 可以使微波谐振腔烟叶测量结果校正过程具有寻优的全局性和**性, 加快其
收敛速度。
在训练过程中, 为获得极小的误差平方和而进行过度训练并不可取, 因为这将使网络的权值范围很大,从而导致预测的误差增大。同时需要确定适当的隐含层数目,数目太少则网络训练十分困难; 数目太多则湮没了样本的规律, 导致预测不准确。预测精度的大小与序列平稳程度有关, 如果序列平稳, 则预测较准确;反之, 由于网络的精度是以误差平方和为标准, 预测值需要一定的变化时间才能达到实际值的极值。由于BP网络的初始权值随机给定, 因而每次训练的次数及终权值不同。用遗传学习算法进行全局训练后,网络的权值矩阵处于一定范围内, 本文提出的混合算法解决了这一问题。
将该方法用于微波谐振腔烟叶水分测量校正时,根据谐振腔的特性参数和被测烟叶的水分关系建立一个网络, 如图5所示。以大量实验得到的谐振频率f
res 、3dB带宽值b和水分7作为样本, 对网络进行训练并用训练好的网络进行测量。图5 微波谐振腔水分测量网络拓扑结构图
357
4 结 论
实验过程中将一定水分的烟叶加载到开路微波谐振腔窗口中, 在0%~10. 3%水分范围内任取10个值,分别进行10次测量。为了加快收敛速度, 对原始数据进行归一化处理, 使其落在[-1, 1] 区间内。利用HP8510B网络分析仪得到与每个水分相对应的谐振频率fres 和3dB带宽值b。
用实验得到的100组数据对网络进行训练。神经网络的拓扑结构为( 2, 8, 1) ; 交叉概率pC= 0. 95, 变异概率pm= 0. 05, 遗传学习算法误差平方和目标值EGA为0. 75。BP算法中, 初始学习率G( 0) =0. 01, 学习率上升率U=1. 05, 学习率下降率B=0. 75。外层遗传算法迭代133次, BP算法迭代6155次, 得到误差平方和0. 01999998。用得到的权值及阈值来计算物料水分, 结果表明校正后的物料水分测量值与真实值之间的均方差和确定系数相比于未经校正时有很大的改善, 如表1及图6所示。
表1 不同回归算法的效果比较未使用ANNs前 使用ANNs后
均方差 0. 3805 均方差 0. 010 9
平均**误差 0. 4390 平均**误差 0. 070 2
平均相对误差 0. 1941 平均相对误差 0. 116 1
确定系数 0. 9607 确定系数 0. 998 9
图6 神经网络校正后的7predicted 与7real 之间的对应关系
基于遗传学习算法和BP算法的前馈网络避免了传统BP算法的局部极小且保持其很高的预测精度,与未使用神经网络校正前的测量结果相比, 解释精度及科学预测性都极大地提高, 从而使烟叶水分测量的精度和速度都有了大幅度的改进, 测量结果和真实值 之间的均方差达到0. 0109, 确定系数为0. 9989。