老焦专栏 | 一个典型的知识图谱应用建设案例

6个月前

基于相关矩阵的知识推理类应用:大型装备故障自动诊断

转载本文需注明出处:微信公众号EAWorld,违者必究。


1知识图谱的几种典型应用方式

基于知识图谱的应用可以分为几种典型的类型,这几种应用使用的场景各有不同,在使用技术上也各有侧重,我们希望能够根据不同类型,总结出一些通用的场景,指导应用建设:

1)知识推理类型就是通过已知的知识,推理出未知的知识,这在知识图谱应用的建设中,具备非常大的诱惑力,例如大型装备的故障诊断,当装备发生故障的时候,会接到很多的故障报警信息,利用知识推理可以快速定位故障的原因,提高故障定位的速度,减少对人的

2)知识呈现类是将各种实体关系进行处理,用一定的方式呈现出来,帮助使用者理解复杂的事物,找出规律或者答案。例如在公共安全领域用“数据对碰”的方式找出嫌疑人与案件之间的关联, Palantir、i2 等公司都有这种知识可视化呈现的工具;

3)知识问答类应用根据提问者语音或者文字的输入,找到相关的知识,完成与提问者之间的互动,通常语音客服、员工助手等应用都属于这一类型。一般来说问答类应用分为听清、听懂、能做三个部分,听清可以基于目前百度、腾讯、科大讯飞等组件完成。由于这些应用往往面向特定的专业领域, 听懂和会做就可以采用领域知识图谱技术,通过交互得到 5W1H (Why、What、When、Where、Who、How)几个方面信息,让计算机按提问者要求完成工作。

4)知识共享类应用主要解决在不同机构之间知识共享。很多机构之间,由于法律法规等原因,无法直接获取对方数据,只能在相互之间通过知识图谱进行沟通,例如某市大数据中心有税务数据,公安侦查需要税务数据,但是根据法律不能直接调用具体的税务数据进行侦查,除非对具体主体立案。这种情况下,公安部门可以提供主体的一些典型特征,大数据中心根据特征提供相关主体的列表,公安部门根据列表缩小范围,继续侦查,得到新特征,再调取列表。经过几次知识的碰撞,确定相关嫌疑人,再进行立案调查。

2基于相关矩阵的知识推理类应用:大型装备故障自动诊断

知识推理的方法比较多,如果看理论文献,有自上而下的演绎法,在给定一个或者多个前提的基础上,推断出一个必定成立的过程。也有自下而上的归纳法,基于已观察的结果,得出一个结论,归纳法又分成溯因推理和类比推理。不过这些太理论化了。

领域知识图谱应用中,最常见的推理就是基于规则的推理。在建设知识图谱的过程中,会产生很多规则,这些规则有可能依附于概念之间的关系,也可能是事件、处置的描述方式,用规则的方式来表述知识,是一种最常见的方式。规则包括条件规则、规则树、规则矩阵、规则流等多种方式,这里我们介绍一种以相关矩阵做为规则的实际应用情况。

前面提到,在大型装备出现故障时,往往接收到大量的故障信号,如何判定故障发生的具体原因,是一个比较复杂的问题,这里就是介绍解决这个问题的(写这个段落时,我比较犹豫,因为这里会涉及到具体的装备制造业务,最后还是咬咬牙写下来,毕竟知识图谱建设中,关键是业务的理解,实际上我们的方法也有助于快速的理解业务。当然,我会尽可能写的简单一些)。我们以某飞机舵控系统为例,简单化的方式我们把它分为电源、核心电路板、接口电路板、控制器、电机 5 个部分,每个部分的故障分别为断路、CPU损坏、接口线路断路、控制器烧毁、电机卡死 5 个故障,已有故障现象的知识为当电机转角异常时电机卡死,当电机转角异常、控制器输出信号异常时控制器烧毁,当电机转角异常、控制器输出异常、控制计算机输出异常时控制芯片损坏,当电机转角异常、控制器输出异常、控制计算机输出异常时接口线路断路,当电机转角异常、控制器输出异常、控制计算机输出异常、电源电压异常时电源断路,如下图所示:



上面的设备部件故障模式与故障征兆的对应关系,可以如下表所示,矩阵中的 1 代表故障模式同故障征兆具有关联关系,即某种故障发生的时候,对应的故障征兆(测试现象)会发生。例如矩阵中的第一行,表示“电源断路故障"发生的时候,“电源电源异常”“控制计算机输出信号异常”“控制器输出信号异常”“电机转角异常”这些现象均会发生:

如果将上图用规则表述,可以用下面的方式做推理计算:

IF  控制计算机信号输出异常
IF 控制器输出信号异常 
THEN  电机卡死 
ELSE
THEN 控制器烧毁
ELSE 
IF 电源电压异常
THEN 芯片损坏 或者 接口线路断路
(都是控制计算机故障,具体故障需要进一步分析,现有数据并不能确认)
ELSE
THEN 电源电路 

这里出现了一个新问题,如果装备有上千个部件/元件,每个部件/元件有大量故障现象,按照上述的 IF/ELSE 模式进行规则推理的编写会非常复杂,因此在推理时不会使用 IF/ELSE 方式进行推理。而是将这些部件和故障按上图方式,形成一个非常大的相关矩阵,上图矩阵中每一行都对应一个具体的故障模式,这样就可以根据每一行的特征,利用二值相关性模型进行快速定位故障,目前有专业的故障推理机从事这方面工作。如果没有专业的故障推理机,对于简单一些的情况,也可以使用代码生成的方式生成上述的 IF/ELSE 推理程序。



上面介绍的推理过程可以看出,故障诊断场景下推理的关键是形成故障与部件之间的相关矩阵,而形成相关矩阵的过程,也就是故障知识图谱建设的过程。下面我们介绍一下故障知识图谱形成的过程,如何建模,如何抽取,如何验证,以便对知识图谱建设方法有个更加清晰的认识。

本文针对领域知识图谱,建设方法以“自顶向下”为主,“自下而上”为辅,对于故障诊断这样的场景,“自顶向下”的知识来自于装备设计,也就是说在装备的设计过程中,就可以确定装备内部各部件的拓扑结构、故障类型、测试方式,让故障诊断的知识图谱成为装备设计环节的一部分,也就是说知识的抽取是在设计阶段进行的。当装备投入使用后,新的故障出现在对设计阶段形成的图谱进行补充,可以认为是一个“自下而上”的方式。

既然在装备设计过程中形成知识图谱,就需要有一个描述装备、故障、测试几者之间关系的模型,这也是知识建模的重要内容:业界一般用“多信号流图”的方式描述,如下图的示例。



这个图形中,把装备的部件、每个部件的故障模式、部件之间的关系、每个部件的测试点以及输入输出情况,用图形化的方式描述了出来。在装备设计中完成相关“多信号流图”的设计,就可以通过“多信号流图”产生前面的故障诊断相关矩阵。除此之外“多信号流图”还可以完成知识验证的工作,例如装备设计中测试的完备性,推理故障之间的关联性,出现新故障知识是推理知识是否合理等等,是装备设计的一个重要手段。“多信号流图”提高了知识图谱的建设工程化水平,让设计者用更容易理解和操作的方式进行设计,同时它也是一个多方面知识融合的过程。

我相信绝大多数读者并不从事装备设计领域,因此没必要深入了解“多信号流图”,但这种图形化模式的提出对知识图谱建设非常有借鉴价值。对应到传统信息化软件的设计你会发现,UML就是一种图形化的建模方式,类图属于软件静态关系的图形化描述,时序图、状态图、序列图等等是软件动态关系的图形化描述,部署图是软件物理结构的图形化描述,因此在知识建模过程中,可以考虑建立自有的图形化描述,提高知识抽取的工程化能力。

下图总结了采用知识图谱建设方法论,进行装备故障诊断时各个阶段的主要工作,包括:



1、知识建模阶段,对装备、功能(控制、分离、引导、连接...)、输入输出(能量、物质、信号)等基本概念的抽象,以及利用“多信号流图”进行图形化描述(类似面向对象的 UML 方式);
2、知识抽取阶段,可以在研发过程中设计装备的“多信号流图”,对于研发阶段没有进行这方面设计的可以从维修手册中抽取。用多信号流图可以产生故障树与故障相关矩阵。
3、知识验证阶段,可以利用相关矩阵推断新增加的知识是否有效,也可以验证测试是否完备,例如两个故障模式在故障矩阵中故障特征是一致的,就可能需要增加测试点;
4、利用故障知识图谱,可以在开发实时诊断的应用,利用推理机实时确定故障发生的部件,产生故障应急的预案等等。

感谢胡政博士为本文提供的案例,他曾是国防科技大学装备综合保障技术重点实验室的核心成员,我国装备保障领域的知名专家。他创办的湖南擎新公司,专注于大型装备的实时故障诊断、检测技术的研究与实践,完成了多项重大武器装备的故障诊断知识图谱的建设。

3总 结
企业软件从流程化开始起步,逐步实现数据化,今天我们希望它能够更加智能化。而目前智能化还主要体现在图像识别、语音识别的应用,究其原因是目前以机器学习为核心的技术并不能满足很多场景,诸如缺少大量数据、结果不够明确、需要明晰推理过程。而建立专业领域知识图谱,正是将人工智能应用从简单应用转向知识密集但数据缺少的复杂应用。

《老焦专栏 | 解开知识图谱神秘的面纱》、《老焦专栏 | 知识图谱建设方法论》,在这一系列的三篇文章酝酿了很长时间,借鉴了企业软件流行的面向对象方法,提出了一个工程化实施知识图谱建设的方法论,包括知识建模中的领域划分、概念与关系建模,知识抽取的自动化、非自动化方法,最后列举了知识图谱的四种应用形式,并通过一个装备故障监测的示例,讲解了如何基于知识图谱进行推理、如何在知识图谱建模时类似 UML 的方式建立知识模型。

后面我们还会针对知识图谱这一话题,进行持续的探讨,敬请期待。


- The End -


关于作者:焦烈焱,普元信息CTO,致力于技术创新和金融创新解决方案研究。专注于企业技术架构领域,对分布式环境的企业计算、 企业信息架构的规划与实践有着丰厚经验,带领普元技术团队相继在云计算、大数据及移动开发领域取得多项突破,并主持中国工商银行、中国建设银行等多家大型企业技术平台的规划与研发。


关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享。长按二维码关注!

COMMENTS

需要 后方可回复
如果没有账号可以 一个帐号。