基于交互注意力机制网络模型的故障文本分类
2021-02-25刘鹏程孙林夫张常有
刘鹏程,孙林夫+,张常有,王 波
(1.西南交通大学 信息科学与技术学院,四川 成都 610031;2.西南交通大学 制造业产业链协同与信息化支撑技术四川省重点实验室,四川 成都 610031 3.中国科学院 软件研究所,北京 100190;4.成都国龙信息工程有限责任公司,四川 成都 610031)
0 引言
整车服务价值链中积累了大量故障文本数据,这些文本数据中包含了整车故障现象、故障原因及故障维修方法等非结构化的描述性数据,但这些数据的价值并未得到充分发掘。在当前数据驱动的机器学习研究背景下,如何从这些非结构化的故障文本数据中挖掘知识,对提升服务站的故障维修效率,降低维修成本具有重要意义。
由于基于故障文本数据构建文本分类模型可以为故障诊断[1-4]、案例检索、状态评价[5]等诸多应用提供基础支撑,本文以基于故障文本数据构建文本分类模型作为数据增值的一个重要切入点。基于故障文本的分类模型是以相关领域中设备的故障文本案例、缺陷文本记录、事故文本数据和维修日志等数据为基础,利用传统机器学习算法或深度学习算法构建故障文本分类模型任务[1-4,6-8]。
对故障文本分类模型而言,模型以传统机器学习模型和深度学习模型为主,由于深度学习模型具备端到端学习能力,可实现语义特征的自动抽取,深度学习模型较传统机器学习模型有着更广泛的应用。鉴于深度学习在分类性能中的良好表现[6],本文将以深度学习模型为基础开展故障文本分类的研究。卷积神经网络(Convolutional Neural Network,CNN)和循环神经网络(Recurrent Neural Network,RNN)两类深度学习模型是故障文本分类任务中广泛应用的模型[1-4,6,8-10]。CNN提取局部文本特征,但有时会存在与主题无关的冗余特征,RNN提取全局序列特征,但有些特征中缺少关键分类特征,而当前故障文本分类的多数文献中并未对这两类模型所提取的全局和局部特征中的关键特征进行合理的筛选和融合。
对于故障文本而言,文本中的不同内容对分类结果具有不同程度的影响,如在“客户反映车辆拉手刹时右后轮制动电机吱吱异响”这段文本中,“后轮制动电机”为故障件,“异响”为故障现象,这两项内容对文本的分类结果较其他内容有着更大的影响,而当前多数研究在构建模型时并未考虑文本的关键内容项对模型性能的影响。
鉴于上述原因,为提升故障文本分类模型的性能,本文提出一种基于交互注意力机制的文本分类模型,利用交互注意力机制实现对全局序列特征与局部文本特征中的关键特征的捕获和融合,同时结合注意力机制实现对文本中故障件和故障现象两项关键内容的关注,本文主要贡献包括以下4方面:
(1)提出一种组合卷积神经网络与双向长短期记忆神经网络(Bidirectional Long Short Term Memory, BiLSTM)的交互注意力机制网络模型用于故障文本分类。
(2)基于交互注意力机制关注局部文本特征和全局序列特征中的关键特征提升分类性能,基于全局特征和局部特征进行交互注意力计算,通过交互注意力机制实现对全局和局部关键特征的提取和融合。
(3)考虑文本中关键内容对分类性能的影响,利用故障件注意力机制和故障模式注意力机制关注文本中的关键分类特征。
(4)为评估本文所提出的故障分类模型的有效性,利用真实数据集进行实验分析和验证,结果展示所提模型具有较好的分类性能。
1 相关工作
文本分类作为一种信息组织和管理的有效方法[11],在诸多方面有着重要的应用,如情感分析、垃圾邮件识别[12]、推荐系统[13]、专利文档分类[14-16]等。故障文本分类是一类文本分类问题,基于文本分类的基本框架,本文将故障文本分类框架简要归纳为文本向量化表示和文本分类器两个模块。
(1)文本向量化模块 实现对文本集合的数值向量化表示,向量化后的文本集合才能被分类模型识别和计算。文本向量化的优劣会对分类器的性能产生较大影响。早期文本向量化表示的方法主要有独热编码、词频—逆文档频率(Term Frequency-Inverse Document Frequency, TF-IDF)等,文献[5]利用独热编码和分类器进行电力设备故障文本的分类;文献[6]利用TF-IDF向量化电力设备缺陷开展文本分类;文献[4]利用TF-IDF向量化高速铁路道岔的故障文本。但是独热编码、TF-IDF等方法未考虑字/词间顺序和相关性,且形成后的词向量维度过大。而词嵌入模型避免了这些问题,词嵌入模型可以将字/词表示到更低维度的向量,其维度远小于词典中词的数量,同时将上下文特征融入到字/词向量中,因此基于词嵌入模型的向量化表示有着广泛的应用,当前有诸多故障文本分类研究[3,8-9]利用该类模型进行文本向量化表示。
(2)文本分类器模块 以监督学习算法为主,其中传统的机器学习分类算法如k近邻(K-Nearest Neighbor,KNN)模型、支持向量机模型(Support Vector Machine, SVM)等均在该任务中得到了应用。文献[5]利用隐马尔可夫模型(Hidden Markov Model, HMM)对文本进行预处理,基于词频排序构建文本向量,提出基于自主区间搜索的KNN断路器缺陷文本分类算法,基于分类结果实现对断路器设备的状态评价;文献[4]基于高速铁路道岔的故障文本,利用SVM模型对故障文本进行分类;文献[17]基于故障文本信息对高铁车载设备进行故障分类,采用主题模型进行特征提取,将贝叶斯结构学习算法应用于故障分类。
传统的机器学习算法为浅层学习算法,直接利用向量化的文本进行分类,所用向量不能表达语义的深层含义[15],分类能力有限[10]。较传统机器学习算法,深度学习模型依赖于自身的深层模型结构关注对隐藏特征和高维度特征的抽取[18],即深度学习模型伴随分类任务可以在文本向量的基础上进一步自动抽取语义特征,实现端到端的学习,降低特征构建的难度,因此基于深度学习的故障文本分类模型逐渐成为研究热点。
当前卷积神经网络(CNN)和循环神经网络(RNN)是两类主流的深度学习文本分类模型,文献[19]首次将CNN应用于文本分类,通过在卷积层设计不同尺寸的卷积核提取句中不同位置的n-gram语言特征,实现对局部文本特征的抽取,CNN中的池化层将抽取卷积层中各个通道特征值,通过合并各池化层中的输出特征值作为全连接层的输入实现分类;文献[3]基于CNN,利用max和avg两种并行池化方式对卷积层的特征进行抽取操作以获取全面的特征信息,实验结果显示该CNN模型较KNN和SVM在铁路信号设备故障短文本分类任务中有着更优的分类效果;文献[8]针对飞机设备维修文本数据,提出了基于卷积神经网络和随机森林构建故障文本分类模型,运用卷积神经网络提取出的文本向量作为训练数据,并基于该文本向量及其他维修特征训练随机森林模型,形成最后的故障文本分类模型,实验验证该模型较其他传统机器学习分类器有着更优的分类性能,该文献同时展示了卷积神经网络提取的文本特征较其他模型有着更优的表现;文献[6]利用多组不同尺寸的卷积核构建卷积神经网络,针对电力设备缺陷文本进行文本分类,与多种传统机器学习分类模型的对比结果表明该卷积神经网络模型有着更为显著的分类性能。
文本具有上下文相关序列的依赖关系,CNN对句子整体结构和序列信息的特征抽取能力不足,不能形成全面的语义表达[20],而RNN善于提取序列信息,因此被大量应用于文本分类任务。由于简单RNN模型在学习长序列数据时存在梯度消失或梯度爆炸等问题,在实际研究中,长短期记忆神经网络(Long Short Term Memory,LSTM)和门控循环神经网络(Gated Recurrent Unit,GRU)算法等RNN变体算法的应用更为普遍。LSTM和GRU通过设计相应的门控运算,可以在处理更长序列数据的过程中取得较好的效果。文献[21]利用优化后的输入特征向量训练LSTM模型用于文本数据分类。LSTM和GRU仅能捕获与当前输入词相关的前序信息,而双向长短期记忆神经网络(BiLSTM)和双向门控循环神经网络(Bidirectional GRU,BiGRU)模型的出现进一步完善了循环神经网络的模型结构。双向结构模型可以同时捕获句子中正向序列和反向序列的依赖关系,实现模型在各时刻均能输出对前后序列的理解。文献[1]基于电力设备典型故障案例,利用BiLSTM模型抽取事件文本中的深层语义实现对故障案例的分类,实验结果表明BiLSTM较CNN和LSTM有着更高的分类性能。在故障文本分类应用方面,文献[2]以电网故障巡检报告文本为数据源,利用向量化文本和LSTM实现对输入文本的故障识别,并通过实验分析了LSTM的结构对分类性能的影响;文献[9]利用基于Transformer的双向编码表示(Bidirectional Encoder Representation from Transformers, BERT)完成词向量的分布式表示,采用BiLSTM捕获文本的语义特征实现对电网设备缺陷的分类,实验结果显示BiLSTM较传统SVM模型有着更高的分类性能。
2 基于CNN与RNN的组合模型
RNN模型能捕获文本长序列中全局语义特征,提取文本主题信息,却不能识别重要局部语义特征;CNN模型能捕获文本关键局部语义特征,有助于提升分类性能,却不能获取文本长序列的全局主题特征。鉴于CNN与RNN各自存在的局限性,如何充分结合RNN与CNN模型各自优点实现全局特征与局部特征的融合已成为文本分类的一个研究热点。同时,由于本文模型基于CNN与RNN的特征提取和组合,本章将对CNN与RNN的文本特征抽取特点和CNN与RNN的模型组合进行分析。
2.1 基于CNN模型的文本分类
基于上述分析可以发现,卷积操作和池化操作提取了原始数据中某一显著局部特征,不同卷积核侧重于提取不同的局部特征(本文将CNN提取所得的特征称为显著局部特征),利用池化操作实现对原始数据中显著局部特征的提取,由于池化组合后的特征并不包含长序信息,CNN不能抽取长序信息[10]。
2.2 基于RNN模型的文本分类
RNN利用一组特征变换矩阵实现对全局数据序列特征的抽取,对于数据x=[x1,x2,…,xn],利用ht=φ(wxhxt+whhht-1+bh)取得隐藏层输出,yt=whyht+by取得当前输入项的输出,其中:wxh为输入到隐藏层的特征转换,whh为上个时刻的隐藏层输出的转换,why为当前隐藏层到输出的转换,bh为偏置项,φ为非线性激活函数。可以发现,t时刻的输出yt融合了当前的输入xt与前t-1时刻的输入内容ht-1(本文将RNN最后时刻提取的特征称为全局序列特征),因此最后时刻n的输出yn融合了整个序列的信息。由于文本序列间具有前后依赖性,利用双向RNN可以取得当前任意时刻的正向前序和反向后序信息,实现对上下文信息的捕获,但此时部分时刻的全局序列特征中会缺少显著的分类特征。
2.3 基于CNN与RNN组合模型的文本分类
通过对文献的研究,将CNN与RNN的组合方式归纳为串联和并联两种组合模式。
2.3.1 串联组合模式
该模式通过将CNN与RNN进行串行级联形成串联组合模型,实现文本特征的提取。该组合模式分为CNN-RNN和RNN-CNN两种,串联组合模型通过CNN与RNN双层结构进行特征抽取。
(1)CNN-RNN串联组合模式 该模式的第一层利用CNN的卷积操作对原始数据集进行局部特征的提取,生成一组差异的显著局部特征,而后利用RNN捕获局部特征间的序列信息生成全局特征,以该全局特征作为全连接层的分类输入特征,该模式的结构如图1所示。CNN-RNN组合模式利用RNN对CNN提取的差异化显著局部特征进行有序组合,提取显著局部特征中的序列特征。
在基于CNN-RNN模式的串联组合模型中,第一层利用CNN的不同卷积核提取差异化的局部显著特征,经过CNN后的特征较原始输入向量有着更为丰富的特征表示,将第一层中差异化的局部显著特征输入第二层RNN以抽取文本的序列特征,进而提升RNN分类正确率。但是,CNN抽取的显著局部特征并不是均有助于分类,RNN会将输入到模型中的显著局部特征均融入到全局特征中,导致对全局序列特征的抽取依然建立在部分与主题不相关的特征基础上。文献[18]提出基于CNN和BiLSTM并结合注意力机制的文本分类模型,以捕获句中关键特征进而提升分类的性能,利用CNN模型不同尺寸的多通道卷积核捕获不同长度的语义信息,同时利用BiLSTM捕获正向和反向句子序列依赖关系抽取特征实现分类。
(2)RNN-CNN串联组合模式 该模式的第一层利用RNN从原始文本向量中抽取各个时刻的序列特征(该特征可以是单向的前向序列特征,也可为前后双向序列特征)作为第二层CNN的输入特征,以CNN抽取的显著局部特征作为全连接层的分类输入特征进行分类。该模式结构如图2所示。
RNN-CNN组合模式中第二层CNN抽取的特征内包含长序列特征,形成包含序列特征的显著分类特征,从而提升分类正确率。对于RNN每个时刻的输出可以视为不同尺寸的局部特征(最后一个时刻除外),如在t时刻的输出是由前序[1:t]的时序特征构成,代表了整个t时刻前的序列内容;但相对于整个序列而言,[1:t]特征属于局部特征,仅最后时刻n的[1:n]特征代表了全局特征,由RNN作为第一层所抽取的时段特征输入到第二层CNN模型,此时CNN卷积操作于包含不同的时段[1:t]特征之上,而非直接从文本输入向量中抽取的短时段[t-(i-1):t]特征(其中i为卷积核尺寸),因此RNN-CNN抽取的显著时段特征[1:t]较原始CNN而言包含时段整体特征及序列信息。但是分析整个全序列角度可以发现,CNN抽取的所有时刻的输出特征均由不同尺寸的时段[1:t]特征构成,所以RNN-CNN模式下CNN卷积主要抽取不同粒度的显著时段局部特征,虽然双向RNN的各个时刻的输出包含了上下文的特征,但这种特征是以某个时间点为分段的两段序列特征各自的表示,较以最后时刻形成的全局序列特征存在区别,因此这种抽取可能会导致全局序列特征的弱化。文献[22]提出基于BiGRU与CNN的串联组合模型进行文本分类,首先利用BiGRU提取输入文本各个时刻的全局序列特征,并利用CNN提取序列文本中的局部语义特征,实现时间序列特征与局部上下文内容的结合,实验结果表明该组合方式有着较好的性能;文献[10]通过组合RNN和CNN构建RCNN文本分类模型,以RNN层的输出作为CNN的输入,达到捕获上下文与精确表达文本语义的目的,实验结果表明该组合模型RCNN较CNN和RNN有着更优的分类性能。
除了上述两种基本串联组合方式,还存在其他串联组合方式,这些方式多以CNN与RNN多次交替串联进行组合,如文献[11]利用BiLSTM和CNN的各自优势设计了BLSMT-C文本分类模型,实验表明该组合模型较对比模型具有更优性能;文献[23]提出一种基于CNN与LSTM的串联组合模型,该模型基于LSTM,CNN和LSTM顺序构建三层串联组合模型。
2.3.2 并联组合模式
该模式通过将CNN与RNN进行并联组合实现文本特征的提取,利用CNN提取显著局部特征,利用RNN提取全局序列特征,而后形成由全局和局部特征组合构成的分类特征,该模式的结构如图3所示。
CNN与RNN并联组合模式运用CNN与RNN进行并联组合,可以同时利用CNN抽取的局部显著特征和RNN抽取的全局序列特征进行分类,但CNN与RNN的并联组合直接运用CNN和RNN所抽取的特征进行分类,这种方法依然存在着与主题不相关的冗余特征等问题。文献[24]提出基于CNN与BiLSTM进行并行组合构建分类模型,通过设置3种不同尺寸的多通道卷积核抽取原始数据集的局部特征形成新特征,同时利用BiLSTM抽取原始数据集的全局序列特征,通过拼接组合CNN与BiLSTM所抽取的特征作为全连接神经网络的输入特征形成分类结果。
针对上述对串联和并联两种组合方式的分析可以发现,两种组合方式的共性在于将全局序列特征与局部显著分类特征相结合构建新的语义特征,以避免单一模型对语义特征提取的局限性,但在具体特性方面又存在差异性,串联组合模型的输出特征依赖于第二层的级联模型,若以CNN为第二层模型则抽取特征以显著分类特征为主,若以RNN为第二层模型则以主题特征为主,而并联组合模式以两种特征并重。串联组合模式相较于并联模式存在更深的网络结构,这将导致时间复杂度的上升,出现梯度消失和特征冗余等问题[25],同时基于对故障文本分类实验结果的分析发现,并联组合模式较串联组合模式有着更优的分类性能,因此本文将选择并联组合模式作为模型的基本结构。
3 交互注意力机制网络分类模型
在自然语言处理领域,注意力机制最早被应用于机器翻译任务[26],用于实现基于RNN模型的机器翻译任务中模型decoder部分的翻译输出序列与encoder部分的输入序列的有效对齐,以提升机器翻译的性能。随后注意力机制开始在文本分类、文本摘要、问答系统等自然语言处理领域广泛应用[27]。在文本分类应用中,注意力机制通过选择关键特征实现对特征的权重组合,达到提升分类性能的目的,目前对如何将注意力机制与CNN或RNN进行结合提升模型性能的研究已成为文本分类的研究热点。文献[28]基于注意力机制融合BiLSTM特征形成分类输入特征;文献[29]利用注意力机制克服BiLSTM不能正确捕获长序列数据中关键特征的缺点;文献[30]通过注意力机制提升对特定方面词的关注以抽取出相关的感情语义信息提升了分类性能。
通过第2章中对CNN和RNN模型的分析可以发现,有效捕获关键特征对提升分类性能有着积极的作用,由于注意力机制具有对关键特征的捕获能力,本文将注意力机制与全局序列特征和局部显著特征中关键特征的筛选相结合,实现对全局和局部语义特征的合理筛选和融合。同时,考虑文本中关键内容对分类性能的影响,利用故障件注意力机制和故障模式注意力机制提升分类任务对故障文本中故障内容项的关注程度。基于此,本文提出面向故障文本分类的交互注意力机制网络模型,结合注意力机制最终实现“全局—局部分类特征”+“故障件—故障模式关键特征”的特征组合,以达到更优的分类性能,如图4所示为交互注意力机制网络模型的总体结构。
交互注意力机制网络模型由输入模块、交互注意力机制模块、故障件注意力机制模块、故障模式注意力机制模块和分类模块构成。输入模块用于对输入文本进行向量化表示;交互注意力机制模块实现对文本的全局和局部语义特征的提取,形成全局—局部特征;故障件注意力机制模块关注文本中故障件特征,故障模式注意力机制模块关注文本中故障模式特征,基于这两个模块的输出形成故障件—故障模式特征。
3.1 输入模块
输入模块Player由一系列操作构成,实现原始文本集合D到向量序列I的特征转换,即Player:DI,利用该模块生成的字向量作为模型的输入。选用字向量的原因在于故障现象描述以短文本居多,短文本会给分类性能带来挑战[31]。首先,短文本存在语义不足的问题;其次,短文描述内容多存在不规范用语,这将导致较差的分词效果。因为字向量同样包含丰富语义,与词向量相较而言,以字向量作为模型输入不仅扩充了语义特征量,还避免了分词带来的问题[31],所以本文利用字向量作为模型的输入。Player模块对文本的处理过程如图5所示,主要包括文本编码、字嵌入向量的训练和文本向量化表示3个主要步骤,具体如下:
步骤2训练字嵌入向量。该步骤以字典中的字为基本单元,设置字向量长度,基于文本利用Word2Vec模型训练字典中各字的语义向量。
3.2 交互注意力机制模块
交互注意力机制模块是整个模型的核心模块,该模块的目的在于结合CNN与RNN特征提取的优点,实现对文本中局部特征和序列特征的关键内容提取,该模块由全局与局部特征提取子模块Elayer和交互注意力子模块Alayer组成。
3.2.1 全局与局部特征提取子模块
(1)全局序列特征提取
遗忘门负责控制对长期状态的保存,其计算公式为:
ft=σ(Wf·[ht-1,wt]+bf)。
(1)
输入门控制当前时序点的输入特征中哪些信息保存到长期状态中。首先,确定输入字向量特征中的更新值,其公式为:
it=σ(Wi·[ht-1,xt]+bi)。
(2)
其次,利用tanh生成新的候选向量,其计算公式为:
(3)
最后利用式(3)与式(4)确定各个基本单元需要添加的新信息,其计算公式为:
(4)
输出门确定当前时序点的输出状态值,其计算公式为:
ht=σ(Wo·[ht-1,xt]+bo)⊙tanh(Ct)。
(5)
(2)局部文本特征提取
1)卷积操作 设该子模块获得输入层Player:DkIk生成的第k个文本记录Dk的向量序列本文将采用c种不同尺寸的卷积核对Ik进行卷积操作,以提取不同尺寸的局部序列特征,其中:为第j个尺寸为si×n的卷积核,Ik,[t,si]中[t,si]表示提取第t个字向量的局部特征范围为si,bsi,j为偏置项,f为激活函数。设为第si种卷积尺寸下第j个卷积的操作结果,其中q为第si种尺寸下第j个卷积操作后的向量维度,其中l为第i种尺寸的卷积总数目,将不同尺寸的卷积核所得特征输入到池化层中进一步提取特征。
3.2.2 交互注意力子模块
交互注意力机制是实现全局与局部关键特征提取的重要内容,为避免单独使用CNN或BiLSTM模型对分类性能产生的影响,通过处理全局序列特征与局部显著文本特征的关系,实现对CNN与BiLSTM模型所提取特征的结合,文献[32]以全局序列特征为主要分类特征,基于注意力机制利用局部文本特征关注全局序列特征中的关键特征,但并没有完全融合局部文本特征;文献[33]基于局部特征和全局特征构建了多个子局部特征空间和全局特征空间实现全局—局部特征的交互注意力机制,由于模型复杂度高影响了模型的泛化性,在部分数据集上分类性能受到了影响。本文将基于文献[32-33]的研究,利用交互注意力机制捕获全局序列特征中的关键分类特征和局部文本特征中与主题相关的特征,弱化相关性较低的特征,实现对全局序列特征和局部文本特征中关键分类信息的关注。
(1)注意力机制模型
注意力机制通过筛选语义特征中的重要信息,捕获关键语义特征,其计算过程包括两个步骤:①计算各个神经元输入特征的注意力权重,确定当前输入对输出的影响权重;②基于注意力分配权重,计算加权输出值,实现对特定输入特征的关注。本文将利用特定任务向量q∈Rn(所关注的特征)筛选语义特征[v1,v2,…,vn],注意力机制的基本计算函数如下:
scorei=γ(q,vi),
(6)
(7)
(8)
式(6)为对齐函数,计算出特定任务向量和待筛选语义特征向量间的匹配程度,通过式(7)计算出待筛选语义特征对特定任务向量的相对匹配权重,利用式(8)计算出待筛选语义特征相对于特定任务向量的注意力值。在注意力机制的基本计算框架中最关键的是对齐函数,常见的基本对齐函数主要有以下3种:
1)加性对齐函数[26,34]。γ(q,vi)=wTtanh(Wq+Uvi),其中w∈Rn,W∈Rn×n,U∈Rn×n为权重矩阵。
2)乘法对齐函数[35]。γ(q,vi)=qTWvi,其中W∈Rn×n为权重矩阵。
3)多层感知机对齐函数[27]。γ(q,vi)=σ(wTtanh(Wq+Uvi+b1)+b2),其中w∈Rn,W∈Rn×n,U∈Rn×n为权重矩阵,b1∈Rn为偏置向量,b2∈R为偏置标量。
(2)交互注意力机制子模块
基于注意力机制定义全局—局部交互注意力机制,利用交互注意力机制子模块实现对全局和局部关键语义特征的提取和融合。
Ag和Al函数提取全局和局部语义关键特征,各自产生的注意力向量中融合了彼此的语义特征,基于定义2,下文将展示交互注意力机制子模块的具体结构(如图9)及子模块对全局和局部关键语义特征的提取和融合,具体步骤如下:
步骤1模块输入特征。以BiLSTM所提取的文本特征作为全局输入特征Hg,以CNN所提取的局部文本特征作为局部输入特征Cl。
基于上述操作,提取全局序列特征Hg中关键分类特征,提取局部文本特征Cl中主题相关的特征,实现全局和局部语义特征的融合。
3.3 故障件与故障模式注意力机制模块
故障文本分类语料内容以短文本表述为主,其描述方式主要为某个部件出现某种故障模式,如“右后轮制动电机吱吱异响”,制动电机为部件,异响为故障模式,对于该故障文本,并不是所有内容对于故障分类均有同等重要的作用,针对分类问题需求,通过故障件定位故障类型,基于故障模式确定故障解决方法,如在“右后轮制动电机吱吱异响”故障现象文本中,最重要的分类内容是“制动电机”故障部位和“异响”故障模式。
考虑到故障部位和故障模式在分类中的作用,本文利用故障件与故障模式注意力机制分别关注文本中故障件与故障模式内容,构建故障件词典、故障模式词典和字嵌入向量来初始化注意力特定任务向量,故障件词典中主要存储故障现象中常见的故障零部件,故障件词典中主要存储故障现象中常见的故障模式,如图10所示。
故障件与故障模式注意力机制子模块从输入模块中捕获故障件和故障模式的关键特征,各个模块间的关系如图11所示,故障件与故障模式注意力机制子模块利用输入模块实现词典的向量化表示,采用乘法对齐函数计算实现注意力数值的计算,具体步骤如下:
步骤1计算注意力特定任务向量。设故障件词典为Pd和故障模式词典为Gd,设面向词典的注意力特定任务向量函数为avg,对于故障件词典Pd,利用Player:Pd计算各字对应向量,计算故障件注意力特定任务向量为同理计算故障模式注意力特定任务向量
3.4 分类模块
输入模块实现原始文本的向量化表示,利用交互注意力机制模块、故障件与故障模式注意力机制模块自动对原始文本向量进行特征提取,以所提取特征作为分类模块的输入特征,实现故障文本的分类。
Ok=softmax(σ(AfVa,k+bf))。
(9)
3.5 模型训练
(10)
4 实验分析
4.1 实验数据
为探究交互注意力机制网络模型对故障文本分类问题的效果,面向故障现象文本分类的需求,从汽车产业链云服务平台[36]的业务系统中抽取某汽车制造厂与服务商间的服务业务协同过程中所产生的部分售后维修数据作为本次实验数据,实验选取底盘部件中制动系统、传动系统、转向系统、悬架系统和轮胎共计5个系统14类故障现象分类数据开展故障分类实验及分析,该数据集的具体分类情况如图12所示。
从平台数据库中抽取6 159条底盘部件故障现象文本数据,依据8∶1∶1比例将该数据集分为训练数据集、验证数据集和测试数据集,数据集中的14类故障类型数目分布如表1所示
表1 故障现象分类数据
续表1
4.2 模型分类性能分析
4.2.1 模型参数分析
(1)模型卷积核尺寸分析
卷积尺寸影响交互注意力机制网络模型中局部特征的提取。在交互注意力机制网络模型中,运用基于全局序列特征的注意力机制关注与主题相关的卷积核,为与主题相关的卷积核赋予较高权重。如
图13所示为针对10组不同的数据集训练模型,注意力机制对不同卷积尺寸的赋权结果,每组数据的卷积核尺寸如表2所示。
表2 各组数据的卷积核尺寸
在图13中,与主题相关的卷积核被赋予了较高的权重,这些卷积核尺寸在图中的颜色较深,与主题不相关的卷积核赋予较低权重,该类卷积核尺寸在图中的颜色较浅。对图13中各数据集在表2参数下的实验结果进行统计可以发现,尺寸为2的卷积核提取的特征与主题的相关性较高,其次是尺寸为3、4和7的卷积核,而在多数实验数据上尺寸为5、6的卷积核相关性较弱,同时实验结果表明尺寸为8和9的卷积核所提取的局部特征与全局序列的主题特征几乎无相关性。
(2)模型BiLSTM隐藏层神经元数目分析
交互注意力机制网络模型利用BiLSTM抽取故障文本的全局序列特征,本节对影响BiLSTM性能的隐藏层神经元个数进行分析,较少的隐藏层节点数目将导致BiLSTM模型不能形成较好的学习能力,但较多的神经元数目将导致模型的复杂度上升,这不仅会影响模型的运算速度,还将导致最终结果陷入局部最优,因此本节分析BiLSTM隐藏层神经元数目对整个模型分类性能的影响效果。
设BiLSTM模型隐藏层神经元数目num={50k|1≤k≤6,k∈N*},设置正确率和F1值为评价指标,如图14所示,随着模型隐藏层神经元数目的逐渐增大,交互注意力机制网络模型的性能整体表现出先提升后下降的趋势,当神经元个数为150时取得实验参数设置区间中的最大值。
4.2.2 故障件和故障模式注意力机制分析
故障文本分类中并不是所有文本内容项对故障分类性能的影响均有着同等作用,针对分类问题的需求,基于对故障文本的分析和研究可以发现故障件和故障模式两类信息是影响多数故障文本分类问题的关键特征,如“客户反映手刹有异响”中,对于该故障现象分类中最重要的是“手刹”故障件和“异响”故障模式,因此本文在全局和局部特征提取和融合的基础上,引入故障件和故障模式注意力机制,以进一步提升分类任务对故障信息的关注程度。
如图15所示为基于故障件和故障模式注意力机制对故障文本中故障件和故障模式内容的关注效果。图15中包括了“客户反映拉手刹有异响”和“客户进站反映,车辆行驶中踩踏制动踏板时,车辆刹车抖动”两条故障现象文本记录。
通过分析注意力权重可以发现,较大的故障件注意力权重主要集中于故障件位置,如第一条记录中的手刹,第二条记录中的制动踏板、刹车。较大的故障件模式注意力权重主要集中于故障模式位置,如第一条记录中的异响,第二条记录中的抖动。通过分析故障件和故障模式对故障文本内容项的注意力权重分布,可以发现该注意力机制可以在一定程度上捕获故障件和故障模式关键特征。
4.2.3 基于交互注意力机制网络模型的故障文本分类结果分析
本节将对制动系统、传动系统、转向系统、悬架系统和轮胎5类系统的14类子故障现象分类数据开展实验和分析。将数据集以8∶1∶1的比例划分为训练数据集、验证数据集和测试数据集,分类结果的混淆矩阵如图16所示。以分类正确率为评价依据,分析图16中的分类混淆矩阵可以发现,S14的准确率达到了100%,S4和S7达到了95%及以上,S2、S5、S8、S10、S11达到80%以上,S1、S3、S12略低于60%,但S6、S9、S13均低于50%。下面将对影响该分类结果的因素进行分析。
首先,分析类样本数据量对分类性能的影响。表3罗列了各种故障类型的类样本数据量与分类正确率的对应关系,通过分析可以发现S4拥有最高的数据量,其分类正确率也为最高,同样S2、S5、S8、S10、S11也有着较高的数据量,也拥有较好的分类正确率,而其余故障类型的数据量相对较少,其分类正确率也相对较低,因此类样本数据量对分类性能具有一定程度的影响。
表3 各系统样本数与分类正确率的对应关系
其次,分析样本数据内容对分类性能的影响。通过分析图16可以发现,S9中有65%的数据被分配到S10中,这是由于S9与S10均为悬架系统的故障类型,两者在故障描述内容数据方面具有较大的相似度,如同样对于“用户反映车辆打方向时异响”的记录,会基于具体维修情况归于S9或S10类。
最后,分析系统复杂性对分类性能的影响。在制动系统数据集中分为5类系统,由于故障均在同一系统中会造成文本描述模糊性和相似性,这将对多分类的性能产生影响,导致制动系统中部分类的正确率较低。对于轮胎系统,由于子类别单一,针对部件和故障的描述均指向该类型,从而S14类在数据集较少的情况下依然保持较高的正确率。
4.3 不同模型分类性能对比分析
生成10组故障现象文本数据作为实验数据,每组数据按照8∶1∶1的比例划分为训练数据集、验证数据集和测试数据集,以正确率(Acc)和F1值作为分类性能评价指标进行对比分析。与本文所提交互注意力机制网络模型(Mutual Attention Mechanism Network, MAMN)进行实验对比的模型包括两类:第一类是传统机器学习模型,包括k近邻(KNN)、朴素贝叶斯(Naive Bayesian, NB)、支持向量机(SVM)和逻辑斯蒂回归(Logistic)4种模型;第二类是深度学习模型,包括基本深度学习模型TextCNN[19]、LSTM和BiLSTM、串联组合模型CNN-LSTM[37]、BiLSTM-CNN、并联组合模型Oslcfit[24]、基于局部注意力机制的模型CRAN[20]。
第一类模型以输入模块Player生成的输出向量的均值作为分类模型的输入向量直接进行分类,因此第一类模型较第二类深度学习模型缺少对输入特征的进一步抽取。
在第二类模型中,TextCNN[12]为基本的CNN分类模型,抽取故障文本的局部特征;LSTM和BiLSTM为基本的RNN分类模型,抽取故障文本的全局序列特征。
第二类模型中的组合模型包括串联组合模型CNN-LSTM和BiLSTM-CNN,并联组合模型Oslcfit。由于CNN-LSTM和BiLSTM-CNN以逐层特征叠加的方式对全局和局部特征进行抽取,第二层模型的特征抽取效果将受第一层的影响;并联组合模型的特征抽取采用对全局与局部特征并行抽取的方式,拼接融合全局与局部特征进行分类。
第二类模型中的CRAN模型利用局部注意力机制捕获BiLSTM中的关键分类序列信息,从提升BiLSTM分类性能的视角进行模型优化。
本文提出的交互注意力机制网络模型(MAMN)为第二类分类模型。与第一类模型相比,MAMN作为深度学习模型可以抽取更深层的语义特征,实现端到端的特征自动提取;与第二类模型中的串联组合模型相比,MAMN采用并联结构作为模型的基础结构,避免逐层特征叠加对分类性能的影响;与第二类模型中的基本模型和并联组合模型相比,MAMN利用交互注意力机制实现对全局和局部关键特征的提取和融合,分别利用基于全局注意力机制的局部特征提取实现对与主题不相关的局部特征的筛选,基于局部注意力机制的全局特征提取实现对全局序列特征中的关键分类特征的筛选;与第二类模型中的注意力机制模型相比,MAMN不仅运用交互注意力机制捕获关键特征,还运用基于故障件和故障模式的注意力机制捕获文本中故障件和故障模式相关的关键分类信息,具有更为丰富的分类特征信息。
如表4和表5所示为第一类—传统机器学习模型(KNN、NB、Logstic、SVM)、第二类—深度学习模型(TextCNN、LSTM、BiLSTM、CNN-LSTM、BiLSTM-CNN、Oslcfit、CRAN)与本文所提MAMN模型在10组故障现象文本数据集上的分类性能对比,性能对比指标包括正确率(Acc)和F1值。对表4和表5的数据集测试结果进行分析,第一类模型的整体分类性能低于第二类模型,在分类结果中朴素贝叶斯正确率和F1值最低,这是由于模型的输入向量为连续型数据,对该数据的离散化表示将导致信息的丢失,进而影响到分类性能;其次是k近邻模型,这是由于该模型的欧氏距离在该向量空间中不能达到较好的度量效果;逻辑斯蒂回归和支持向量机的效果较好,表明该模型在此数据集上有着良好的泛化性。
表4 数据集1~5的测试结果
表5 数据集6~10的测试结果
在第二类分类模型中,基于CNN类的模型分类性能普遍高于基于RNN类的模型,这是由于所用故障文本数据集以短文数据居多的原因,导致RNN类模型的序列特征抽取能力不能得以凸显。在组合模型类的对比中,CNN-LSTM和BiLSTM-CNN这两类串联组合模型的分类性能低于并联组合模型Oslcfit,同时,串联组合模型与并联组合模型的对比实验表明,基于串联组合的特征叠加抽取模型的分类性能低于基于并联特征拼接的模型,这是由于无论CNN-LSTM还是BiLSTM-CNN均以两层结构进行特征抽取,以第一层作为数据特征的预抽取,第二层在第一层的基础上对特征进行再次抽取,则第二层模型的特征抽取效果将受第一层的影响,但并联组合模型的特征抽取采用并行处理的方式,全局或局部特征的抽取并不基于其他模型,所以并联组合的分类方式有着更优的分类结果。对于基于注意力机制的CRAN模型,通过运用局部注意力机制对全局序列特征中的关键特征进行筛选,对提升BiLSTM分类性能有着较好的效果。最后,本文提出的交互注意力机制网络模型(MAMN)以并联模型结构为基础,结合交互注意力机制实现对故障文本的全局特征和局部特征中关键特征的捕获和融合,并引入故障件和故障模式注意力机制以提升分类任务对故障信息的关注,产生更为丰富的分类特征信息,达到了较优的分类效果。
5 结束语
本文面向整车故障现象文本分类任务,研究了基于深度学习的故障文本分类模型。针对CNN、RNN模型对特征提取存在的不足,提出了基于交互注意力机制的网络模型,该模型利用交互注意力机制构建全局—局部分类语义特征,实现了对故障文本的全局特征和局部特征的融合。同时,针对故障现象文本中故障件和故障模式两类关键分类信息,引入了故障件和故障模式注意力机制,提升了分类任务对故障信息的关注程度。模型最终实现“全局—局部分类特征”+“故障件—故障模式关键特征”的组合特征,达到更优的分类性能。
MANM作为深度学习模型,较传统机器学习模型可以提取更深的语义特征,由于MANM采用并联组合模式,较串联组合模式有着更优的性能,交互注意力机制的运用使得MANM较并联组合模型拥有更利于分类的特征提取能力。同时,故障件和故障模式注意力机制的引入使得MANM拥有更为丰富的分类特征信息。
实验部分展示了本文模型对CNN局部分类特征的筛选能力,以及故障件和故障模式注意力机制对故障文本中关键信息的捕获。以正确率和F1值为性能指标,在10组整车故障现象文本数据集上的实验结果表明交互注意力机制网络模型相比传统机器学习算法、基本深度学习模型和组合深度学习模型具有更优的分类性能。
下一阶段将针对全局序列特征对模型分类性能的影响进行深入的研究,进一步改善模型对全局序列特征的提取能力,进而提升交互注意力机制网络模型的整体性能。