刘继清,黄金花
(武汉船舶职业技术学院,武汉 430050)
基于改进决策树算法的设备故障智能诊断模型
刘继清,黄金花
(武汉船舶职业技术学院,武汉 430050)
在20世纪80年代,人工智能及计算机技术的飞速发展,为故障诊断技术提供了新的理论基础,产生了基于知识的故障诊断方法。如基于专家系统的故障诊断方法、基于模糊理论和神经网络的故障诊断方法、基于数据融合和数据挖掘的故障诊断方法等。这些方法由于不需要对象的精确数学模型,而且具有某些“智能”性,因此比以前基于信号的故障诊断技术有更强的生命力。
但是,由于设备结构和功能日趋完善,设备故障征兆与故障特征的非线性特性也日趋复杂,从而导致现代故障诊断及识别难度不断提高。仅仅靠一种理论、一种方法往往无法实现在复杂环境下准确、及时地进行设备的故障诊断。因此集多种理论和方法于一体的集成型智能故障诊断系统必将是设备故障诊断技术的新趋势。
本文提出一种混合决策树智能故障诊断方法。首先根据原始数据构建故障诊断原始决策表,然后利用离散优化理论和可辨识矩阵约简算法得到属性维数最少的离散数据决策表;最后利用C4.5 算法构造诊断决策树;并对实例进行了故障诊断。结果表明:这种集多种理论为一体的智能故障诊断方法能大量减少计算量,有效降低决策树规模,提高故障识别速度,具有很强的工程实用性。
决策树(Decision Tree)[1]是数据挖掘技术中一种常用的分类方法。决策树作为用于分类和决策的主要技术,是一种类似于流程图的树结构。决策树也称为判定树,其方法就是利用信息论中的信息增益寻找样本数据库中具有最大信息量的属性字段建立决策树的一个节点,再根据该属性字段的不同取值建立树的分枝,并在每个分枝重复建立树的下一个节点和分枝的过程。
决策树的构建是一种自上而下、分而治之的归纳过程,本质是“贪心”算法[2]。在一棵决策树中,每个内部节点表示一个属性上的测试,每个分枝代表一个测试的输出,而每个叶节点则存放一个类标号,树的顶层节点是根节点。决策树的构造从代表全部训练样本的根节点开始,为每个内部节点选择一个分裂属性,并根据该属性的取值将样本划分为决策树若干分枝,直到叶节点将样本划分为某一类[3]。典型的决策树算法有ID3和C4.5两种,它们在建树的简洁性、分类的快速性、可处理数据的范围和规模等方面各有不同。以前进行故障分类诊断的常用方法为ID3。
ID3算法的主要缺陷是,用信息增益作为选择分枝属性的标准时,偏向于取值较多的属性。而且,ID3算法只能处理离散值属性,在数据处理范围上存在一定的局限性。基于以上原因,本例中选择C4.5算法进行故障分类诊断。
C4.5算法是由ID3算法演变而来的,有如下优点:
1)采用信息增益率进行属性分割,克服了用信息增益来分割属性时偏向选择值多的属性的不足。信息增益率定义为[4]:
其中,Gain(A)为信息增益,SplitI(A)是属性A划分子集的熵。采用增益率划分属性得到的决策树,其中每个节点取具有最大信息增益率的属性。
2)可以处理连续数值型属性。C4.5在选择某节点上的分枝属性时,对于离散型描述属性,C4.5的处理方法与ID3相同,按照该属性本身的取值个数进行计算;而对于某个连续性描述属性,C4.5将预先作以下离散化处理。具体如下:
(1)寻找该连续型属性的最小值,并把它赋值给MIN,寻找该连续型属性的最大值,并把它赋值给MAX;
(2)设置区间[MIN,MAX]中的N个等分断点Ai,它们分别是
(3)分别计算把[MIN,Ai]和[Ai,MAX](i=1,2,…,N)作为区间值时的Gain值,并进行比较;
(4)选取Gain值最大的Ak做为该连续属性的断点,把属性值设置为[MIN,Ak]和(Ak,MAX]两个区间值。
3)决策树构建后可进行剪枝。由于数据表示不当、有噪声或者由于决策树生成时产生重复的子树等原因,都会造成产生的决策树过大。因此,简化决策树是一个不可缺少的环节。决策树构建后,可利用基于分类误差率的剪枝算法对生成树进行修剪。该方法使用训练样本集本身来估计剪枝前后的误差,从而决定是否需要剪枝。方法中使用的公式如下:
其中N是实例的数量,f=E/N为观察到的误差率(其中E为N个实例中分类错误的个数),q为真实的误差率,c为置信度(C4.5算法的一个输入参数,默认值为0.25),z为对应于置信度c的标准差,其值可根据c的设定值通过查正态分布表得到。通过该公式即可计算出真实误差率q的一个置信度上限,用此上限为该节点误差率e做一个悲观的估计:
通过判断剪枝前后e的大小,从而决定是否需要剪枝。决策树的剪枝可使生成的决策树叶节点最少且每个叶节点的深度最小,从而简化决策树结构,在保证故障诊断正确率的前提下为决策规则库“瘦身”。
表1为柴油机缸套活塞磨损的样本数据[5],测取某型叉车柴油机缸体表面振动信号,对柴油机缸套活塞磨损程度进行诊断。由于缸套活塞间的磨损是循序渐进的,故不可能对磨损状态定一个明显的界限,选择有代表性的3个状态进行分析即正常工作状态、轻微磨损状态及严重磨损状态。将时间-频率平面等分为12个区域[6],条件属性C={C1,C2,C3…C12}对应于这12个时域局部能量特征参数,决策属性d={1,2,3}对应于正常状态、轻微磨损状态和严重磨损状态。
表1 柴油机缸套活塞磨损的样本数据
表2 离散化处理后的决策表
根据离散化优化算法对表1的样本数据进行离散化,离散化后的决策表如表2所示。
如果直接对上表数据使用C4.5决策树算法进行故障分类诊断,由于特征属性维数较多,C4.5算法需要一个个计算C1-C12各节点的信息量,比较信息增益率,势必导致计算量太大。即使C4.5可在决策树构建后进行剪枝,但在生成决策树前期仍有很大的计算量。因此,笔者考虑采用可辨识矩阵约简算法先对表2进行约简,然后再采用C4.5算法构建决策树,进行故障分类诊断。
粗糙集(Rough Set)理论于1982年由波兰科学家Pawlak提出,已成为信息科学最活跃的研究领域之一。属性约简作为粗糙集理论的核心内容,它的意义在于可以有效地删除冗余信息[7],形成精简的决策规则库,提高人工或机器识别的快速性和准确性。目前,最常用的一致性数据属性约简方法是可辨识矩阵约简算法。
Skowron可辨识矩阵定义为[8]:
可辨识矩阵约简算法的原则是最后的约简矩阵即包含了相对重要的属性,且这些属性之间的依赖度要充分小。在可辨识矩阵中只含单个属性的元素构成了相对核,不含相对核的元素构成集合B=A-C0,其在可辨识矩阵中出现的频率记为P(ak),则属性ak的重要性为:
经过可辨识矩阵约简算法处理后,去除了表2 中的冗余属性,将表2约简为只有{C2, C3, C4,C11}四个代表属性的决策如表3所示。
表3 约简后的决策表
笔者将可辨识矩阵约简算法和C4.5决策树算法结合,设计了一种改进型决策树智能诊断模型。其基本结构如图1 所示。它主要包括数据库模块、决策表模块、诊断规则库模块、诊断决策树模块和诊断结果输出模块。在进行故障诊断时, 先将诊断规则和故障特征向量载入, 同时数据库中的数据经离散化处理后实时送到诊断模块,诊断模块根据载入的诊断规则进行推理和诊断, 并将结果输出。
图1 基于改进决策树算法的设备故障诊断模型
图2 利用本方法约简的决策树
将约简后的决策表3数据送入后续的C4.5 模块, 根据增益率最大原则生成决策树如图2所示。由此产生6条IF-THEN规则。将测试数据送入此模型进行柴油机缸套活塞磨损情况的故障诊断,正确率达到90%以上。
这种将可辨识矩阵约简算法和C4.5决策树算法相结合的设备故障诊断模型可以对样本特征参数进行约简,去除冗余信息,有效减少C4.5决策树的节点数,减少故障规则提取的工作量, 降低决策树规模,实现故障类型的快速准确识别。比单纯使用决策树算法具有更强的工程实用性。当样本数据充足时,该方法可推广应用。
[1]SUN Weixiang,CHEN Jun,LI Jiaqing.Decision Tree and PCA Based Fault Diagnosis of Rotating Machinery[J]. Mechanical Systems and Signal Processing,2007, 21(3):1300-1317.
[2]苏新宁,杨建林.数据仓库和数据挖掘[M].北京:清华大学出版社,2006.
[3]蒲元芳,杜红乐.决策树在网络入侵检测中的研究与应用[J].电脑知识与技术, 2010(7):1560-1563.
[4]Quinlan J.C4.5 Programs for Machine Learning[M].New York:Morgan Kauffman,1993.
[5]黄广君,郭洪涛,张孝国.基于粗糙集与神经网络的故障诊断研究[J].计算机工程与应用,2008,44(35):229-231.
[6]王奉涛.基于局域波形法的时频局部能量特征提取方法[J].中国机械工程,2003,14(23): 2012-2014.
[7]张超,马存宝,宋东,等.基于粗糙决策树模型的复杂设备智能故障诊断[J].兵工学报,2008(9):1123-1128.
[8]王国胤.粗糙集理论与知识获取[M].西安交通大学出版社,2000.
Intelligent fault diagnosis method for equipments based on improved decision tree algorithm
LIU Ji-qing, HUANG Jin-hua
提出一种改进决策树智能故障诊断方法。首先构建故障诊断原始决策表,然后对特征数据进行离散化处理;接着利用可辨识矩阵约简算法对决策表进行属性约简;最后利用 C45 算法构造出最优诊断决策树;并对实例进行故障诊断。结果表明:该方法能有效地删除冗余信息,形成精简的决策规则库,提高故障识别速度, 具有很强的工程实用性。
决策树;C4.5算法;可辨识矩阵约简算法;故障诊断
刘继清(1965 -),男,湖北孝感人,副教授,硕士,主要从事算法研究、计算机及网络技术、软件开发等工作。
TH166;TP391.7
A
1009-0134(2011)4(上)-0030-04
10.3969/j.issn.1009-0134.2011.4(上).10
2010-11-24