1. 引言
不同的识别器类型会有不同的突出差异,一个识别系统的识别精度,除了依赖于系统中单个识别器的性能 [1] ,还依赖于多个识别器的组合方式。在组合分类器系统中,除了将各个识别器的优点进行组合之外,还应综合考虑需要处理信息的特征、整个特征矢量维数及反映故障的信息源等 [2] 。在确定好组合分类器来进行信息融合故障诊断决策的情况下,决策层融合方式很重要,Bayes推理融合需要知道先验概率,而D-S证据推理计算工作量又特别大,而投票表决方案是解决上述两种方法缺陷的有效途径。BP网络是最为成熟的人工神经网络模型之一 [3] [4] ,但是容易陷入局部极小或收敛速度慢等缺点,尽管有不少改进算法,如模拟退火,遗传算法等,但这些算法比较复杂。针对具体问题,对学习算法进行改进,利用三重BP网络结合投票表决方案是解决问题的有效途径。
2. 多传感器信息集成与融合MSF的基本原理
多传感器信息集成与融合的目的是将系统中若干相同类型或不同类型的传感器所提供的相同形式或不同形式、同时刻或不同时刻的测量信息加以分析、处理与综合,得到被测对象全面、一致的估计,多传感器信息集成与融合的通用模式。不同时刻、不同形式及不同层次的各个传感器有不同的融合方式,对于具体的融合系统而言,它所接受到的信息可以是单一层次上的信息,也可以是几种层次上的信息,融合的基本策略就是先对同一层次上的信息进行融合,从而获得更高层次上的融合信息,然后再汇入相应的信息融合层次。传感器各层次的信息逐次在各融合节点(即融合中心)合成;各融合节点的融合信息和融合结果,也可用交互的方式通过系统进入其它融合节点,从而参与其它节点的融合。因此总的来说,信息融合本质上是一个由低层到高层对多源信息进行整合,逐层抽象的信息处理过程。系统的信息融合相对于信息表征的层次可以分为三类:数据层融合、特征层融合和决策层融合 [5] [6] 。
3. 基于投票表决方案的组合分类器决策层信息融合算法
在抽象级别,从每个识别器
只能得到第一或最好选择。因此,可以使用投票方法组合抽象级别的分类器。假定各个识别器的判决函数
有可能不同意,对于组合识别器我们找一个总体判决函数
。为便于讨论,将
用另一种形式表示。定义一二值特征函数
如下:
(1)
投票的最保守形式是所有的识别器都必须同意;否则此模式就被摒弃。这可表示为:
(2)
很明显,所有的识别器都选择同一类是非常严格的条件,并可能导致将能正确分类的模式矢量摒弃掉。然而在错误分类的结果可能是非常严重的情况下,这种方法可能是比较适合的 [2] 。
如果允许系统中的某些识别器可以弃权,那么就可得到上面方案的一种改进方案。在这种方案中,只需那些表决的识别器同意即可。也就是说,那些选择摒弃类的识别器不表决,但所有表决的识别器必须同意 [7] 。这可由式(2)表示:
(3)
即仅当一些分类器认为
而没有分类器认为
时,
将
分类为Cj。
更常见并且不太严格的投票方案,对于多传感器决策层信息融合将更有用。在此方案中,并不是完全不允许识别错误。这即是大多数投票规则,表示如下:
(4)
这里:
(5)
把式(4)和式(5)综合起来,即如果超过一半的识别器认为
,那么模式即被分类为
。大多数投票归纳为:由
所指定的一部分识别器,必须同意下式:
(6)
由式(6)定义的投票规则,只需与最后被选标号
对应的
超过阈值即可。不考虑其它的标号。在
时,可能有几个标号都是最大值(即对于第一出现同票)。当然也有可能不管怎样选取
,第二好的选择与收到最多票的标号的值相差不多。这种情况下确定的选择可靠性就值得怀疑,因为有可能存在由第二好选择的这个识别器得到另外的分类结果。解决这类问题的方法,就是需要有一些阈值使得最好的和第二好的选择不同。取
和
表示附加的特征函数,如下:
(7)
(8)
上式的
表示对应于的
标号。
式(9)给出了考虑识别器之间竞争情况的投票方法。
(9)
式中,
。
4. BP神经网络学习算法的缺点分析及改进方法
4.1. BP学习算法的缺点分析
BP网络的误差公式为
(10)
是一个非线性函数,而多层的BP网络中
又是前一层神经元的非线性函数,用
表示其中一个样本
的误差,则
(11)
与权
有关,与输入的学习样本和输出样本有关,如暂且不考虑样本的问题,
是一个与权矢量相关的函数,在多层BP网络中,权空间的维数
为:
,在
维的空间中,误差
是一个具有极其复杂形状的曲面,如果再考虑输入的样本,则
的形状就更难想象 [8] 。对这样的梯度,其结果不像线性阈值单元的网络那么简单,对于BP网络的误差曲面,有如下三点缺点:第一,有很多全局最小的解;存在一些平坦区,在此区内误差改变很小,这些平坦区多数发生在神经元的输出接近于0或1的情况下,对于不同的映射;其平坦区的位置、范围各不相同,有的情况下,误差曲面会出现一些阶梯状。第三,存在不少局部最小点,在某些初始值的条件下,算法的结果会陷入局部最小,使算法不收敛 [9] 。针对BP算法的缺点,采取如下措施:
4.2. 基于动量项和变步长的BP学习算法
在典型的BP算法中,权的修正是由下式(包含动量项)完成的
(12)
其中
为学习率,
> 0,
为动量系数,0 <
< 1。
BP算法存在的问题之一是
和
是由经验确定的。显然,对于学习率
而言,
越大,权重变化越大,收敛越快,但是
越大也容易引起振荡。因此
应按照这样的原理选取:在不致引起振荡的情况下,尽可能取越大的
。
这个原理启发人们使用变步长法来改进BP算法。即在训练之初,设置一个较大的
,然后用每次循环训练指标
与上次循环的训练指标
进行比较。如发现振荡,即
,则减小步长
,并退回到上次的状态,以新步长重新计算 [10] ;否则以原来步长继续进行训练,即
。
这种算法的优点是在保证不引起振荡的情况下,用尽可能大的步长进行训练,并根据系统的状态,动态地改变步长,从而达到加速收敛的目的。
下面给出基于变步长的BP算法:
(1) 设置权值
和阈值
的初始值为一小的随机数,给定允许误差
(很小的正数);
(2) 提供训练样本,输入向量
和输出向量
,对每个
进行(3)到(5);
(3) 计算实际输出及隐层单元的状态;
(13)
(4) 计算训练误差;
(输出层) (14)
(隐层) (15)
(5) 修正权值或阈值;
(16)
(17)
(6) 当
历经1到
后,判断训练指标是否满足要求,若
,则转(8),否则转(7);
(7) 若
则转(2),使
循环1到
;若
,则
转(2),使
循环1到
;
(8) 停止。
4.3. 修改作用函数
传统BP算法采用Sigmoid函数作为处理单元的作用函数 [4] 。为是网络的误差传递函数更陡峭,加速网络收敛。我们在处理单元的作用函数中加入可变参数
,如下:
(18)
其中
可以改变网络中每个结点的输入与输出非线性特性,从图1中可以比较
不同时,误差传递函数的陡峭程度不同。对于网络的输出层节点有:
(19)
对于隐支节点有:
(20)
可以证明当
时,网络权值调整值变大,网络可以加速收敛到全局极小点。本文的人工神经网络目标分类器选
,这样既可以加速网络收敛速度,又不至于是网络产生振荡。

Figure 1. Curve: system result of standard experiment
图1. α不同时的作用函数曲线
5. 基于组合分类器的MSF发动机综合性故障诊断应用
发动机分为三种状态,一、正常,二、某一缸功率下降,以第一缸漏气模拟,三、某一缸功率严重下降,以第二缸断油模拟。
将瞬时转速信号小波分解尺度系数、瞬时转速特征值 + 声压信号特征值和声压信号特征值分别输入3个神经网络,得到的诊断决策结果,利用投票表决方案再进行决策层诊断,获得最终的诊断决策结果 [11] ,具体诊断流程如图2所示。

Figure 2. Curve: system result of standard experiment
图2. 基于组合分类器的决策层诊断流程
图2中,BP网络1以瞬时转速信号的小波尺度系数
作为网络的输入,输入层数为41,即为整周期瞬时转速信号小波分解尺度系数的序列数,隐层单元数为5。BP网络2以声压信号的特征值
、
、
作为网络的输入,输入层数为3,隐层单元数选为3。BP网络3以瞬时转速信号的特征值
、
、
和声压信号的特征值
、
、
作为网络的输入,输入层数为6,隐层单元数为3。三个网络的输出层数均选为3,分别以100、010,001代表各缸正常、第一缸功率下降、第二缸功率严重下降。每种状态选取40个样本作为学习样本,20个作为检验样本 [12] [13] 。
将输入样本和故障类型代码存入到一个统一的训练样本文集中,在神经网络初始化权值后,依次从训练集样本文集中取出训练样本进行训练。
在神经网络的训练中,初始化权值与网络的收敛速度有很大关系,经过多次试验,当初始值赋为(0,1)之间的随机数时,网络收敛速度大大加快。考虑到训练过程可能存在局部极小点,把误差容限与迭代次数限制结合起来对网络训练循环进行判断,只要一项条件满足就退出循环,防止训练隐入死循环。
用训练好的神经网络对样本进行识别,识别的结果定义为:
输出层第一个神经元的输出大于0.5,且是输出层各神经元的输出最大者,识别为正常;
输出层第二个神经元的输出大于0.5,且是输出层各神经元的输出最大者,识别为第一缸功率下降;
输出层第三个神经元的输出大于0.5,且是输出层各神经元的输出最大者,识别为第二缸功率严重下降;
其余情况识别为不确定,即为摒弃类。
对三个网络的识别结果,再按投票表决方案进行决策层分类,凡有两个以上的网络识别为某一状态的,即接受,否则拒绝。三个网络独自诊断和决策层诊断结果对比如表1所示。从表1可以看出,两种传感器信息融合、一种分类器的分类性能高于单信息源、单一分类器,而基于信息融合和投票表决方案的组合分类器的分类性能又高于前两者。表中诊断结果是识别率 [14] 。识别率公式为:
(21)

Table 1. System resulting data of standard experiment
表1. 诊断结果对比
6. 结论
本文提出了基于投票表决方案的组合分类器决策层融合算法,对BP学习算法进行了改进,利用三重BP网络结合投票表决方案,提出了基于组合分类器的MSF发动机综合故障诊断方法,解决了发动机综合性故障的准确定位问题,通过试验研究和结果对比,表明了该方法在提高发动机综合性故障诊断可靠性的有效性和工程实用性。
NOTES
*第一作者。