APP下载

基于医疗知识图谱自动问答系统的构建研究

2023-05-08叶晓鹏

电脑知识与技术 2023年9期
关键词:知识图谱深度学习

叶晓鹏

关键词:深度学习;知识图谱;自动问答;医疗领域

0 引言

近年来,随着计算机技术和新一代信息技术的发展,基于人工智能的自动问答系统也被广泛应用到各个行业[1-14],但是随着海量数据爆发式的增长,现阶段的知识图谱也不能满足高效化、智能化、专业化应用的需求,需要更新的知识图谱构建方法和技术出现,以应对海量数据的变化,来满足和完成专业性比较强的领域的人工智能问答。

为此,国内外专家在知识图谱自动问答研究上开展不同的研究。Kumar A J[1](2017) 使用基于知识图的结构化数据构建语音识别和语言理解相结合的统一系统,有助于将语义丰富的数据模型用于语音接口;Lukovnikov[2](2017) 则训练了一个神经网络,以端到端的方式回答简单的问题,而所有决策都留给了模型;张胜[3](2017) 使用了字向量的表示形式,减少了不准确性对后续匹配模型的负面级联影响;余传明[4](2019)提出了一种新的知识图谱对齐模型。解决了领域知识融合过程中所带来的冗余和不一致问题;赵毓诚[5](2019) 针对目前航空不安全事件存在知识图谱读取困难的问题,设计实现了一个文献领域知识图谱辅助构建系统;张崇宇[6](2019) 提出了知识图谱构建与知识图谱自动问答系统的解决方案,并完成了医疗辅助问诊服务平台的设计与实现;张志昌等人[7](2020) 提出一种双向门控循环单元(GRU)和双重注意力机制结合的中文电子病历医疗实体关系识别方法,构建BiGRU-Dual Attention模型,获取更细粒度的特征;邵红[8](2020) 设计并实现了基于自由文本的问题生成模型,提高了指定答案自动生成自然语言形式的准确率;马满福等人[9](2020) ,针对中文分词的特点,利用电子住院记录利用Glove模型训练医学词向量;黄伟等人[10](2021) 使用户能够在线实时得到医疗问题的解答,从而提高用户体验;李学亮[11](2021) 针对机器对用户问题理解有偏差的问题,通过对用户问题进行意图识別的方法来解决;张明磊[12](2021) 通过对医疗开源数据的融合,以Web 端作为交互平台,实现了基于医疗疾病知识图谱的问答系统,帮助患者查询相关疾病信息;李百合[13](2022) 针对失智患者常伴随精神行为症状且家庭护理者缺乏专业知识,提出了一种解决家庭照护者在失智照护过程中遇到的棘手问题方法;程子佳等人[14](2022) 针对问答系统存在理解能力和查全率不足的问题,设计并实现了基于知识图谱的自动问答模型,优化提升了查询率。

为此,本文在前人研究的基础上,构建一个医疗领域知识图谱的自动问答系统,通过解析问句意图进行命名实体识别,测试实验结果表明本方法能够实现医疗领域自动问答。

1 相关理论及需求分析

研究成果表明早期的问答系统大多是基于专家系统设计和构建的,系统常见的是关系型的数据库,系统对于存在的问题,常见的处理方式是将问题转换为查询语句,通过到现有的数据库中自动查询答案,该方法不但耗时费力,而且可解决的自动问答问题类型和数量有限。而基于知识图谱的问答系统,通过引入知识图谱的概念,直接通过检索系统知识库比对完成问答任务。

1.1 语义解析知识库问答

语义解析得到了一个句子的逻辑表示,再根据逻辑表示到知识库里查询,也就是针对一个工作是进行类型审查,审查每个算符是否具有语言规范KB-QA的思路是通过对自然语言进行语义上的分析,转化成为一种能够让知识库看懂的语义表示,进而通过知识库中的知识,进行推理(Inference) 查询(Query) ,得出最终的答案。简而言之,语义解析要做的事情,是将自然语言的问题转化为一种能够让知识库“看懂”的语义表示,这种语义表示即逻辑形式(Logic Form) 。语法解析的过程可以看作是自底向上构造语法树的过程,树的根节点,就是该自然语言问题最终的逻辑形式表达。

1.2 基于深度学习的问答

构建传统的问答系统主要是将机器层次较低学习模型改进,用手工的方法构造基本特征,而对于不同领域的数据处理,不同形式问句都缺少灵活性,还需要有经验的人员进行数据标注和特征模型提取,工作量大且质量不高,无法适应多样性的问题。近年来,深度学习在许多领域的研究中已得到了不错的成效,表示出了其突出的知识学习能力。问答系统中必须处理的重要问题是:怎样完成用户的提出的问句与结果的语义表达与匹配的问题、针对问答系统要解决的关键问题。

2 知识图谱的自动问答

2.1 知识图谱问答方法

基于知识图谱的自动问答是利用自然语言处理技术,分析理解用户提问,进一步在系统知识库中检索查询,进行比对和整理,才将归纳的答案返还给用户。知识图谱问答的方法路线常见的有两种:基于语义解析的查询方法和基于向量建模的排序方法。基于语义解析的查询方法是对用户提出的自然语言问句解析,提取问句中的实体,判别用户意图,为了使机器能够理解和执行,将其转换为对应的语义表示,并使用该语义表示对应执行结构化的查询语句,从而在知识图谱中得到精准的答案。基于向量建模的排序方法是一种端到端的方法,它在知识图谱中依靠用户输入的自然语言问句进行子图定位,找到有关的待筛选候选答案后,利用排序模型或者分类模型对待筛选候选答案评价打分,取满足设定阈值的得分最高的答案作为结果返回给用户。

2.2 知识图谱构建流程

对于领域知识图谱模式层的构建,常常通过构建上下混合模式的方法来实现。该方法有两种构建模式:自顶向下和自底向上。这种方法主要是通过迭代和不断优化,进一步生成设计预期要求的医疗领域知识图谱。该设计方法有自顶向下的模式层设计、数据采集与信息抽取、自底向上的模式层优化和知识连接四个步骤,具体构建方法如图1所示。

(1) 自顶向下的模式层设计过程:主要是建立一个基础的领域知识图谱模式层,从而帮助下一步要进行的数据采集和信息抽取。

(2) 数据采集与信息抽取过程。主要是分为数据采集和信息抽取。利用相关技术对数据进行采集和整理,从而帮助下一步要进行的模式层优化的资源。

(3) 自底向上的模式层优化。主要通过构建辅助知识图谱模式层,进一步地优化和完善现有的模式层知识体系。

(4) 知识连接。首先将知识元素添加到对应的数据层中,再通过模式层的关系连接起来不同的实体,从而形成知识图谱的数据内容和应用的数据。

3 实验与结果分析

3.1 系统环境部署

问答系统常见的数据结构设计主要使用Python和PHP 两种语言。这两种语言的主要功能分别是进行自然语言处理和实现系统页面,他们的部分代码通常分别部署在阿里云服务器和新浪云服务器上。

3.2 功能需求分析

系统用户通过前端交互页面访问系统,对医疗领域相关问题进行提问,系统通过对用户输入的理解分析,在知识图谱中查询相关答案并将结果返还给用户。系统功能主要有5点:

(1) 可视化的交互界面。交互界面用户提供了文本输入入口,提示用户操作方式,用户通过文本输入框将问题传输给后端系统处理,在系统中检索答案并接收系统答案输出。

(2) 对用户输入的处理及时处理。系统后端需要对用户的输入进行接收并作相应处理,在前端页面展示给用户。

(3) 用户日志的存储。对于用户的搜索进行记录并保存,方便进行多轮对话的处理。

(4) 医疗数据的更新。定时爬取医疗疾病知识图谱的数据信息,与现有數据库对比,进行人工校验更新。

(5) 自动问答。对于接收到的问题输入,通过算法的分析提取出问句实体和问句意图,嵌入定义好的Cypher 查询语句中,进行检索并返还给用户。

3.3 测试结果与分析

本文提出了实体关系抽取模型,首先是将双向GRU加入到句子编码阶段中,再使用字级注意力机制提高字权重,接着采用句子级注意力机制,最后获取更多语句的特征,该方法主要通过增大正确标注的句子权重,提高系统自动问答的能力。具体数据如表1所示。

从图2可知,通过对自动问答的精确率P、数据的召回率R和系统的F1值测试,本文构建的方法优于其他传统的三种远程监督方法,本文的方法不需要人工构建特征,就能够准确学习到句子的语义信息。同时因为加入字级和句子级注意力机制,进一步有效缓解标签错误的问题。

同时,如果当用户在问句中没有找到自己需要对应的答案时或者属于一般的闲聊语句时,系统会接入闲聊模式进行答复,其测试效果如图3所示。

4 结束语

随着新一代信息技术的发展,医疗自动问答应用更加广泛,然而现有的问答系统的效果并不太理想,为此,本文提出一种构建医疗领域知识图谱方法,该方法主要通过解析问句意图进行命名实体识别,测试表明本方法优于其他三种远程监督方法。虽然基于深度学习的答案排序法略显优势,但是依然存在一定的不足,同时缺乏泛化性、可解释性,对时序性问题不能很好回答,所以进一步地提升知识图谱自动问答系统,需要我们更加深入的研究。

猜你喜欢

知识图谱深度学习
有体验的学习才是有意义的学习
MOOC与翻转课堂融合的深度学习场域建构
大数据技术在反恐怖主义中的应用展望
从《ET&S》与《电化教育研究》对比分析中管窥教育技术发展