首页> 中国专利> 生物领域知识图谱构建方法及装置

生物领域知识图谱构建方法及装置

摘要

本发明公开了一种生物领域知识图谱构建方法及装置,所述方法包括:使用词法分析工具对生物领域文本内容进行分词、词性标注以及实体识别获取初始实体集,通过实体集获取扩展实体库,并对扩展实体库进行命名及实体分类;根据预定规则和词典并基于深度学习的方法对扩展实体库中的分类后的实体进行实体关系分类,并通过基于PCNN的关系抽取对扩展实体库中的实体进行关系抽取获取三元组;通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对所述三元组中的实体进行融合,获取生物领域知识图谱。本发明通过在生物领域文本中获取有用实体,进行实体识别、关系分类及知识融合,从而获取生物学领域知识图谱。

著录项

  • 公开/公告号CN114897167A

    专利类型发明专利

  • 公开/公告日2022-08-12

    原文格式PDF

  • 申请/专利权人 内蒙古大学;

    申请/专利号CN202210522728.5

  • 申请日2022-05-13

  • 分类号G06N5/02(2006.01);G06F40/242(2020.01);G06F40/284(2020.01);G06F16/35(2019.01);

  • 代理机构北京八月瓜知识产权代理有限公司 11543;

  • 代理人秦莹

  • 地址 010021 内蒙古自治区呼和浩特市赛罕区大学西路235号

  • 入库时间 2023-06-19 16:22:17

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-30

    实质审查的生效 IPC(主分类):G06N 5/02 专利申请号:2022105227285 申请日:20220513

    实质审查的生效

说明书

技术领域

本发明涉及图谱构建技术领域,尤其是涉及一种生物领域知识图谱构建方法及装置。

背景技术

为了研究生物与生物之间的关系,人工智能逐渐走进实验室。随着科学技术的进步,推理能力成为人工智能的重要特征,知识图谱也成为计算机理解语义信息的有效方法。它是智能社会的重要生产资料,不仅可以把复杂的知识领域及知识体系通过数据挖掘、信息处理、知识计量和图形绘制显示出来,也能映射人类对世界的认知方式,帮助机构实现业务智能化。现阶段,生物领域的研究急需一种简明直观的工具来集成生物之间的相互关系,为关系的推理和检索提供方便,因此,基于生物领域的知识图谱应运而生。由于知识图谱的组织形式与自然界的生物链极为相似,此类基于生物领域的知识图谱可以体现任意一种生物在生态链中的位置,而且可以通过横向对比地球上濒危物种,总结出濒危物种的通性。不仅如此,像新冠肺炎疫情、鼠疫等传染病爆发时,如果我们利用生物知识图谱提前掌握生物之间的关系,那么追溯传染源、掌握传播途经,将变得简单快捷。

发明内容

本发明的目的在于提供一种生物领域知识图谱构建方法及装置,旨在解决现有技术中的上述问题。

本发明提供一种生物领域知识图谱构建方法,包括:

使用词法分析工具对生物领域文本内容进行分词、词性标注以及实体识别获取初始实体集,通过初始实体集与预定的实体库进行对比获取扩展实体库,并对扩展实体库进行命名,对命名后的扩展实体库中的实体进行分类;

根据预定规则和词典并基于深度学习的方法对扩展实体库中的分类后的实体进行实体关系分类,并通过基于PCNN的关系抽取对扩展实体库中的实体进行关系抽取获取三元组;

通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对三元组中的实体进行融合,获取生物领域知识图谱。

本发明提供一种生物领域知识图谱构建装置,包括:

实体识别及分类模块,使用词法分析工具对生物领域文本内容进行分词、词性标注以及实体识别获取初始实体集,通过初始实体集与预定的实体库进行对比获取扩展实体库,并对扩展实体库进行命名,对命名后的扩展实体库中的实体进行分类;

关系抽取模块,通过基于规则和词典的方法以及基于深度学习的方法对扩展实体库中的分类后的实体进行实体关系分类,并通过基于PCNN的关系抽取对扩展实体库中的实体进行关系抽取获取三元组;

知识图谱获取模块,通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对三元组中的实体进行融合,获取生物领域知识图谱。

本发明实施例还提供一种生物领域知识图谱构建装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述生物领域知识图谱构建方法的步骤。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现上述生物领域知识图谱构建方法的步骤。

采用本发明实施例,通过采用词法分析工具获取扩展实体库,并对扩展实体库中的实体进行分类,通过基于PCNN的关系抽取对扩展实体库中的实体进行关系抽取获取三元组,最后通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对三元组中的实体进行融合,获取生物领域知识图谱,提高了传染病的溯源效率,以及获取传染病传染源的效率。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的生物领域知识图谱构建方法的流程图;

图2是本发明实施例的为本发明实施例的实体识别技术路线图;

图3是本发明实施例的实体类别抽取示意图;

图4是本发明实施例的多页面相似度计算过程示意图;

图5是本发明实施例的逻辑规则树学习示意图;

图6是本发明实施例的基于“预训练+微调”技术的生物关系分类示意图;

图7是本发明实施例的MASK方法改进示意图;

图8是本发明实施例的模型蒸馏示意图;

图9是本发明实施例的关系抽取流程图;

图10是本发明实施例的句法分析树;

图11是本发明实施例的自动学习文本特征框架示意图;

图12是本发明实施例的分段池化的PCNN模型示意图;

图13是本发明实施例的知识表示学习示意图;

图14是本发明实施例的双向监督训练与迭代融合技术路线示意图;

图15是本发明实施例的生物领域知识图谱构建装置的示意图。

具体实施方式

下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

方法实施例

根据本发明实施例,提供了一种生物领域知识图谱构建方法,图1是本发明实施例的生物领域知识图谱构建方法的流程图,如图1所示,根据本发明实施例的生物领域知识图谱构建方法具体包括:

步骤S101,使用词法分析工具对生物领域文本内容进行分词、词性标注以及实体识别获取初始实体集,通过所述初始实体集与预定的实体库进行对比获取扩展实体库,并对所述扩展实体库进行命名,对命名后的所述扩展实体库中的实体进行分类;

生物领域涉及的实体类型多样,数量众多,不断有新的实体涌现,并且实体构成结构比较复杂,某些类型的实体词的长度没有一定的限制。另外,在不同领域、场景下,实体的外延有差异,可能产生歧义。为此,本发明采用基于规则和知识的方法与基于统计的方法混合的方式进行实体识别,图2为本发明实施例的实体识别技术路线图。实体识别具体步骤如下:

实体类别抽取:由于生物的普通实体已经超越了命名实体的五大类七小类(这是公开研究的比较成熟的类别体系,但是我们是需要根据实际需要确定实体类别的),且所包含的数据量巨大,导致现有的实体类别并不能完全覆盖整个生物领域(关系是建立在实体的基础上的,所以如果实体识别的不准确,那么是会影响关系的抽取的),为此,我们需要获得更多的实体类别来提高对数据的覆盖度,如图3所示为本发明实施例的实体类别抽取示意图。

分词及词性标注:使用thulac工具进行分词,词性标注,实体识别(仅有人名,地名,机构名)之前已经提到,基于公开数据建立的thulac工具,只能识别这三个类别。为了识别生物领域特定的实体,我们需要:(1)分词、词性标注以及命名实体识别,(2)对于已经进行标注的词汇我们放入实体库,若实体库没有,标注出来,(3)对于一些非实体部分,采用一定的词组合和词性规则,在O(n)时间扫描所有分词,根据词性过滤掉不可能为生物实体的部分。(4)对于剩余词及词组合,匹配实体库中以分好类的实体。如果没有匹配到实体,或者匹配到的实体属于0类(非实体),则将其过滤掉。

实体分类:我们将爬取到的数据进行拆分,拆分成title、openTypeList、detail、image、baseInfoKeyList、baseInfoValueList六个部分,采用KNN算法为分类器,对四个小的相似度进行标准化处理,得到两个页面相似度,通过比较未打标签的词汇和实体库中词汇的相似度来选择一个标签(在前K个已经处理好的词汇中选择出现次数最多的做为标签)。也可以依据生物数据特征加以改进。传统KNN一个明显的缺点是,当样本分布密度不均匀时,只按照前K个近邻顺序而不考虑它们的距离会造成误判,影响分类的性能。通过对生物数据的实验,我们发现由于一些类别比另一些类别的训练样本更容易获得,往往会造成训练样本各类别之间目数不均衡,即是训练样本在各个类中的数目基本接近,由于其所占区域大小的不同,也会造成训练样本的分布不均匀。目前改进的方法有均匀化样本分布密度;对KNN的决策规则进行改进,解决当各类数据分布不均匀时KNN分类器分类性能下降的问题。或者利用大量近邻集来代替KNN中的单一集合,并通过累加近邻的数据集对不同类别的支持度,获得相对可信的支持值,从而改善了近邻判决规则。

其中,图4为本发明实施例的多页面相似度计算过程示意图,如图4所示,title使用词向量的余弦相似度(利用fasttext计算的词向量能够避免out of vocabulary),2组的openType之间的词向量的余弦相似度的平均值相同的baseInfoKey的IDF值之和(因为“中文名”这种属性贡献的应该比较小),相同的baseInfoKey下baseInfoValue相同的个数,预测一个页面时,由于KNN要将该页面和训练集中所有页面进行比较,因此每次预测的复杂度是O(n),n为训练集规模。在这个过程中,我们可以统计各个分类别相似度的IDF值,均值,方差,标准差,然后对4个相似度进行标准化:(x-均值)/方差()四个部分的相似度的加权和为最终的两个页面的相似度,权值由向量weight控制,通过10折叠交叉验证+网格搜索来得到。

步骤S102,根据预定规则和词典并基于深度学习的方法对所述扩展实体库中的分类后的实体进行实体关系分类,并通过基于PCNN的关系抽取对所述扩展实体库中的实体进行关系抽取获取三元组;

其中,对实体关系分类是一个多分类任务。目前预训练语言模型,如BERT在各种NLP任务刷新了最佳水平。然而,基线BERT在面对于生物数据时存在着对复杂关系敏感、无法理解实体语义和学习耗时耗硬件的问题。因此,本发明实施例采用基于规则的方法处理复杂关系,利用实体级MASK技术和轻量化改进BERT模型来适应生物关系分类任务。

基于规则和词典获取三元组:基于规则的方法多直接手工标记,选用特征包括统计信息、标点符号、关键字、指示词和方向词、位置词(如尾字)、中心词等方法,以模式和字符串相匹配为主要手段,这类系统大多依赖于知识库和词典的建立。在各种成熟的分词工具中,因LAC对数量词的支持度高,因此我们首先采用LAC工具,对原始文本进行分词和词性标注。词性中数量词、形容词我们直接当作关系,属性作为三元组的客体,主体则是我们选择的动植物的名称。这里关键的部分是设计规定正则模板,例如当匹配到词语中含有“色”字的时候,我们就怀疑其为表示颜色的词,当词语中含有米、千克等含有数量的词的时候,我们就怀疑其为表示身高体长的词。我们把这些所有的可疑词先都当作正确的关系,之后再清洗出正确的。传统规则化方法到此就结束了,但是我们接着发现:

深度规则树学习:鉴借神经网络其优势弥补传统规则的缺陷,首先以数理逻辑为基础,比如以“与”“或”为例定义一个逻辑规则树,即用类似神经网络结构表达逻辑规则,每一层包含两个子层,分别用于表示逻辑与和或。不同于神经网络,每个节点不再是激活单元,对应的值也非实数值,而是逻辑单元和0/1二值,这样构建得到的树状结构我们把它叫做规则树。

有了规则树以后,接下来的问题就是如何学习这棵规则树。图5为本发明实施例的逻辑规则树学习示意图,对规则树的学习关键在于学习每一层从输入到输出的关联的法则,即每条边的权重。这里采用多层感知器进行学习,如图5右侧所示,多层感知器采用全连接方式,比如

本发明实施例采用“预训练+微调”的方式进行自监督训练任务,BERT模型上加入领域数据继续训练好的表示模型,实现领域自适应(Domain Adaptation)和匹配领域业务场景,然后将这些学习好的表示模型用于其他任务,图6为本发明实施例的基于“预训练+微调”技术的生物关系分类示意图。

采用实体级的MASK技术,MASK类似于传统的完形填空任务,在输入端,随机地“遮蔽”掉部分单字,在输出端,让模型预测出这些被“遮蔽”的单字。模型最初并不知道要预测到哪些单字,因此它输出的每个单字的嵌入表示都是涵盖了上下文的语义信息,以便把掩盖的字准确预测出来。如图7左边所示,基线BERT“遮蔽”的单个字。为了学习到实体的整体语义表示,在随机“遮蔽”时,直接选择“遮蔽”实体对应的词,图7为本发明实施例的MASK方法改进示意图,如图7所示,实体级mask的关键在于找到准确的实体确定mask的语义范围,通常采用实体链接的方法链接到KG中的实体。然而,本项目中情境词汇、用户观点等许多是非规范化文本或自由文本构成的常识。为了方便常识实体提及与常识KG的链接,以及避免了昂贵的知识检索和精细调整与推理的集成,有助于对其他下游任务的概括。同时大大降低了对链接算法性能的依赖性。我们只在训练前将LMs暴露于结构化信息中。具体如下:(1)构建MASK候选对象列表。首先使用常识KG中的概念/短语,领域KG中的命名实体来形成实体“词汇表”,然后从语料库中检测出现在文本片段U中的所有实体提及e

为了快速训练,本项目拟采用4级轻量化方案——KG-mask过滤语料库、低精度量化、模型裁剪、模型蒸馏。平凡和不可约的实体可能很难对模型学习做出贡献,本项目拟利用KG-mask方法得到的实体重要性过滤语料库,使得模型得到了非常有效的训练。任务MASK在模型训练和推理中采用混合浮点精度(FP16甚至INT8、二值网络)表示取代原有精度(FP32)表示使用低精度。本项目涉及到的句子包含的语义信息有限,可以考虑在微调过程中采用低层Transformer结构,比如4层以内来大幅减少模型参数量和训练与微调时间。模型蒸馏是采用知识蒸馏将这些大的预训练模型(教师模型)压缩为小的学生模型来减少其存储和计算成本,并加快推理时间。图8为本发明实施例的模型蒸馏示意图,如图8所示。将始源域和从P抽样得到的目标域共同作用于产生器中的目标函数,生成预训练所需要的数据。将训练得到的数据,分别放入教师模型于学生模型中。学生的层数每次为教师模型的一半,用学生模型去学习教师模型的预测结果。预测的结果与实际的标签进行比对,比对结果经强化选择器选择后,用于监督学生模型学习教师模型,并修正目标函数。

图9为本发明实施例的关系抽取流程图,语句解析主要是通过生成语句的句法分析树,获得语句的句法信息和词法信息。图10为本发明实施例的句法分析树,如图10所示,分析树中的规则符号根据语法分析树标注集,nn表示常用名词,vc表示是,QP表示量词短语,PU表示标点符号,NP为名词短语。我们创建的是短语结构树,“竹子是一种热带植物”首先可以得到短语[香蕉]、[是一种热带水果],然后又可以得到短语[是][一种热带水果],这样层层递进,最终可以得到[香蕉][是][一][种][热带][水果]。

步骤S103,通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对所述三元组中的实体进行融合,获取生物领域知识图谱。

我们将已有的知识对应到丰富的非结构化预料中从而生成大量的训练数据。首先每类关系创建一个特征向量,即使用word2vec,直接提取句子的特征。若有10个句子包含该关系,每个句子能提取3个特征,那么该关系的特征向量中就包含30个特征。即使有些提取的特征并不能表达出该关系,但是特征向量中包含众多特征,也许大部分特征或者部分特征联合起来,还是能有效表达该关系的,这是远程监督有效性的保证。训练一个分类模型。

远程监督学习是关系抽取的重要方法,但是远程监督个重大缺点:标注错误问题。这种错误会传播到关系抽取模型中,错误的传播和积累降低模型性能。为了解决这种问题,我们使用CNN模型,然而,传统的词法特征大致包括实体本身词的词性,实体之前单词序列、词的上位词等特征,比较依赖人工特征工程。因此,我们从词法层面的特征和句法层面的特征进行改进,图11为本发明实施例的自动学习文本特征框架示意图,如图11所示,自动学习文本特征,通过将词转化成词向量,使用词向量来表示词法层面的特征。考虑上下文特征,使用一个滑动窗口,假设窗口大小为3,每次看3个单词,看完之后往后滑一格,最后得到一组句子层面的特征。

鉴借分段池化的优势,本发明实施例采用PCNN的分段池化思想对上述模型进行再次改进,图12为本发明实施例的分段池化的PCNN模型,如图12所示。将语句按照目标实体对的位置切分为3段,分别对每一段单独进行最大池化操作,每一段得到一个最大值,最后将所有最大值级联构成特征向量。

传统融合算法主要基于语言学相似度,高度依赖文本信息,忽略了实体之间的结构信息,算法时间复杂度高,缺乏扩展性。本发明实施例采用知识表示学习算法,图13为本发明实施例的知识表示学习示意图,主要研究思路包括:

1)自动挖掘实体特征:知识表示学习通过机器学习将实体的语义信息表示为稠密低维实值向量,挖掘实体之间的结构特征,无须手动设置匹配属性与相似度度量函数即可计算实体之间的相似性。

2)提高融合效率,适用于大规模数据集:当数据集较大时,可使用时间复杂度较低的表示学习模型,例如TransE,其损失函数计算只涉及到合法三元组和错误三元组的能量函数计算。

3)为了避免KG糅合,使用Seeds数据对待融合KG进行双向监督,并通过多次迭代融合操作不断扩充Seeds训练数据,利用新融合实体对进一步加强融合效果。

知识表示学习:首先采用已有的表示学习模型对RDF三元组进行训练,例如典型的嵌入表示模型TranE、PtransE等将实体和关系都映射到同一个低维向量空间。也可以针对生物数据特征另行设计表示学习方法。本发明实施例采用目前效果较好且容易训练的SimpLE模型,SimplE是在张量因子分解方法CP的基础上提出来的,它利用一个关系的逆来处理CP中两个向量的独立性,也就是说,对于一个实体e来说有he和te两个向量,对于关系r来说有v和v-1两个向量。对于SimplE:(1)每个实体表示成两个向量:头实体向量和尾实体向量(每个向量是独立的)(2)每个关系表示成两个关系:顺关系和逆关系向量。在学习过程中,必须要设置负样本,我们通过每次取出小批量的正样本后,随机对头向量或尾向量进行更改,从而生成对应的负样本。这样生成的意义也是为了学习的必要,因为学习过程中需要一个监督标志,所以我们生成对应的负样本,使得正样本的score比负样本高,以此为标准来生成对应的损失。

双向监督训练:利用预融合实体对(Seeds)对两个待融合知识图谱进行双向监督,并对各自的向量训练产生约束。在训练之前,需要对预融合实体对的向量进行初始化,即先将实体在各自的知识图谱中单独训练一次,然后取平均值。图14为本发明实施例的双向监督训练与迭代融合技术路线示意图,双向监督训练算法基本思路如图14左侧所示,Seeds集合中的预融合实体在训练过程中向量值保持不变,不进行梯度下降优化,只更新其他未融合实体的向量值。

迭代融合:每一轮融合操作后,对Seeds集合进行更新,将可信度较高的融合实体对插入Seeds并作为下一轮的训练数据,如图14右侧所示。通过知识表示学习和双向监督训练,待融合知识图谱中的实体和关系可以统一映射到一个向量空间,再根据实体向量之间的距离进行下一步融合操作,距离计算可使用L1、L 2范数等。对于KG1中的每一个未融合实体e1,在KG2中找到与之距离最近的实体e2。同时,定义一个阈值,如果距离小于阈值,则有理由相信e1和e2是两个接近的实体,反之,两者之间相似度较低。其中,(e1,e2)被称作新融合实体对。直觉上,新融合实体对可以进一步提升双向监督训练并找到更对的融合实体。因此,本发明实施例采用了一种迭代融合的方法,多次进行融合操作。迭代停止条件一般为达到最大迭代次数,或者不再找到新融合实体对。

该算法需要同时读入预融合数据(Seeds)和待融合知识库,算法执行之前要对数据进行预处理操作,也就将每一个关系和实体用一个唯一的整数数值代替。如果采用PtransE,数据预处理还包括了路径计算和路径置信度计算。预处理完成后,使用预融合数据对待融合知识图谱KG1、KG2进行双向监督训练,不断扩充的Seeds集合也就是最后的融合结果。融合算法的三个主要步骤并不是时序上的流程,而是相互组合的关系。

装置实施例一

根据本发明实施例,提供了一种生物领域知识图谱构建装置,图15是本发明实施例的生物领域知识图谱构建装置的示意图,如图15所示,根据本发明实施例的生物领域知识图谱构建装置具体包括:

实体识别及分类模块,使用词法分析工具对生物领域文本内容进行分词、词性标注以及实体识别获取初始实体集,通过初始实体集与预定的实体库进行对比获取扩展实体库,并对扩展实体库进行命名,对命名后的扩展实体库中的实体进行分类;

关系抽取模块,通过基于规则和词典的方法以及基于深度学习的方法对扩展实体库中的分类后的实体进行实体关系分类,并通过基于PCNN的关系抽取对扩展实体库中的实体进行关系抽取获取三元组;

知识图谱获取模块,通过基于双向监督与迭代融合的表示学习方法以及基于知识图谱的嵌入模型对所述三元组中的实体进行融合,获取生物领域知识图谱。

装置实施例二

本发明实施例提供一生物领域知识图谱构建装置,包括:存储器、处理器及存储在所述存储器上并可在所述处理上运行的计算机程序,所述计算机程序被所述处理器52执行时实现如方法实施例中所述的步骤。

装置实施例三

本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有信息传输的实现程序,所述程序被处理器执行时实现如方法实施例中所述的步骤。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号