舰船科学技术  2024, Vol. 46 Issue (16): 153-157    DOI: 10.3404/j.issn.1672-7649.2024.16.025   PDF    
基于电子知识库的船舶故障诊断技术及应用
司聿宣     
烟台职业学院,山东 烟台 264000
摘要: 针对船舶电子设备故障的诊断问题,提出一种基于知识图谱的故障诊断系统。该系统不仅利用传统的故障维修日志库,还利用图书馆电子数据源提取和整合广泛的知识,建立起一个详尽的船舶设备故障知识图谱,为运维人员提供了一个全面的参考框架,并使用机器学习方法实现对电子设备故障的快速和准确诊断,显著提高了船舶故障处理的效率。
关键词: 知识图谱     船舶故障诊断     机器学习    
Maritime fault diagnosis technology and application based on electronic knowledge
SI Yuxuan     
Yantai Vocational College, Yantai 264000, China
Abstract: In response to the diagnostic issues of maritime electronic equipment failures, a knowledge graph-based fault diagnosis system has been proposed. This system not only utilizes the traditional fault repair log library but also leverages electronic data sources from the library to extract and integrate extensive knowledge, establishing a comprehensive maritime equipment fault knowledge graph. It provides operational and maintenance personnel with a holistic reference framework and employs machine learning methods to achieve rapid and accurate diagnosis of electronic equipment failures, significantly improving the efficiency of ship fault handling.
Key words: knowledge graph     ship fault diagnosis     machine learning    
0 引 言

海运是国际上贸易往来的最重要方式。数据表明,我国约95%的对外贸易通过海运进行。现代船只容积大、承载能力强、运费便宜,但由于船舶航速较慢,远洋运输动辄数十天,往往得不到及时的技术支持,随着电子技术、大数据(Big Data)、人工智能(Artificial Intelligence)等新兴技术的飞速发展与落地应用,智慧船舶的建设得到了广泛的重视和发展,为降低船员工作强度,减少船东运维成本做出了巨大贡献。

然而在现代船舶的建设过程中,船只上广泛使用的电子设备和系统(如导航系统、电力系统、通信系统、动力系统等)不可避免的面临故障问题。海上长时间运行和恶劣的工作环境可能导致各种设备和系统出现故障,进而降低船舶的性能和安全性。船上设备繁多,有些设备或系统难以进行深入的检查定位,相应的维修手册也掌握在不同岗位,分散在不同的数据库、电子文档和纸质文档中,结构化程度较低,给运维人员的查阅和维修带来巨大困难[1]。因此,如何快速准确地定位故障点并制定维修方案,成为船舶故障诊断中的核心问题。此外,电子资源作为宝贵的数据源,其在提取知识、建立知识图谱以辅助诊断船舶故障方面的潜力尚未得到充分利用。

因此,如何快速准确地定位故障点并制定维修方案,成为船舶故障诊断中的核心问题。常见故障诊断方法可根据驱动方式不同大致分为3类:基于信号处理的方法、基于解析模型的方法和基于知识的方法[2]。其中,基于知识的故障诊断方法凭借计算机技术的飞速发展和无需精确数学模型以及测量手段的优势,得到了快速发展,而基于知识图谱的方法更是其中的佼佼者。特别是通过利用图书馆电子资源,我们可以提取和整合广泛的知识,建立起一个详尽的船舶设备故障知识图谱。

知识图谱最早可以追溯到20世纪的万维网和语义网,它是一种通过结构化数据以图的形式表示知识的技术手段,以“实体-属性-关系”(Entity-Attribute-Relation)三元组为基本组成单位,具有结构化知识表示、知识关联与发现、知识的统一整合、语义搜索和推荐等功能,广泛应用于智能助理、医疗健康、金融风控等领域,目前已有学者将知识图谱应用在航空电子器件[3]、电力设备等[45]复杂系统的故障诊断上。

本文旨在研究基于知识图谱的船舶故障诊断方法,以船舶故障诊断问题为研究对象,不仅利用故障维修日志库作为基础数据源,还特别强调了电子资源的重要性,采用机器学习方法构建船舶设备故障知识图谱,进而实现船舶故障的快速诊断,提高船舶故障处理效率。通过这种方法,可以更有效地整合和利用分散的维修手册和文档,为运维人员提供更加准确和快速的故障诊断支持。

1 典型知识图谱构建流程

知识图谱的构建方式可分为自下而上(bottom-up)与自上而下(top-down)2种[6]。其中,自下而上的方式是指将系统拼接而成更复杂的系统,即从海量的数据中归纳聚类,提取实体-关系的信息,适用于搜索引擎、智能助手等知识范围广泛的图谱构建;自上而下的方式是指从系统总体到子系统逐级设计,即先有本体(确定实体类型和关系类型),而后进行实体和关系的抽取,适用于已有结构化数据源的专业知识图谱构建。

自下而上的构建方式如图1所示,主要由知识抽取、知识表示、知识融合、知识加工4个阶段组成。其中,知识抽取是指从多源异构的数据中抽取出实体、属性以及实体和实体间的相互关系,在此基础上,知识表示形成对实体、属性间相互关系本体化的初始表达;知识融合则是为了对知识表示进一步整合处理,消除知识表示中如单一实体多种称谓的矛盾和歧义;而知识加工则是为了确保知识图谱的质量,对新融合形成的知识进行本体构建(实体并列相似度计算-实体上下位关系抽取-本体生成),并通过知识推理补全知识图谱间的关系。

图 1 自下而上的知识图谱构建流程 Fig. 1 The bottom-up knowledge graph construction process

自上而下的构建方式相较而言更加简捷,如图2所示,主要包括本体构建、实体抽取、关系抽取(包含属性抽取)和图谱构建。显然,故障诊断的知识图谱属于已有结构化数据源的专业知识图谱,适用自上而下的构建方式。

图 2 自上而下的知识图谱构建流程 Fig. 2 The top-down knowledge graph construction process
2 故障诊断系统设计 2.1 系统架构

船舶故障诊断系统主要采用“B/S架构”进行设计,用户端以浏览器的形式提供给用户,船舶故障日志数据库依托通用数据库管理软件(如达梦数据库管理系统)位后台为用户提供服务,整体系统架构如图3所示。

图 3 基于知识图谱的船舶故障诊断系统总体框架 Fig. 3 Overall framework of ship fault diagnosis system based on knowledge graph

故障日志库是系统的核心,它存储了解决船舶设备故障问题所需的领域知识和事实。这些知识主要来源于两方面:一是专家知识,二是日常故障数据的采集。据形态包括结构化数据、半结构化数据和非结构化数据3种类型。为了充分利用这些数据,特别是半结构化和非结构化数据中隐藏的故障信息,系统需要借助机器学习技术,按照预先定义的本体结构,提取故障日志中的故障名、故障现象、故障原因和处理方式等关键实体和关系。这些提取的信息将被用来构建故障知识图谱,该图谱将由故障日志库统一管理,并支持后续的故障诊断工作。

系统还利用电子资源作为重要的数据源,通过提取这些资源中的相关知识,进一步丰富和完善故障知识图谱。这些电子资源可能包括电子书籍、学术论文、技术标准、维修手册等,它们为系统提供了宝贵的理论知识和实践指导,有助于提高故障诊断的准确性和效率。

故障诊断主要以构建的故障日志库为基础开展,提供语义搜索和智能问答两种诊断模式。其中,语义搜索模式通过对用户在人机交互界面中对故障现象的描述,基于模板匹配技术提取关键性故障词组。考虑到自然语言中对同一个实体可以有多种表达方式,系统采用word2vec模型对关键性故障词组进行实体和关系的映射,最终在知识图谱中查询并反馈相应的属性信息。智能问答模式能够识别用户向知识图谱输入的问题,基于贝叶斯网络问题分类实现故障的诊断,向用户反馈故障处理建议。

2.2 故障日志知识图谱设计

故障日志知识图谱设计是船舶故障诊断系统的核心组成部分,它不仅依赖于船舶日常运行中的使用维护登记本记录的设备状态信息,还特别强调了利用图书馆电子资源作为数据源,以提取更广泛的知识和信息,辅助建立更为全面和精确的知识图谱,从而辅助诊断船舶故障。

在日常运行中,船舶会使用专用的维护登记本来记录设备状态,并对发生的故障及解决情况进行详细登记。这些登记通常采用制式表格,记录故障时间、设备、原因、现象、等级、处理方法和负责人等信息。然而,由于故障原因、现象和处理方法等信息通常使用自然语言描述,不同记录人员可能会使用近义词或不同顺序,导致对相同问题的表述存在差异。因此,建立故障日志数据库时,需要特别关注对这些自然语言描述的处理,通过抽取故障词组来形成故障日志知识图谱。

此外,系统还整合了图书馆电子资源中的相关知识,包括技术手册、维护指南、学术论文等。通过提取这些资源中的关键信息,构建了一个更为详尽和准确的故障知识图谱,从而提高故障诊断的效率和准确性。

由于登记表采用制式表格,其故障时间、故障设备、故障等级和负责人等信息相对清晰、歧义较小,但故障原因、现象和处理方法等信息由于采用自然语言进行描述,会因记录人员的不同,其描述内容存在着近义词或顺序上的差异,出现对相同问题表述不一的情况。因此,故障日志数据库的建立需要重点对上述的自然语言进行处理,通过故障词组的抽取形成故障日志知识图谱。

依据某单位船舶故障采集方法以及维护手段等实际情况出发(以冷却系统故障为例),将故障日志分解为故障时间、故障设备、故障现象、故障原因、处理方法、故障等级、负责人等7类实体数据逻辑结构如图4所示。同时,针对船舶冷却系统的组成,将设备分解为水泵、冷却系统管道、散热器、水箱、温度传感器等5个子类实体;故障等级则根据对冷却系统运行影响的程度,设计为一级、二级、三级共3个层次。在关系设计上,主要包括父-子、现象-设备、原因-现象、措施-原因等关系,这些相互关系主要通过制式表格字段的定义来建立。

图 4 故障知识图谱逻辑结构图 Fig. 4 Logical structure diagram of fault knowledge graph
3 关键技术 3.1 基于Bert-LSTM-CRF的知识提取

随着NLP领域中深度神经网络模型研究的深入,不依赖人工特征的端到端解决办法日益成为主流。BERT-LSTM-CRF模型整体结构如图5 所示,整个模型分为3个部分。原始文本输入至BERT预训练向量,得到每个字的向量表示,接着输入至LSTM得到字符高层次语义表示,最后通过CRF层输入概率最大标签序列。鉴于BERT参数是在大规模自然语句集上训练的结果,因此该模型在使用时候,对BERT预训练向量参数仅进行精调,重点训练LSTM-CRF参数。该训练方式可以大大缩短训练时间,提高训练效率。

图 5 Bert-LSTM-CRF模型示意图 Fig. 5 Schematic Diagram of Bert-LSTM-CRF Model

1)BERT预训练模型

BERT是由Google AI研究院于2018年提出的一种预训练模型,它在机器阅读理解领域的顶级测试SQuAD1.1上表现出色。BERT在11个不同的自然语言处理测试中创造了最先进的结果,包括将GLUE基准提升到80.4%(绝对改进了7.6%)和MultiNLI准确率达到86.7%(绝对改进了5.6%)。这一成就被认为是自然语言处理领域的里程碑。

与其他语言模型相比,BERT具有更强的上下文语义学习能力,能够学习长距离的语义信息。生成的字嵌入分布式表示可以用于下游的自然语言处理任务。作为NLP任务的核心网络,BERT将基本嵌入表示作为输入传递给其他网络层,以进行进一步的处理。

2)LSTM层与CRF层

在常见的序列标注任务中,循环神经网络可以保存文本序列的历史信息,因此多用于文本序列问题的解决。长短时记忆网络在隐藏层加入了记忆单元,可以较好的解决网络训练中出现的梯度消失问题。条件随机场(CRF)一给定随机变量为输入,输出随机变量条件的概率分布,即基于相邻标签关系得出一个全局最优的标记序列。

3.2 基于模板匹配的关键故障词组提取

关系分析是将问题结构化。鉴于设备故障诊断的限定域问题知识量少且专业性较强,所以采用了基于规则的关系分析方法。基于规则的关系分析方法主要根据问题的句式进行判断,如原因类问题,其规则有“什么原因”、“的原因是什么”、“为什么会”等。由于人为设置规则虽然准确率高,但是需要健壮性不强,易出现因规则不完善导致查询错误的情况。因此,设计了基于模板相似度的关系分析方法。

首先对每个实体关系设置5个关系模板(见表1),计算Word2Vect向量作为每个关系模板的语义特征;

表 1 关系模板组成 Tab.1 Composition of Relationship Templates

然后计算每个关系模板与关系模板集合中其他向量的余弦相似度,对于同类关系取相似度最小值,对于异类关系取相似度最大值,两值差值为该关系模板异同度,异同度越大,表示越能代表该实体关系;

随后选择每个实体关系中异同度最大的关系作为关系模板,构建相似度矩阵;

输入问题后,待提取故障短语后,将剩余字输入Word2Vect获得向量后,与相似度矩阵进行计算,选取相似度最大的作为匹配实体关系。

3.3 基于Word2vect相似度的知识映射

Word2vec模型为3层的神经网络结构,由输入输出的不同可以分为连续词袋(continuous bag of words, CBOW)模型和Skig-gram(SG)模型;由映射方式不同可以分为霍夫曼树方式(Hierarchical Softmax)和负采样方式(Negative Sampling),两两组合可以得到4种模型。

本文使用CBOW霍夫曼树方式(Hierarchical Softmax)的Word2vec模型,以目标词语的上下文为输入,输出为目标词。词向量长度设置为10;窗口大小设置同改进 TextRank 窗口大小一样为3。计算得到词语的词向量后,词语之间的语义相似度通过余弦相似度计算获得的,计算公式为:

$ \mathrm{s}\mathrm{i}\mathrm{m}\left({v}_{i},{v}_{j}\right)=\frac{\omega 2v\left({v}_{i}\right)\cdot \omega 2v\left({v}_{j}\right)}{\Vert\omega 2v\left({v}_{i}\right)\Vert\Vert \omega 2v\left({v}_{j}\right)\Vert}。$ (1)

式中,$ \omega 2v\left({v}_{i}\right) $为词语$ {v}_{i} $向量化后的结果,其长度为50。下表为与词语“显示器”存在语义相关性排名靠前的词语。

与实体“显示器”相关性大于0.7以上的实体如表2所示。可以看出,基于Word2vec模型的词向量能够体现语义相关性。其主要原因为:若2个词语存在语义相关,那么其上下文中会存在相同词语;因此相同的上下文为输入,输出得到的词向量应当也是相似的。

表 2 显示器相关实体对照表 Tab.2 Comparison table of display-related entities
3.4 基于贝叶斯概率的智能问答

在构建知识图谱后,可使用贝叶斯模型计算每个推理好的故障原因后验概率,最终得到概率最大的故障原因。贝叶斯概率的推导如下:

设离散集合${{D = }}\left[ {{x_1},{x_2},...,{x_n}} \right]$,离散集合中的元素${x_1}$为故障发生的多个可能原因。这些原因会导致某种故障现象$ {c_j} $发生。因此,基于概率学知识,故障$ {c_j} $发生的概率为:

$ P( {{{{c_j}}{/ {\vphantom {{{c_j}} {{x_1},{x_2},...,{x_n}}}} } {{x_1},{x_2},...,{x_n}}}} ) = \frac{{P( {{{{x_1},{x_2},...,{x_n}} \mathord{/ {\vphantom {{{x_1},{x_2},...,{x_n}} {{c_j}}}} } {{c_j}}}} )P( {{c_j}} )}}{{P\left( {{x_1},{x_2},...,{x_n}} \right)}}。$ (2)

式左边的概率 P 为基于$ \left( {{x_1},{x_2},...,{x_n}} \right) $发生故障$ {c_j} $的条件概率,式(2)右边为贝叶斯概率计算方法。在式(2)中,$ P( {{{{x_1},{x_2},...,{x_n}} \mathord{/ {\vphantom {{{x_1},{x_2},...,{x_n}} {{c_j}}}} } {{c_j}}}} ) $是发生故障$ {c_j} $时原因为$ \left( {{x_1},{x_2},...,{x_n}} \right) $的概率,$ P( {{c_j}} ) $为发生故障$ {c_j} $时的全概率,$ P\left( {{x_1},{x_2},...,{x_n}} \right) $为故障原因的联合概率。

基于贝叶斯公式,对式(2)推导可得:

$ P\left( {{{{x_1},{x_2},...,{x_n}} \mathord{/ {\vphantom {{{x_1},{x_2},...,{x_n}} {{c_j}}}} } {{c_j}}}} \right) = \frac{{P\left( {{{{c_j}} \mathord{/ {\vphantom {{{c_j}} {{x_1},{x_2},...,{x_n}}}} } {{x_1},{x_2},...,{x_n}}}} \right)P\left( {{x_1},{x_2},...,{x_n}} \right)}}{{P\left( {{c_j}} \right)}}。$ (3)

可知,基于贝叶斯理论推导故障原因的概率即对$ P( {{{{x_1},{x_2},...,{x_n}} \mathord{/ {\vphantom {{{x_1},{x_2},...,{x_n}} {{c_j}}}} } {{c_j}}}} ) $进行计算。根据归一化后的后验概率,智能故障诊断系统可以提供最可能的故障原因,并给出相应的维修建议。实际维修结果可用来更新先验知识库,通过用户的反馈进行自我学习和优化。随着系统的使用,不断收集新的数据和反馈,智能故障诊断系统的准确性将进一步迭代优化。

4 结 语

针对船舶系统设备数量多,故障现象不容易判断的问题,借鉴其他领域应用知识图谱开展故障诊断的经验,设计了一套基于知识图谱的船舶故障诊断系统,并分析了有关关键技术。设计了故障日志知识图谱,知识提取技术能够实现对多种结构数据源的实体抽取和关系抽取,从而实现自上而下的知识图谱构建。针对故障诊断的实际应用,提出了语义搜索和智能问答两种船舶故障故障诊断方法,为知识图谱技术在船舶故障诊断领域的实际应用提供了支撑。

参考文献
[1]
卞嘉楠, 冒泽慧, 姜斌, 等. 基于知识图谱和多任务学习的工业生产关键设备故障诊断方法[J]. 中国科学: 信息科学, 2023, 53(4): 699−714.
[2]
朱大奇, 于盛林. 基于知识的故障诊断方法综述[J]. 安徽工业大学学报(自然科学版), 2002(3): 197-204.
[3]
聂同攀, 曾继炎, 程玉杰, 等. 面向飞机电源系统故障诊断的知识图谱构建技术及应用[J]. 航空学报, 2022, 43(8): 46-62. DOI:10.7527/j.issn.1000-6893.2022.8.hkxb202208004
[4]
刘炎昌. 基于知识图谱的电力通信设备故障诊断方法研究及应用[D]. 吉林:东北电力大学, 2023.
[5]
卞嘉楠, 冒泽慧, 姜斌, 等. 基于知识图谱和多任务学习的工业生产关键设备故障诊断方法[J]. 中国科学: 信息科学, 2023, 53(4): 699-714. DOI:10.1360/SSI-2022-0060
[6]
刘峤, 李杨, 段宏, 等. 知识图谱构建技术综述[J]. 计算机研究与发展, 2016, 53(3): 582-600.