首页> 中国专利> 一种基于知识图谱推理的医疗智能问答处理方法及系统

一种基于知识图谱推理的医疗智能问答处理方法及系统

摘要

本发明提供了一种基于知识图谱推理的医疗智能问答处理方法及系统。本发明通过解析用户的原始问题得到用户意图以及用户意图对应的语义特征并进行目标实体识别,根据得到的目标实体生成包含正确答案的路径,并对于每个候选答案路径进行排序,将生成的答案返回给用户,能够准确的理解用户的意图,更加准确的将结果反馈给用户,让用户更加准确快速的获得所需要的结果,提升用户的体验。

著录项

  • 公开/公告号CN112650840A

    专利类型发明专利

  • 公开/公告日2021-04-13

    原文格式PDF

  • 申请/专利权人 天津泰凡科技有限公司;

    申请/专利号CN202011410519.9

  • 申请日2020-12-04

  • 分类号G06F16/332(20190101);G06F16/31(20190101);G06F16/36(20190101);G06F40/216(20200101);G06F40/242(20200101);G06F40/289(20200101);G06F40/295(20200101);G06F40/30(20200101);G06K9/62(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构11833 北京化育知识产权代理有限公司;

  • 代理人涂琪顺

  • 地址 300000 天津市滨海新区经济技术开发区第二大街泰达MSD-G1座11层1102-108

  • 入库时间 2023-06-19 10:35:20

说明书

技术领域

本发明属于知识图谱自然语言处理领域,尤其是涉及一种基于知识图谱推理的医疗智能问答处理系统及系统。

背景技术

现有的医疗管理系统,均是面向于搜索来实现医疗信息检索的,其原理是通过搜索的方式来实现字符的比对,以此满足用户的需求。因此现有的产品的搜索功能不是很精准,难以处理较为复杂的数据,以至于最后提供给用户的信息可能达不到用户的要求,出现“答非所问”的情况;再者此类产品仍然不能做到对用户的智能问答。所以目前还没有产品可以将智能搜索、智能推荐、智能问答结合到一起形成一个较为完善的系统。

发明内容

有鉴于此,本发明旨在提出一种基于知识图谱的医疗智能问答系统,具有方便、精准的优点。

为达到上述目的,本发明的技术方案是这样实现的:

一种基于知识图谱推理的医疗智能问答处理方法,包括如下步骤:

步骤1:获取用户的原始问题;

步骤2:将用户的原始问题解析成用户意图以及用户意图对应的语义特征;

步骤3:对用户的原始问题中的多种语义特征进行目标实体识别得到目标实体;

步骤4:根据得到的目标实体生成包含正确答案的路径;

步骤5:对于每个候选答案路径进行排序,将生成的答案返回给用户。

进一步的,所述步骤2中,解析用户意图包括判断输入的问题的领域,所述领域包括医疗领域和通用领域,通过将预训练模型ALBert与Bi-GRU模型结合,再将其结果输入到Attention结构中,最后将特征重标定以后的向量输入到全连接层进行分类。

进一步的,所述步骤2中,解析用户意图还包括平衡样本数据的步骤,通过使用SeqGAN文本生成模型对医疗问句进行续写增加医疗问句的数量,将医疗问句的句内次序打乱生成更多的医疗问句数据,以及引入Focal Loss损失函数。

进一步的,所述步骤2中,解析用户意图对应的语义特征中,通过单多跳分类模型得到单多跳语义特征,然后通过主谓宾分类模型得到主谓宾语义特征,最后通过链式分类模型得到链式特征。

进一步的,所述步骤3中目标实体识别包括实体提及识别、属性提及识别、以及实体链接;

所述实体提及识别包括通过词典分词进行实体的识别,通过实体命名识别模型去召回实体提及,以及通过启发式的方案去识别实体提及;

所述属性提及识别中针对不同类型的属性值,采用不同的方式进行识别,包括书籍名称、数字,时间属性以及模糊属性匹配;

所述实体链接中包括对候选实体挖掘多组特征,基于多组特征使用排序模型找到问题中的焦点实体。

进一步的,所述步骤4中,首先根据单多跳分类模型、链式分类模型、主谓宾分类模型结果,确定召回实体的n度关系:

单跳:召回所有实体的一度关系;

多跳:召回所有实体的二度关系;

然后根据问句经过链式分类模型和主谓宾分类模型输出的结果,召回不同模板的候选查询路径。

进一步的,所述步骤5中采用learn-to-rank排序模型对路径进行排序,对于每个候选答案路径,抽取n个特征进行得分计算,得到最后的查询路径。

本发明还提供一种计算设备,包括:存储器以及处理器;

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行所述的基于知识图谱推理的医疗智能问答处理方法。

本发明还提供一种基于知识图谱推理的医疗智能问答系统,包括

前端模块,用于接收用户的问句输入,并将数据传输至后端服务器,同时,接受后端服务器的响应的数据,进行数据展示;

后端模块,用于对前端模块传输的数据进行处理,所述后端模块包括在后端服务器运行下的问句分类模块、问句处理模块、以及基于知识图谱的查询模块;

所述问句分类模块用于对输入问句划分领域以及得到问句的多种语义特征;

所述问句处理模块用于对输入问句中的问题进行实体识别;

所述基于知识图谱的查询模块用于生成包含正确答案的路径并返回用于最终的结果。

进一步的,所述后端服务器还包括构建多个词典,所述词典用于分词、词频的计算、实体提及的抽取,包括

医疗实体链接词典:医疗实体链接词典为文本中的实体提及到医学知识库中的实体的映射;

分词词典:按照实体链接词典中的实体提及将医学知识库中的实体进行分割,只保留实体的主干部分;

词频词典:用于计算实体提及以及属性值提及的词频特征,使用搜狗开源的中文词频词典工具构建;

倒排索引词典:用于识别属性值的模糊匹配,使用医学知识库中的所有属性值,构建字到词的映射;

中英文映射词典:用于提取问句中的英文简称并将其链接到其对应的汉语实体;

专业名称编码词典:提取问句中的专业名称编码并将其链接到对应的汉语实体。

相对于现有技术,本发明所述的一种基于知识图谱的医疗智能问答处理方法及系统具有以下优势:

本发明通过解析用户的原始问题得到用户意图以及用户意图对应的语义特征并进行目标实体识别,根据得到的目标实体生成包含正确答案的路径,并对于每个候选答案路径进行排序,将生成的答案返回给用户,能够准确的理解用户的意图,更加准确的将结果反馈给用户,让用户更加准确快速的获得所需要的结果,提升用户的体验。

附图说明

构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明的基于知识图谱的医疗智能问答处理方法架构流程图;

图2是本发明的基于知识图谱的医疗智能问答系统的框图;

图3是本发明的面向通用领域实体命名识别模型结构示意图;

图4是本发明的面向医学领域实体命名识别模型结构示意图;

图5是本发明的生成候选路径的模板、路径样例以及相应的问题示意图;

图6是本发明的实施例示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。

下面将参考附图并结合实施例来详细说明本发明。

如图1-2所示,本发明提供一种基于知识图谱的医疗智能问答处理方法及系统,具有方便、精准的优点,为了达到上述目的,本发明通过以下技术方案实现:

前端部分用于接收用户的问句输入,将数据传输至后端服务器;接受后端服务器的响应的数据,进行数据展示;

后端部分,与所述前端部分连接,包括用于在后端服务器运行下的问句处理模块、问句分类模块、基于知识图谱的查询模块。

在一个实施例中,医疗知识图谱推理系统主要包含以下模块:

构建辅助词典模块

由于本发明需要用到多个词典用于分词、词频的计算、实体提及的抽取等功能,这些词典均来自于医学知识库、通用知识库或者外部资源,构建方法如下:

(1)医疗实体链接词典:医疗实体链接词典为文本中的实体提及到医学知识库中的实体的映射。

(2)分词词典:分词词典是按照实体链接词典中的实体提及将医学知识库中的实体进行分割,只保留实体的主干部分,如:<百日咳_急性呼吸道传染病>这个实体,仅保留下划线之前的部分“百日咳”。

(3)词频词典:词频词典主要用于计算实体提及以及属性值提及的词频特征,使用的是搜狗开源的中文词频词典工具构建。

(4)倒排索引词典:倒排索引词典用于识别属性值的模糊匹配,使用医学知识库中的所有属性值,构建字到词的映射。

(5)中英文映射词典:中英文映射词典主要用于提取问句中的英文简称并将其链接到其对应的汉语实体。

(6)专业名称编码词典:专业名称编码词典的作用是提取问句中的专业名称编码并将其链接到对应的汉语实体。

意图识别模块

意图识别模块用于判断输入问句是属于哪一领域的问题,从而使用专有领域的相关模型去解决该领域的问题。本发明中共有两个领域:1、医疗领域;2、通用领域。

我们将预训练模型ALBert与Bi-GRU模型结合,再将其结果输入到Attention结构中,最后将特征重标定以后的向量输入到全连接层进行分类。

传统的词嵌入模型都有一个共性的问题,那就是无法生成基于上下文的词向量,对于解决词语的歧义性效果很差,如“苹果”一词,其含义可以是水果、公司、电影,但是在word2vec模型中该词永远使用一个固定向量来表示,无论前后文是什么。因此本发明使用了ALBert模型作为词嵌入模型,该模型可以根据不同的上下文而给予相同的词不同的向量表示,ALBert是Bert模型的改进版,由于Bert模型参数量巨大,训练起来耗时且耗费资源,ALBert在Bert的基础之上增加了因式分解与参数共享机制,大大减少了Bert模型的参数量,大大优化了模型训练的速度与资源使用。在单向的神经网络中,状态总是从前往后输出的,然而,在意图识别分类模块中,如果当前时刻的输出与前一时刻的状态和后一时刻的状态都产生联系,这样更有利于文本深层次特征的提取,所以本发明使用Bi-GRU网络来获取每个字符左侧和右侧的前后语义关系。Attention结构的目的是弱化文本中对分类结果影响较小的部分,强化影响分类结果较大的部分。

由于收集到的通用领域问句与医疗领域问句的数量大概是3:1,导致样本数据存在不平衡,本发明通过多种手段去解决由于样本不平衡而带来的模型精度过低的问题:

1、SeqGAN文本生成模型:普通的GAN由于无法解决离散数据梯度无法回传给Generator的问题,本发明使用了SeqGAN文本生成模型对医疗问句进行续写,这样能够将医疗问句的数量扩增了一倍,达到了2000条。

2、句内次序打乱:本发明通过将医疗问句的句内次序打乱来生成更多的医疗问句数据。

3、Focal Loss损失函数:本发明引入了Focal Loss损失函数。该函数在交叉熵损失的基础上加入了alpha与gamma因子,alpha值用于平衡正负样本本身的比例不均,只添加alpha虽然可以平衡正负样本的重要性,但是无法解决简单与困难样本的问题。所以,加入了gamma因子,gamma调节简单样本权重降低的速率,当gamma为0时即为交叉熵损失函数,当gamma增加时,调整因子的影响也在增加。这样既做到了解决正负样本不平衡,也可以解决easy与hard样本不平衡的问题。

通过以上三种策略,本发明将模型准确率从开始的65%提升到了97%,使得其具有分类医疗领域和通用领域问题的能力。

问句解析模块

问句解析模块通过一系列的分类模型,得到问句的多种语义特征,首先通过单多跳分类模型得到单多跳语义特征,然后通过主谓宾分类模型得到主谓宾语义特征,最后通过链式分类模型得到链式特征。这里的特征指的是分类结果,为了得到深度的语义上下文特征以助于更好的分类效果,本发明使用问句数据对ALBert模型进行了微调,并将ALBert模型输出的词向量输入到全连接层中进行分类。

实体提及和属性值提及识别模块

实体提及识别:本发明提出了三种实体提及识别的算法,该模块的目标是召回候选实体列表,因为候选实体列表的质量会直接关系到实体链接的效果,甚至会导致真实的实体被遗漏,因此实体提及识别的指标既要保证精度,也要尽可能的提高召回率:

策略1:通过词典分词进行实体的识别,首先使用分词词典对自然语言问题进行分词,在医疗分词词典中的词语都加入候选实体提及中,为了提高召回的精度,我们提出了多种剪枝的策略,如:

去除特殊词性的实体提及:一些特殊词性的词一定不会是实体,如介词、动词等,所以我们将特殊词性的词去除。

去除部分标点符号提及:标点符号不算作实体,需要去除。

实体提及不能被别的实体提及完全包含:此处优先匹配最长实体,可减少歧义性。

策略2:通过实体命名识别模型去召回实体提及。本模块针对通用领域与医疗领域分别构建了不同的模型去提取不同的实体:

1、面向通用领域实体命名识别模型:本模型采用Albert+BILSTM+CRF的模型去召回问句中的人名、机构名称、地点名称、地址信息、电影名、游戏名称、公司名称等特定实体。这里之所以选择Albert模型是因为其可以提取基于上下文的深度特征,进一步提升实体的召回率,该模型结构如图3所示。

2、面向医学领域实体命名识别模型:本模型采用Albert+BILSTM+CRF的模型去召回问句中的疾病名称、症状名称、医学操作名称等医学领域特定实体。进一步提升实体的召回率。该模型结构如图4所示。

策略3:通过启发式的方案去识别实体提及,方法1的策略在召回最长实体提及的同时会导致正确的实体提及被删除,例如问题:“西湖景区的湖中二塔是指?”,策略一同时匹配到“西湖”和“西湖景区”两个实体提及,但“西湖景区”长度更长,因此正确的实体提及“西湖”被删除。针对这个问题,我们召回短的实体提及对应的所有实体,再召回这些实体的一度关系,例如实体提及“西湖”,系统召回其中一个三元组为:(<西湖_(浙江省杭州市西湖)>,<湖中二塔>,“保俶塔”)。当一度的关系名称与问题完成匹配时,我们保留该实体提及。

属性值提及识别:由于用户提出的问句中包含的属性值的规范性较低且可能是很长的字序列,且有很大的可能无法直接与医学知识库中存在的属性值实体对齐,所以本发明针对不同类型的属性值,采用不同的方式进行识别:

书籍名称、数字:构建正则表达式,判断匹配结构是否在医疗知识库的属性值中,在则加入候选属性值提及。

时间属性:构建正则表达式,将问句中存在的时间表述还原为医疗领域知识库中的规范表达,如“2005年11月”还原为“2005.11”,并将其加入候选属性值提及。

模糊属性匹配:通过倒排索引字典得到问题中每个字对应的所有属性值,统计每个属性值出现的次数,选择top3的属性加入属性值提及。

除了以上三种策略以外,针对医疗领域问题,本发明还增加了针对不同属性的处理策略:

英文属性:通过中英文映射词典,将问句中的英文属性提及转化为中文属性提及,将其直接加入最终的实体集合。(若词典中没有该词条,则跳过)

专业名称编码属性:通过专业名称编码词典,将问句中的编码属性提及转化为中文属性提及,将其直接加入最终的实体集合。

实体链接及筛选模块

通过实体提及和属性值提及识别模块获得候选实体提及集合以后,针对每个候选实体提及,然后使用实体链接词典,将其对应的所有实体都加入到候选实体中。

对于候选属性值提及中的每个属性,由于抽取时已经与医疗知识库对齐,将其直接加入候选实体中。由于得到的候选实体数量过多,多余的候选实体会引入干扰同时也会增加后续的时间计算成本,本发明通过对候选实体挖掘多组特征,包含语义特征、字面特征等,然后基于这些特征我们使用排序模型来找到问题中的焦点实体。这些特征包括:

(1)实体与问题匹配特征:候选实体的信号与问题越是匹配,该实体越可能是焦点实体。本发明综合考虑了三类匹配度:实体名称与问题的匹配度、实体二度子图与问题的匹配度、实体类型与问题的匹配度。匹配度采用多种方式计算:集合距离,编辑距离、word2vec语义相似度等。这三种相似度计算方式能够在字、词、语义三种维度计算实体与问句的匹配度,所以选择这三种语义相似度计算方式。

(2)流行度特征:本发明定义了两种流行度:实体在图谱中出现的频率;实体不同的一度关系的个数;实体在通用领域出现的频率,之所以选择这两种流行度是因为实体的出现的频次越高或者不同的关系边越丰富,说明该实体越重要。

(3)指称重要度特征:指称越重要,说明对应的候选实体越重要。我们挖掘指称多种特征来表示重要度,例如指称是否被引号或书名号包含、指称是否在开头或结尾、指称跟疑问词的距离、指称是否包含数字或字母等。

(4)其他特征:本发明还挖掘了问题本身特征:问题字个数、问题词个数;实体本身的特征:实体全名是否在问题出现、实体的长度、该实体对应的实体提及距离句首的距离等。这些特征均可以在一定程度上包含实体与问句之间的关系。

(5)医疗领域特征:该特征标记候选实体是否是由医疗映射词典得到。因为医疗实体一般不会出现在问句中,如果出现了那么该实体则有很大概率为中心实体。

本发明通过领域特征与传统的特征相结合的方式,可以提高实体的抽取率,能够最大程度的提取出问句中存在的实体。

本发明选择的路径排序算法为LambdaMart算法,为了提升召回的准确率,本发明选择得分最高的Top2实体作为链接结果。

候选查询路径生成模块

上一步我们完成了问题中的实体识别,接下来要基于识别出的实体召回具体的子图,然后生成包含正确答案的路径.

首先根据单多跳分类模型、链式分类模型、主谓宾分类模型结果,确定召回实体的n度关系:

1、单跳:召回所有实体的一度关系。

2、多跳:召回所有实体的二度关系。

由于召回子图过多,会容易降低排序模型的效果,本发明还提出了多种剪枝策略。

剪枝策略1:根据实体的流行度剪枝,当实体的流行度超过一定阈值时,则根据语义相似度策略去删除该节点的关联边,例如‘<中华人民共和国>’的一度关系数量为707879,如果保留所有的边,则会大大降低排序模型的效果。

语义相似度策略:基于Bert模型训练一个语义相似度计算模型,查找该实体关系中与问句语义最为相近的关系。该模型的输入为(问句,关系名称),本发明保留Top 30条关系子图。在这里本发明针对通用领域与医疗领域分别训练了语义相似度计算模型。

剪枝策略2:根据边的方向剪枝。统计发现,某些路径方向不太符合人类的询问习惯,可删除这些路径,例如:二度关系路径,方向为(入向,入向)。

剪枝策略3:

模板查询语句生成:本发明针对节点不同的语义结构,构建了多种模板来定义查询答案的路径,分别为:

一度单跳关系模板、二度多跳链式关系模板、二度多跳桥接实体模板,谓语关系模板,具体如图5所示。

在图5中,a表示的是答案,m表示的是中间的节点。

模板1:匹配实体的一度关系,模板1匹配的路径都加入答案路径的候选集中。

模板2:匹配实体的二度关系,由于召回的路径数据非常巨大,因此我们提出了启发式的策略进行剪枝,例如关系R2的名称未在问题中出现,则该路径被丢弃。

模板3:桥接实体查询模板,即桥接两个实体且关系为一度的模板。

模板4:匹配实体的一度关系,模板1匹配的路径都加入答案路径的候选集中。

根据问句经过链式分类模型和主谓宾分类模型输出的结果,召回不同模板的候选查询路径:

单跳非链式:模板1

多跳非链式:模板3

多跳&链式:模板2

单跳&谓语:模板4

路径排序模块

本发明采用learn-to-rank排序模型对路径进行排序,对于每个候选答案路径,本发明抽取了n个特征,主要包括:路径与问题的匹配特征、实体与问题的匹配特征、Bert语义匹配特征、答案类型匹配特征等。

路径与问题的字面匹配特征:本发明先把问题与候选答案路径表示成字符串,计算两个文本的字面相似度包含:Jaccard距离、编辑距离。为了提高匹配精度,我们保留了字级别的距离与词级别的距离。

路径与问题的语义匹配特征:首先本发明使用了fasttext词向量词袋匹配特征,为了提高路径与问题的语义匹配能力,本发明采用Bert抽取路径与问题的向量,并采用cosine函数去计算两向量的相似度。本发明基于Bert预训练模型训练了一个文本分类模型,该模型可以对问题和路径进行相似度打分。

答案类型匹配特征:正确的答案的类型往往与问题的意图是一致的,例如问题“《湖上草》是谁的诗?”.该问题的意图为查询人物;“<柳如是>”实体的类型是人物,那么该实体可能是正确的答案。本发明使用规则的方法构造了问题的意图分类器,包含五种意图:人物、地点、时间、数量、症状和其他。本发明使用知识库中实体的类型作为答案的类型。

候选路径得分特征:

1、在路径匹配模板中,因为模板1匹配到的路径相比于模板2和模板3来说更可能是正确的路径,所以给予模板1一个高分,模板2与模板3一个低分。

2、从路径的方向特征来说,出向的类型比入向的类型正确的概率更大,所以本发明给予出向的类型一个高分,入向的类型一个低分。

最后将两种特征得分相加即最后的候选路径得分。通过这样一种得分策略,使得本算法能够更精确的定位到查询路径。

在一个实施例中,由于特征工程得出的特征向量中不仅包含浅层特征(例如字面匹配特征、答案类型匹配特征),还包含深层特征(例如语义匹配特征、候选路径得分特征),为了能够使得两种不同维度的特征都发挥其最大的作用,本发明使用了Wide&Deep算法作为排序模型,该模型是一种融合浅层(wide)模型与深层(deep)模型进行联合训练的框架,它可以综合利用浅层模型的记忆能力和深层模型的泛化能力,实现单模型对于排序系统的准确性与扩展性,本发明使用该模型对候选集中每一个答案对应的特征向量进行打分,最后取TOP1的答案作为该问题的正确答案。

基于上述内容,本发明的一种基于知识图谱推理的医疗智能问答处理方法的具体步骤如下:

步骤1:获取用户的原始问题;

步骤2:将用户的原始问题解析成用户意图以及用户意图对应的语义特征;

步骤3:对用户的原始问题中的多种语义特征进行目标实体识别得到目标实体;

步骤4:根据得到的目标实体生成包含正确答案的路径;

步骤5:对于每个候选答案路径进行排序,将生成的答案返回给用户。

下面通过一个具体实例来说明本发明的具体方法,如图6所示,

1、输入问句

百日咳涉及什么检查科目?

2、问句向量化

使用微调过的Bert预训练模型对问句进行向量化,会输出一个1×128维的向量。

百日咳涉及什么检查科目?—>[0.3,1.2,3.5,……,0.5,0.9,1.3]

3、意图识别

将向量化的问句输入意图识别模型,得到问句的意图分类:1。(0代表通用领域问句、1代表医疗领域问句),因为意图识别结果为1,所以进入医疗领域问句处理模块。

4、问句解析

将向量化的问句输入单多跳语义模型、主谓宾语义模型、链式语义模型,将三种模型输出的结果为[0,2,0]。该特征会作为后续句式分析的输入。

5、实体提及和属性值提及抽取

(1)词典抽取

百日咳涉及什么检查科目?—>[百日咳、科目]

(2)NER模型抽取

百日咳涉及什么检查科目?—>[百日咳]

(3)属性值抽取

百日咳涉及什么检查科目?—>[什么、检查科目、百日咳]

则最终得到的实体候选提及列表为:[百日咳、科目、什么、检查科目]

6、实体链接

计算实体提及列表中每个实体提及的相关特征,最终得到的各实体提及相关特征如下所示:(向量矩阵每一列依次代表的是实体名称与问题的匹配度、实体二度子图与问题的匹配度、实体类型与问题的匹配度、实体在图谱中出现的频率、实体在通用领域出现的频率、指称是否被引号或书名号包含、指称是否在开头或结尾、指称跟疑问词的距离、指称是否包含数字或字母、问题字个数、问题词个数、实体全名是否在问题出现、实体的长度、该实体对应的实体提及距离句首的距离、医疗领域特征)

“百日咳”对应的特征矩阵为:

[0.214,0.8,1,101,1111,0,1,2,0,11,5,1,3,0,1]

“科目”对应的特征矩阵为:

[0.153,0.6,0,98,787,0,0,2,0,11,5,1,2,9,0]

“什么”对应的特征矩阵为:

[0.153,0.66,0,319,,8090,0,0,0,0,11,5,1,2,5,0]

“检查科目”对应的特征矩阵为:

[0.26,0.45,0,23,60,0,1,0,0,11,5,1,4,7,0]

将以上各个实体提及得到的特征矩阵输入到LambdaMart模型,进行排序,最后排序结果为

1、“百日咳”

2、“检查科目”

3、“科目”

4、“什么”

取top2实体作为链接结果,即:“百日咳”、“检查科目”。

7、候选查询路径生成

(1)由问句解析模块结果[0,2,0],我们可得该问句为单跳非链式,所以选择路径查询模板1,由于是单跳模板,仅需召回top2实体的一度关系。召回的关系目录如下:"<涉及症状>"、"<常见症状>"、"<涉及检查>"、"<并发症>"、"<标签>"、"<医学专科>"、……、"<发病机制>",共召回45种关系路径。

(2)将每种关系路径与问句一同输入到语义相似度计算模型,计算关系路径与问句的语义相似度,例如:

“百日咳涉及什么检查科目?,百日咳的涉及症状”得分为0.87

“百日咳涉及什么检查科目?,百日咳的常见症状”得分为0.78

“百日咳涉及什么检查科目?,百日咳的涉及检查”得分为0.97

“百日咳涉及什么检查科目?,百日咳的医学专科”得分为0.43

“百日咳涉及什么检查科目?,百日咳的发病机制”得分为0.32

……

我们根据语义相似度得分进行排序,保留top30的查询路径。

8、路径排序

计算各个路径的多个特征,然后输入到排序模型对路径进行最终排序,得到top1路径。

最终得到的top1路径是百日咳的涉及检查,将关键字段填充到路径查询语句模板,得到:

match(n:Entity)-[r:Relation]-(c:Entity)where n.name='<百日咳>'andr.name='<涉及检查>'return c.name

9、获取答案

使用生成的Cypher查询语句对neo4j数据库进行查询,得到该问句的答案。

本发明还提供一种计算设备,包括:存储器以及处理器;

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行所述的基于知识图谱推理的医疗智能问答处理方法。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号