何 静
(中核汇能有限公司,北京 100071)
在核电企业中,生产过程所产生的技术文档是核电管理工作的核心,也是核电厂安全稳定运行的基础。但是,核电企业中现有的文档组织管理方式单一,在数据层面很少对核电文档中蕴含的知识进行挖掘与深化,而在应用层面往往只支持传统全文检索式的查询,文档利用效率较低,文档管理工作总体对核电业务活动的支撑力度还有待提升。因此,向下通过一系列信息抽取、知识融合等技术手段实现文档的图谱化组织与构建,形成核电文档知识库,向上通过自然语言处理、深度学习、自动推理等技术,构建基于知识库的智能应用平台,提供包括智能问答、主动推送、自动提醒等知识服务,提升文档利用效率,进而帮助企业进行知识整合、人员培训、辅助决策等,已经成为当前核电企业亟待研究的问题。
知识图谱是结构化的语义知识库,本质上是一种能够表示实体之间关系的语义网络,用于以符号形式描述物理世界中的概念及其相互联系[1]。知识图谱的数据是以三元组的方式进行组织,基本组成单位是“实体-关系-实体”三元组,以及实体及其相关属性——值对,实体间通过关系相互联结,构成网状的知识结构[2]。
相对于本体、传统的语义网络而言,知识图谱本质上是一种能够表示实体之间关系的语义网络,更强调对实体描述的覆盖,其语义关系也更加复杂、全面[3]。因此,知识图谱本质上可以看作是对人脑理解智能的一种模拟,当人们想到一个实体/概念时,脑海中将建立起与该实体/概念相关联的一系列知识,而这种过程实质上就是知识图谱的构建过程[4-5]。图1 给出了知识图谱的整体架构。
图1 知识图谱整体架构
在核电企业中,工程建设和运行维修过程所产生的技术文档是核电运维人员利用的重要资源,也是核电厂安全、合规、稳定运行的基础。对技术文档中知识的掌握程度直接决定了一名核电工作人员是否具备承当相应任务的资格。但核电企业中现有的文档组织管理方式单一,在数据层面很少对核电文档中蕴含的知识进行挖掘与深化,而在应用层面往往只支持传统全文检索式的查询,文档利用效率较低,文档管理工作总体对核电业务活动的支撑力度还有待提升。
当前,公司文档工作所涉及的文档管理对象已经具有较高的数字化水平,但其数据化与知识化的程度还有所欠缺。核电企业在生产运行过程中形成的大量结构化数据、半结构化版式文档及非结构化数据没有形成知识三元组数据,难以实现高效化知识抽取,无法为核电技术文档知识化利用提供基础。
当前,公司内部知识以离散的文本化存储,未形成连续集中的图谱化存储。同时,自然语言处理中的实体识别、关系抽取等应用技术的缺失,难以识别和发现文本中新的属性和关系、与已有的知识建立关联,未能形成灵活、高效、可扩展的核电文档专属领域下的知识挖掘技术体系,难以支撑不同场景下知识利用的需求。
公司传统的文档业务服务缺乏及时性与精准性。当前的文档应用平台难以识别文档利用人员的自然语言问句、解析出用户的查询意图、记录用户检索行为,无法实现查询推荐及主动推送等智能服务,导致文档管理部门对企业业务活动的支撑力度不足。
核电站从建设到生产中产生的文档数量众多,文档管理信息化程度较高。按双机组计算,预计在机组商运前将形成约250万份电子文件。典型的核电技术文档主要包括运行规程、维修规程、运行技术规格书、操纵员试题、操作单、报警卡、事故规程等。这类文件有着较为固定的文档结构,一般以word和pdf形式存在,以表格和条目型文字为主。针对此类文件,典型的应用模式如下。
(1)智能问答。通过建立核电技术文件的知识图谱作为底层数据资源建立智能化的交互式问答应用,支持用户以自然语言问句的形式跟智能平台进行对话交互,系统自动将自然语言问句转换成图谱上的查询语句并从知识图谱中找到答案,然后以自然语言形式进行输出并返回给用户,在给出答案的同时还能给出相应的依据,帮助技术人员学习巩固,辅助运行决策。
(2)智能搜索。根据用户的检索记录和交互行为,动态生成和改进用户画像,实现更具有针对性的查询推荐服务。将用户提交的历史查询作为上下文信息,通过对其历史查询进行建模,通过用户兴趣自动识别、内容的语义理解、智能信息化过滤,推送与之相关的候选查询内容。与传统搜索引擎需要用户自主寻找符合需要的答案不同,智能搜索免去了用户选择环节,以自然语言搜索的形式给出答案,而不是网页链接。伴随着答案的同时提供可视化的逻辑图谱及参考链接。
(3)系统画像。核电技术知识图谱的内容核心是系统逻辑和设备本身。以核电站的各类系统、子系统、设备、部件等具体业务对象为核心建立知识图谱,提供丰富的多维链接和数据集成,方便用户建立设备或系统的整体视野,提供更为直观便捷的系统或设备利用渠道。
针对非结构化的word文件,尚不存在通过通用的工具对文档进行解析的方法。一般的解决思路是将word文档中各类型的元素提取出来,并分类保存,形成一个ZIP压缩文件,压缩文件的主体内容是XML(可扩展标记语言)文件,以XML嵌套HTML(超文本标记语言),这种方式的好处是可以通过HTML形式将数据渲染在PC上。采用正则表达式和规则匹配结构化word内容,结构化后的数据以目录视图展现,除支持段落编辑外,还支持按标题编辑,也支持使用富文本编辑框。结构化后的程序元素直接存入关系型数据库,满足程序元素的深度利用,以及查询统计分析等后续应用。
命名实体识别(NER)是自然语言处理(NLP)领域的重要基础任务,也是知识图谱构建中不能避免的环节,它的效果好坏直接影响到后面问答体系的构建和图谱的准确性,是非结构化文件转向结构化的基础工作。通常需要通过数据预处理对公开的或者私有的数据语料进行处理并通过序列计算得到抽取的命名实体,这个实体与能够通过业务规则明确的实体信息进行融合更新,形成的实体库可以提供给知识图谱、实体分类等进行应用[6]。目前主流的NER技术均基于文本词向量表示后叠加神经网络技术来提取特征。
信息抽取即从自然语言文本中,抽取出特定的事件或事实信息,帮助我们将海量内容自动分类、提取和重构。 这些信息通常包括实体(entity)、关系(relation)、事件(event)。信息抽取是把文本里包含的信息进行结构化处理,变成表格一样的组织形式。抽取系统的输入信息是原始文本,输出的是固定格式的信息点。信息点从各种各样的文档中被抽取出来,然后以统一的形式集成在一起。这就是信息抽取的主要任务。信息以统一的形式集成在一起的好处是方便检查和比较。信息抽取涉及的关键技术包括实体抽取、关系抽取和属性抽取。
关系抽取是从非结构化文本中识别出实体之间的语义关系并形成关系网络的过程,目标是建立起三元组。相比一般的实体关系抽取,核电技术文档语料库的建设复杂,不仅需要大量的人力和物力投入,而且对参与人员的专业背景要求高,如果采用类似brat的标注工具通过人工标注数据尽管能将部分数据作为训练数据,但是依赖手工提取特征的方法提取关系会带来较大的工作量,总体投入资源是无法接受的。因此,有必要选择采用深度学习方法进行关系的抽取。目前,已有的基于深度学习的关系抽取方法主要包括流水线(Pipelined Method) 方法和联合抽取方法[7]两大类。流水线方法将识别实体和关系抽取作为两个分离的过程进行处理,两者不会相互影响;但关系抽取在实体抽取结果的基础上进行,因此关系抽取的结果也依赖于实体抽取的结果。联合抽取方法将实体抽取和关系抽取相结合,输入一个句子,通过实体识别和关系抽取联合模型,直接得到有关系的实体三元组。这种方法可以克服上面流水线方法的缺点。
知识融合就是在不同的数据集中找出同一个实体的描述记录,目的是对不同数据源中的信息进行整合,消除概念的歧义,剔除冗余和错误概念,从而确保知识的质量。知识融合主要包括两个部分:实体链接和知识合并。在知识融合环境主要关注的是实体对齐,将具有相同含义的实体进行等价处理,确保两个具有相同语义的实体在不同的图谱结构中只出现一次。例如“乏燃料水池冷却系统”与“2FAK”实际表示的是相同的电站系统。通过知识融合进行实体的融合和消歧,能够有效提升知识利用的效果。常用的知识融合方法包括快速相似度计算、基于规则等方法。
知识存储的目标是实现从上述过程中形成的知识的存储以及实现在面向上层知识图谱数据查询、推理、计算等利用过程的高速存取。图数据库管理系统和RDF存储系统使用图数据模型,可直接用于知识图谱的存储。选择知识存储方式,需要根据具体的数据规模及应用场景选择合适的存储方式。一般从是否支持数据分布存储、是否有开源产品、知识建模管理能力、查询语言表达丰富性、支持的数据规模等维度对知识图谱存储的性能进行评价。
图谱构建完成后,应提供两方面的API(应用程序编程接口)服务,一是针对图数据库本身的,包括查询接口、新增接口、修改接口。查询接口用于图数据库的检索。检索的参数包括实体、属性和边。根据实体名称检索时,如不指定深度,则将默认返回该实体及其属性和深度为1的关联实体及其属性。根据实体属性检索时,将返回符合该属性的所有实体及其属性。根据边检索时,将返回符合的边以及边两端的实体及其属性。新增接口主要用于实体的新增、实体属性的新增和实体与实体之间的边的新增。其中,新增实体时可以指定该实体的属性。修改接口主要用于实体的名称修改、实体属性的修改和实体与实体间边的修改。二是针对问答功能,提供初始化问答接口、问答接口、问答记录接口。初始化问答接口用于发起问答,接口的入参为用户ID。调用该接口后系统会生成一个本轮对话的ID,随后的问答调用都需要传入该ID。问答接口的请求内容是用户想要提出的问题,接口的响应是系统得到的问题的答案,同时支持自定义是否返回系统在查找答案的过程中出现的引用和实体关系。引用的内容包含依据文件、段落和章节具体内容。实体关系的内容包括实体列表和关系列表。问答记录接口可以根据用户指定的查询参数查询问答的记录,记录中包含问题、答案及可选的引用和实体关系。系统给出问题的答案后需要用户对此次的回答做评价或反馈。
在核电技术知识图谱建立完成后,支持各类技术问题的解答,例如问题“1号发电机的容量有多大?”,系统反馈“1111MVA”,并同时返回“答案来源:SOP-1-MKA00-001”。
基于上述构建过程,形成核电技术知识图谱,实现核电技术知识的语义检索、知识库管理等功能。支持智能搜索,可检索的技术文件包括文本、表格、图片、标签内容、长文本检索等,实现了支持边搜索边推荐,支持语义搜索、结构化查询、图谱问答等多种方式的查询功能,支持根据用户的反馈动态调整搜索结果。实现智能提示、相关文档推荐。根据使用人员的自然语言问句,分析出用户的查询意图,再根据查询意图从知识库中精准定位,将自然语言形式的答案抽取出来推送给用户,同时给出知识来源与依据,再利用技术平台记录用户检索行为,参照用户画像及用户行为分析等方式进行核电文档的主动推送、智能推荐。
知识图谱能够实现核电文档检索效率与利用水平的提升,能够为工程建设和生产运营人员提供自动问答、查询推荐、主动推送等知识服务,充分发挥文档管理对企业业务活动的支撑作用,提高企业内部的知识利用效率。
随着信息化与数字化建设的展开与NLP技术的进步,知识图谱不再局限于网络百科式的搜索,其衍生出了大数据知识图谱与行业知识图谱等多种产品类型,产品专业化与场景化的趋势日渐明显。比如核电企业中,检修与缺陷排查耗时费力,未来可以将设备知识、检修知识、处室职能等多个维度的知识关联起来,从多维度去分析问题,建立快速响应机制。在设备发生故障时,知识图谱可以快速找到解决方案。