基于PLSA和SVM的道岔故障特征提取与诊断方法研究
2018-07-20钟志旺
钟志旺, 唐 涛, 王 峰
(1. 北京交通大学 电子信息工程学院, 北京 100044; 2. 北京交通大学 轨道交通控制与安全国家重点实验室, 北京 100044)
铁路道岔是铁路系统重要的线路连接设备,包括道岔和道岔转换设备。道岔转换装置,一是根据行车需要,按照联锁技术条件将分叉线路开通在需要的位置,保证正确的行车路径;二是道岔转换到位后期,通过缺口检查,判断道岔尖轨与基本轨之间是否达到规定的密切程度,以保证列车通过道岔时的行车安全。道岔转换设备在室外,受风沙、雨雪、酷暑和严寒等自然条件和列车震动、冲击,钢轨爬行、横移等外界因素影响较大,而且使用数量多,在信号设备中,一直是故障率较高的设备。通过统计某铁路局近4年来的信号设备故障发现,道岔转换设备故障占所有信号设备故障总数的40%以上。
道岔维护是铁路基层电务段设备维护的主要工作之一,在设备维护过程中,积累了大量的历史数据,存储的格式多样,但电子数据基本上都是以文本方式记录或者可以当成文本处理。这些维护数据对道岔故障分析和设备维护决策有重要参考价值。
目前,国内外学者在道岔故障诊断方面进行了研究。文献[1-5]对道岔关键参数监测进行了研究,描述了监测和方法系统的原理及结构。但是,目前对基于故障维护文档的故障诊断研究相对较少,而故障记录数据对于道岔故障的研究至关重要。道岔的故障诊断主要由数据特征提取和诊断两部分组成。
通过调研中国铁路广州局集团有限公司(以下简称广州局)以及长沙电务段、广州电务段、怀化电务段等保存的历史故障一览表发现,故障数据录入缺乏规范性,且不同时间段录入数据字段设置和语言描述差距较大,导致故障数据可利用价值降低;铁路局和各站段的故障表中设备类别设置不完全一致,对故障数据的统计和处理带来一定的难度。针对上述问题,一些学者[6-10]提出基于本体的文档标准化架构来解决维护过程中出现的信息描述不一致问题,促进了对铁路维护大数据的规范化管理,但仍然不能对大数据进行有效的分析和处理。文献[9]提出将文本挖掘的方法引入铁路车载设备故障诊断,提供了新的处理思路,但是存在以下缺点:一是完全考虑人工经验选取故障词项空间,导致处理效率低并且无法自动迁移到其他铁路设备;二是采用贝叶斯网络的诊断方法需要基于有因果结构(一级故障为二级故障的原因)的故障记录数据,存在较大的局限性,并且在数量较小的样本上诊断表现效果不理想。
目前有关道岔设备的故障诊断,依然主要依赖于专家经验,导致维修时间无法保障,从而影响铁路运营的效率和安全性。另一方面,由于道岔设备的工作环境复杂,负载繁重,使得道岔设备故障模式众多,为道岔设备故障诊断带来挑战。
针对道岔设备故障记录数据的描述复杂性和难处理性,以及克服文献[9-10]等提出方法的局限性,本文提出基于分词算法和主题模型相结合的方法来提取道岔设备故障描述的故障词项特征和故障主题特征,获得故障文档在主题特征空间中的表达[11],从而降低特征维度和算法复杂度。针对小样本故障模式诊断效果不理想的问题,选取SVM作为故障分类方法,SVM已经被公认为是在小样本数据上进行学习的最有效模型之一,本文以广州局现场数据为基础进行实验分析。
1 背景
依据道岔转化系统故障机理进行分析,道岔的故障主要分为电气故障和机械故障。现场维护记录表明,道岔故障中机械故障占比约为90%以上。
1.1 道岔设备故障记录数据
本文将广州局提供的故障一览表中的道岔故障分离出来,针对道岔相关的故障进行故障原因分析。表1给出的是故障一览表中部分例子。
表1 道岔相关故障数据举例
从表1可知,故障原因包含众多故障现象描述信息,但由于现场维护人员语言习惯以及维护技能的不同,导致记录方式口语化和记录差异性,诸如此类的问题增加了故障诊断算法的复杂性和诊断难度。
由于故障类别是故障诊断模型训练的数据基础,因此依据道岔结构组成,结合故障数据信息,将道岔故障分类为12个故障类别,见表2。
表2 道岔故障类别
1.2 道岔设备故障诊断流程
图1为道岔转换系统故障诊断的实现步骤,主要为故障词项特征提取、故障主题特征提取(语义特征)和故障诊断3部分。其中,故障词项特征提取主要采用中文分词手段和“词袋模型”方法对故障文档进行表达;由于语义信息的丢失和维度较高,对故障诊断带来较大挑战,因此,采用主题模型进行语义特征提取和降维,将故障文档表达在主题特征空间上;最后,采用支持向量机作为诊断器对道岔转换系统进行故障诊断。
图1 道岔故障诊断框架
2 基于文本分词和主题模型的故障特征提取
由于故障文本记录主体(信号工)的差异性,导致故障现象描述的不一致性和复杂性,增加了诊断推理的复杂性。恰当的故障特征能够降低道岔故障诊断的复杂度,提高诊断效率。在自然语言处理领域,对于以文本形式的原始表达模型为词项的向量空间模型VSM( Vector Space Model),向量的维度即词项的数量。此模型的缺点是忽略了词项的顺序和词项之间的关联关系,只统计各词项在文档中出现的次数。因此,对于道岔设备故障诊断来说,其原始特征即为故障词项特征。采用VSM模型表达道岔设备故障描述,忽略了故障词项特征之间的关联关系,因此,也就降低了后续故障诊断的效率。近些年,一种可以抽取文本库中隐层主题的方法,主题模型(Topic Model),在诸多领域有着广泛的应用,如社交网络、用户评价、新闻分类、情感分析等。因此,为了克服上述问题并提高特征提取的自动程度以及在故障诊断上的适应度,本文通过文本分词(Segmentation)[12-13]和主题模型[14-15]对道岔设备的故障记录进行分割和主题提取,具体步骤见图2。首先将故障文档在“词袋模型”框架下表达为词项文档矩阵,实现原始故障特征提取;然后,通过“主题模型”的架构,将故障文档的“故障词项特征空间”转换到“语义特征空间”,进一步实现故障主题特征提取。
2.1 故障词项特征提取算法
对于原始故障词项特征的生成,通过中文分词技术对故障文档进行自动处理而实现。近年来,中文分词技术已经有了较大发展,出现了众多的算法。主要包括以下4类:基于字符串匹配的分词方法、基于理解的分词方法、基于统计的分词方法和基于语义的分词方法[12-13]。中文分词算法的核心思想是给定文档记录(输入文字串)后,采用分词算法对文档进行分割和过滤处理,进而依据算法输出最优的分词结果,即中文词项、其他类别字符串或单词。分词算法模块的流程结构见图3。
本文采用NLPIR汉语分词算法(又名ICTCLAS)对故障进行分词处理。由于一般通用的分词工具并不包含特定领域的专业词汇。分词工具对道岔的故障现象描述记录进行分词,结果不理想。
在铁路信号领域中的一些词汇,如基本轨、滑床板、顶铁等有其特定含义,并携带重要的故障类别信息,分词过程中应当作为一个词项处理。因此,我们通过在分词过程中将领域专家知识,即领域特定词库,添加到分词匹配词库中,可以获得较为理想的效果。对于道岔转换系统的特定词汇见表3。
表3 道岔设备故障专业词汇举例
对故障文档进行中文分词后,便可以得到道岔转换设备故障词典。在VSM模型的假设下,可以将故障文档表达在词项空间上。词项文档矩阵的生成见图4。
2.2 基于PLSA主题模型的故障主题特征提取
由于“故障词项特征空间”未考虑词项顺序和关联性,无法表达文本语义,因此不能较好地解决同义词和一词多义问题,增加了后续故障诊断的复杂性。近几年,主题模型技术PLSA( Probability Latent Semantic Analysis) 得到较快发展[14-15],它通过词项贡献,挖掘语义上的关联性,能够将文档由词项特征空间变换到主题特征空间上,从而解决上述问题。因此,本文采用主题模型算法进行故障语义特征提取。
2.2.1 PLSA算法
PLSA的核心思想[14-15]是将词项之间复杂的关系(共现数据对——即文档d∈D={d1,d2,…,dN}中出现故障词项对wi,wj∈W={w1,w2,…,wM}的频率)用中间隐藏变量z∈Z={z1,z2,…,zK}的形式表达,也就是所谓的语义联系模型, 该模型可以表示为故障词项与故障文档的联合分布概率。
( 1 )
继而对PLSA模型进行参数估计,采用极大似然估计来求取
( 2 )
式中:f(di,wj)为故障词项wj在故障文档di中出现的次数。
对于模型的拟合,在含有隐藏变量的模型中,极大似然估计的标准过程是期望极大(EM)算法,EM算法可以描述为以下两个步骤的交替:
E-步, 利用当前所估计的参数值对隐藏变量的后验概率进行计算。
M-步, 基于上述后验概率, 对参数值进行更新。
对于PLSA模型, 通过贝叶斯公式可以得到隐藏变量的后验概率为
( 3 )
对式( 2 )进行极大化,对参数P(zk|di)及P(wj|zk)进行重新估计, 从而得到新的参数值为
( 4 )
通过对式( 3 )、式( 4 )的迭代,收敛后即可得到参数的估计值。
2.2.2 道岔设备故障主题特征提取
根据PLSA的原理和道岔相关故障的特点,对道岔故障文本数据进行特征提取的流程见图1。道岔故障文本特征提取流程为:
Step1故障追踪记录文档获取。
Step2词项空间向量模型建立。经过文本分词并进行去停用词之后,得到原始故障词项特征,在词项空间中表达故障文本。
Step3利用主题模型。选择合适的主题数量,建立主题模型,将故障文本通过主题模型空间表达。
在使用PLSA算法进行故障主题特征挖掘的过程中,首先要给定主题特征的数目k。采用拇指规则和打分算法来确定,即通过设定一定的步长改变k值进行测试,选取文档似然值达到最优的k值作为最终的主题数。一般来说,主题特征在一定程度上携带了原文档表达的语义。表4为广州局道岔的故障记录由主题模型特征提取后得到的结果。
表4 道岔系统故障记录表中故障主题特征的提取结果
表4表明,语义特征T1与“尖轨卡物”这一故障模式相关,特征T2代表“空转”的故障模式,特征T3与“接点接触不良”的故障模式相关等。文档在故障主题特征空间上的表达过程见图5。
3 基于支持向量机的道岔设备故障诊断
支持向量机已在很多领域有了广泛应用,取得了良好的效果。道岔转换系统的故障模式具有种类多,各模式分布不均衡,而且一些故障模式样本数量十分有限的特点。对于学习算法,支持向量机在小样本数据上具有较大优势,能够仅仅依赖少数的支持向量进行诊断决策。因此,本文采用支持向量机进行道岔设备故障诊断。
3.1 支持向量机
支持向量机[16-18]是在统计学习理论基础上发展起来的机器学习方法,是结构风险最小化原理的实现。
SVM本质上是一个分割超平面,是分类优化问题的一种解决方案。其算法如下:
假设数据集为(x1,y1),(x2,y2),…,(xp,yp),x∈Rp,y∈{1,-1}。
对于原始的优化问题,可表述为
s.t.yi(wTφ(xi)+b)≥1-ξiξi≥0
( 5 )
式中:C为惩罚因子,C≥0。
通过拉格朗日乘子法以及KKT (Karush-Kuhn-Tucker )条件,可以得到其对偶优化问题
minLd(α)=
( 6 )
式中:αi、βi为拉格朗日乘子;φ(xi)Tφ(xj)=K(xi,xj)为核函数。
进而,为求解拉格朗日乘子,转化为一个标准二次最优化问题
s.tyTα=0 0≤αi≤Ci=1,2,…,p
( 7 )
式中:α=[α1,α2,…,αp]T,y=[y1,y2,…,yp]T,e=[1,1,…,1]T,Qij=yiyjφ(xi)Tφ(xj)=yiyjK(xi,xj)。
可求得ω*和b*的最优解为
( 8 )
式中:Nsv为支持向量的个数(拉格朗日乘子不等于0)。
3.2 基于支持向量机的道岔转换系统故障诊断
在特征提取阶段,将故障文档表达在故障主题特征空间上,得到主题文档矩阵。SVMs诊断器的训练和诊断过程见图6。主题文档矩阵和故障文档对应的故障类别标签作为模型训练数据,输入一对一多分类策略下的(OVO SVMs)模型进行训练,得到最终的SVM诊断器模型。对于新故障的产生,首先将故障现象描述文档在主题特征空间下表示,进而输入到训练好的SVM诊断器模型进行故障诊断,即可得到所发生故障的模式,从而实现道岔转换系统的故障诊断。
4 实验结果
本文通过两个实验对所提出的道岔设备故障特征提取和故障诊断算法的有效性和准确性进行验证。主要包括故障主题特征提取算法的验证和故障诊断算法的验证。
4.1 实验数据
利用广州局现场故障追踪记录作为故障文档库。采用广州局对道岔维护过程中积累的道岔相关的1 500多条故障记录,其中,1 000条用于模型训练,剩余数据用于测试。数据的各类别故障样本情况,见表5。
表5 道岔故障类别及数据组成 %
4.2 评价指标
对于分类效果的评价,采用F1-score和准确率两种指标[19]。其中,F1-score中的1代表“精度”(precision)和“召回率”(recall)采用权重相同,也就是式( 9 )中的β=1。对于多类分类器的评估,F1-score算法如下:
算法1多类分类器的F1-score评估方法
Lineno=
(1) for每个故障模式Cido
(3) end for
(4)F-score←通过式( 9 )计算所有故障类别的F-score值。
( 9 )
式中:l是类别总数。令β=1,可得F1-score值。
4.3 特征提取的实验分析
为了验证特征提取的合理性,通过比较诊断器分别在两种特征空间上(故障主题特征空间和故障词项特征空间)的效果进行评估。实验结果见图7。
图7给出了各故障模式的F1-score值,表明故障主题特征相对于故障词项特征具有明显优势,诊断效果更为理想,主要表现为故障样本数量较少的故障模式效果更佳,验证了故障主题特征提升了小类样本的可分性,从而降低了误报率。另外,本文从整体准确率的角度验证了所提出的故障特征提取算法的效果。其中,SVM诊断器在故障词项特征空间以及故障主题特征空间上的诊断准确率分别为86.06%和90.11%,表明故障主题特征空间更有利于道岔设备故障诊断任务。
4.4 故障诊断算法的实验分析
为了验证所采用诊断算法的可行性,与其他两类故障诊断分类算法进行对比,即贝叶斯网络算法BN以及BP神经网络算法(选用故障主题特征空间)。图8给出了三种诊断器的效果,表明本文采用的算法较神经网络算法和贝叶斯网络算法,对于小样本故障模式的诊断效果误报率更低。然而,BP神经网络和BN算法在提高小类样本的诊断效果同时,在样本其他故障模式的诊断效果略低于SVM算法,例如故障模式C5和C9。其次,本文从整体诊断准确率的角度验证了SVM诊断器对于道岔设备故障诊断的效果。三种算法的诊断准确率分别为:BN算法为89.14%,BP神经网络算法为88.98%,SVM算法为90.11%。
5 结束语
通过分词算法对故障文档进行分词,自动提取道岔领域故障词库,即词项空间;通过向量空间模型将文档表达在词项空间中;在此基础上,通过主题模型PLSA方法进行故障主题特征提取,进而将故障文档表达在主题特征空间中,为诊断准备基础;通过构造SVM诊断器实现道岔设备故障诊断。通过现场的实际数据验证,说明提出算法对道岔故障诊断有良好的效果。