融合知识图谱和语义匹配的医疗问答系统

2024-09-20 00:00:00徐若卿
现代电子技术 2024年8期
关键词:双曲度量图谱

摘" 要: 问答系统是自然语言处理领域中的一项重要任务,常应用于医疗服务。传统的问答系统通过知识图谱的实体关系匹配返回相应的尾实体作为答案,然而,倘若实体或关系无法识别,又或者在知识图谱中并不存在相应的实体关系,问答将无法继续进行。为了解决这一问题,建立一种融合知识图谱和语义匹配模型的中文医疗问答混合系统。当所提问题无法在知识图谱中进行实体关系匹配时,该模型能继续从问答对数据集中找到最相似的问题,并返回相应结果作为答案。在语义匹配模型方面,结合中文医疗相似问题对,在Sentence⁃BERT模型上进行微调训练,并引入双曲空间中的距离度量函数对句子对进行相似度度量。结果表明:在整体性能方面,所提模型相较于BERT这类大语言模型精度能提升7.16%;在度量能力方面,双曲度量相较于通用欧氏空间度量,如余弦度量,最高能有2.28%的精度提升和1.58%的F1值提升。

关键词: 医疗问答系统; 知识图谱; 语义匹配; 问答对数据集; 相似问题对; 双曲距离度量

中图分类号: TN919.5⁃34" " " " " " " " " " " " " 文献标识码: A" " " " " " " " " " " "文章编号: 1004⁃373X(2024)08⁃0049⁃06

Medical question answering system integrating knowledge graph and semantic matching

XU Ruoqing

(College of Computer and Information, China Three Gorges University, Yichang 443000, China)

Abstract: Question answering system is an important task in the field of natural language processing, which is often used in medical service. The traditional question answering system can return the corresponding tail entity as the answer by means of the entity and relationship matching of the knowledge graph. However, if the entity or relationship is not recognized or there is no corresponding entity relationship in the knowledge graph, the question answering can not be continued. In order to solve this problem, a hybrid framework of Chinese medical question answering is proposed, which combines knowledge graph and semantic matching model. When the questions raised cannot be matched by the entity relationship in knowledge graph, the model can continue to find the most similar questions from the question answering on datasets and return corresponding results as answers. In terms of semantic matching models, combining Chinese medical similarity problems, fine⁃tuning training is conducted on the Sentence BERT model, and distance measurement functions in hyperbolic space are introduced to measure the sentence similarity. The results show that in terms of overall performance, the proposed model can improve accuracy by 7.16% compared to large language models like BERT. In terms of measurement ability, in combintion with the general Euclidean space metrics such as cosine metrics, hyperbolic metrics can achieve a maximum accuracy improvement of 2.28% and an F1 value improvement of 1.58%.

Keywords: question answering system; knowledge graph; semantic matching; question answering on dataset; similar problem pairs; hyperbolic distance metric

0" 引" 言

人工智能在提升医疗服务质量方面起着至关重要的作用,问答系统是其中较受欢迎的技术之一,它能够帮助用户实时获取问题的解答[1]。问答系统由一个与患者和医疗从业者交互的界面组成,其能将问题进行语义化分类,从而准确直观地提供一系列实时的问答反馈[2]。近年来,问答系统技术发展迅速,尤其是在医疗领域,各类问答系统方案被提出,典型应用包括帮助患者回答问题的医疗助理、引导患者前往合适服务部门的医疗服务前台等。

基于传统知识图谱问答的主要方式是先对问题进行实体关系抽取,再从知识图数据库中进行对应尾部实体的检索,以此返回相应答案。然而,该方式在实际的应用中依旧存在着一定局限,倘若实体关系未被成功抽取,或实体关系不在相应的图数据库中,那么系统将无法回答用户所提问题。

为了解决上述问题,本文对新的问答系统框架进行了探索,当接收到用户的问题,该模型会首先对问题进行实体关系抽取,在图数据库中进行尾实体检索以获取答案。如果无法识别出相应实体和关系,系统会继续尝试第二条路径,其方式是通过一个已训练好的语义相似度匹配模型,将用户所提问题与大型问答对中的问题进行相似度匹配,从而将与用户问题相关的回复返回给用户[3]。传统的语义匹配模块使用结构相对简易的记忆网络模型,诸如MaLSTM[4],但其在中文数据集上训练的效果较差;而传统的BERT模型[5]虽然能显著提高训练效果,但准确率依旧不理想。本文针对具体任务,在Sentence⁃BERT模型[6]进行微调训练,并采用新的双曲度量[7]方式,使该任务性能得到优化,从而优化整个问答系统。

1" 相关工作

1.1" 问答系统

Cui等人设计了一套基于知识库的问答系统[8],他提出自然语言问题可以被理解,并设计了一种新的问句表示方法,能使问题精确地映射到基于知识库的结构化查询中,然而该系统性能往往取决于模板的好坏。Huang等人提出了基于知识图嵌入的问答系统[9],核心思想是:将每个谓词、实体表示为一个低维向量,在KG嵌入空间中联合恢复问题的核心实体、谓词嵌入表示,通过联合距离度量,计算所得向量在KG中最接近的事实并将其作为答案返回。然而该方法计算量较为庞大,准确性也较低。

1.2" 语义相似度判别模型

文献[3]提出了一种基于ConvNet的卷积网络变体,通过整合不同尺度下多个卷积之间的差异来推断句子相似度,然而标记数据存在局限,限制了模型的性能。

Kiros等人通过在初始语料上训练一个RNN编码器来获得句子向量,对于每个训练样本中出现的句子对,使用skip向量之间的差异和乘积的特征在数据集上训练一个单独的分类器进行语义判别,但是其中的语义属性表现为间接表征,而非直接表征。

J. Mueller等人利用长短期记忆(Long Short⁃Term Memory, LSTM)网络来计算两个句子间的语义相似度[10],但LSTM无法从句中检测出关键词。

Bao等人提出分层BiLSTM⁃Attention模型来计算句子中的单词权重,并将词向量权重和作为句子表征,从而计算句子语义间的相似度,然而其难以捕获细粒度特征[3]。

文献[5]中提出了革命性语言模型BERT,其采用Transformer的双向编码器表示,通过对所有层的左右、上下文进行联合条件化预训练深度双向表征,在文本处理任务中表现优异。但由于其网络的复杂性,在受到误差干扰时性能容易下降。

2" 系统架构

传统的知识图谱问答系统存在实体关系无法正确抽取或实体关系在知识图谱中无法匹配这两类问题,因而无法有效反馈问题答案。鉴于此,本文构建了一种基于混合策略方式实现的医疗问答系统,如图1所示。

本文问答系统主要通过两个路径来解决用户提问的反馈。首先,在第一条路径对用户所提问题进行自然语言理解,利用一个医疗领域的知识库快速检索查询相关医疗问题并返回答案;其次,在知识库无法查询答案时系统会转入第二条路径,即通过语义匹配的方式,在一个医疗领域问答对数据库中寻找最相似问题,并返回其对应答案。

2.1" 知识图谱模块

知识图谱能应对海量的数据变化,以满足和完成专业性比较强的领域的人工智能问答。本文使用的医疗知识图谱用Neo4j进行存储,其将结构化数据存储在网络空间中,能以更自然的连接状态存储和管理相应数据,且能提供高效的数据查询与修改。

本文参考了liuhuanyong的开源中文医疗知识图谱,其包含7类实体、10类关系和8类属性,一共有约4.4万量级的实体和30万量级的关系。

系统的知识图匹配可以分为4个步骤:

1) 用户输入问题;

2) 对问题进行意图识别,意图识别模块使用Aho⁃Corasick算法提取疾病关键词;

3) 在知识图数据库匹配答案;

4) 按照模板返回答案。

2.2" SBERT微调模型

本文使用中文医疗问答重复句子对作为原始数据来训练语义匹配模型,训练好的模型具备良好的中文医疗相关语句的向量化表示能力,当知识图谱模块无法识别出问题中的实体与关系时,问答系统将切换路径,通过训练好的语义相似度判断模型匹配所提问题与大规模问答对问题中最相似的目标,返回其对应的答案。该方式必然会返回一个答案,即便答案可能与问题无关,因此还需要设定一个阈值,当计算的语义相似度值超过该阈值时才返回答案,若无法超过阈值,系统返回诸如“无法理解”等模板来促使用户重复提问。

本文采用基于SBERT微调的方式进行训练。SBERT由Nils等人提出,是基于原始预训练BERT网络的变体。由于BERT网络结构没有计算独立的句子嵌入,使得利用BERT获取句子嵌入十分困难。而为了突破这一限制,SBERT使用连体网络架构[6]来获得有意义的句子嵌入,使用如余弦距离、曼哈顿距离等距离度量方式学习模型参数,这些距离度量可以在现代化硬件上高效地执行,使得SBERT既可用于句子的语义相似性判别,也可用于相似句搜索,能够较好地适应于与句子相关的特定任务。

SBERT使用预训练的BERT网络,通过微调产生有效的句子嵌入,从而大大减少训练时间。SBERT对BERT的输出进行池化操作,以此获取固定维度的句子嵌入,模型默认采用均值池化。为了在BERT上进行微调,模型使用连体网络更新权重,使得生成的句子嵌入在语义上有意义,并且可以用余弦相似度等度量函数进行比较。

对于计算过程,SBERT计算两个句子[u]和[v]之间的距离度量损失来优化目标函数。本文的距离度量采用基于双曲空间的双曲距离度量而非传统基于欧氏空间的欧氏距离度量,损失计算使用均方误差,本文的相似度判别任务也使用了该体系结构,其计算流程[6]如图2所示。

2.3" 双曲距离度量

度量学习旨在学习一个高度判别的模型,该模型鼓励相似的嵌入在向量空间中更接近,而差异越大的嵌入在向量空间中的距离将被拉得越远[7]。常见的方法是使用编码器来提取嵌入,并使用基于距离的损失函数进行嵌入学习。传统的度量学习通常在欧氏空间中度量向量间的距离,而本文使用双曲距离函数[7]进行度量学习,该距离函数能够将文本嵌入映射至双曲空间这类非欧氏空间,从而优化对应的嵌入。

本文选择双曲空间中的庞家莱球模型,其流形[Dn={x∈Rn:cxlt;1,cgt;0}],使用黎曼度量,[gE]为欧氏张量,公式[7]如下:

[gD=λ2cgE" λc=21-cx2]" "(1)

在双曲空间中,已知两点[x,y∈Dn],两点间距离计算公式[7]为:

[dD(x,y)=arccosh1+2x-y2(1-x2)(1-y2)] (2)

双曲空间并非欧氏空间,为了执行加法操作需引入新的计算形式。对于[x,y∈Dnc],它们在双曲空间中的加法计算公式[7]为:

[x⊕y=1+2cx,y+cy2x+1-cx2y1+2cx,y+c2x2y2]" " " " " " " " " " (3)

对于[x,y∈Dnc],两点间距离公式[7]为:

[dc(x,y)=2carctanhc-x⊕y] (4)

为训练模型,句子转化为向量后还会需将其投影至双曲空间,以实现双曲度量。

3" 实验与分析

3.1" 实验数据

在知识图谱方面,本文在liuhuanyong的开源医疗知识图谱上进行优化,其底层已提供了一套基础问答模型。本文设计的重点在于语义匹配模块,采用基于双曲度量的SBERT微调模型进行相应任务训练。数据集方面,本文使用了中文医疗相似问题对CMedQA[11]作为训练的原始数据,这些相似问题对均与医疗相关,在该数据集上训练能使模型更准确地进行医疗语义判别。CMedQA训练集约有20 000条数据,正负样本比例约为1∶1。此外,本文对该数据集做了一定脚本处理,数据集部分示例如表1所示。

为了验证模型性能,本文还在Quaro英文重复句子对数据集上继续进行实验,其格式与中文数据集一致,共有10 000条数据,其余设定均与中文数据集相同。对于问答对数据,本文截取了CMedQA数据集[12]部分数据。

3.2" 实验设置与评估方式

为了保证实验的公平性,除了一些特别的设置,各模型都选取相同的参数值,数据集按照8∶1∶1的比例划分为训练集、验证集、测试集。其余参数如向量维度为768,批处理大小为64,训练轮数为10,本实验使用准确率和F1值来评价模型的性能。

3.3" 实验分析

3.3.1" 语义相似度模型评估

为了评估SBERT微调模型的性能,将其与几种处理相似度任务的模型进行对比验证,这些模型包括MaLSTM[4]、HBAM[3]和BERT[5],这几类模型都在句子相似度任务上取得过良好性能,特别是BERT。表2为模型对比实验结果,本文所使用的微调SBERT模型性能均优于上述模型。

3.3.2" 不同相似度距离度量评估

为了验证双曲距离度量的效果,本文还结合5种不同的预训练模型进行了进一步对比实验,其中包括Mac⁃BERT[13]、Chinese⁃BERT⁃wwm⁃ext[14]、Chinese⁃RoBERTa⁃wwm⁃ext[15]、BERT⁃Base[5]、ALBERT[16],距离度量函数包括点积(dot)、欧氏距离(euclidean)、曼哈顿距离(manhattan)、余弦距离(cos)以及本文模型使用的双曲距离(hyperbolic)。其中双曲距离度量在各类模型上都具有更优的效果,如表3所示。

3.3.3" 实验结果分析

通过一系列实验,可以得出基于双曲度量的SBERT微调模型在处理本次中文医疗相似问题对任务上相较于其他与该任务相关的模型具有更强的性能,相比于性能优越的BERT微调模型,其在准确率上提升了7.16%。证明本文模型通过对句子特定的池化和双曲距离度量损失计算,能有效地将语义相似的句子嵌入在特征空间中拉近,将语义差别较大的句子嵌入在特征空间中拉远,从而较好地提取句义特征。MaLSTM和HBAM在中文数据集上的效果明显较差,原因是这类模型主要用于处理如英文这类固定分隔模式的句子,对中文句子所能捕获到的信息有限。BERT能够较好地捕获语句中医疗相关词汇的语义特征,但在该任务上容易过拟合,导致性能略受影响。

由表3可知,使用双曲距离度量的SBERT性能均优于其他不同的预训练模型,这表明双曲距离度量在语义判别任务上具备一定有效性,可将该度量进一步扩展至其他嵌入方面的应用。在ALBERT这类轻量级模型上,使用双曲距离度量后性能提升较大,对比余弦距离度量在准确率上有2.28%的提升,F1值有1.58%的提升,这也表明双曲距离度量对于一些轻量级模型性能有较大的提升。

3.4" 效果展示

本文构建了一个GUI界面并手动提出了几个医学相关问题,界面展示如图3所示。

图3a)为原始的知识图谱问答系统,用户在提出问题后,由于系统无法识别实体关系或实体关系在知识图谱中不存在,无法作答;而图3b)显示在系统中加入本文所提的语义匹配模块后,能在问答对数据集中匹配到相似问题,并返回此问题对应的答案,回答了图3a)中未能回答的问题。

本文将语义判断阈值设为0.5,即提出的问题与问答对中最相似问题的相似度高于0.5时系统才返回答案,图3b)第三轮问答展示了该情况。

4" 结" 论

本文提出一种基于知识图谱和语义相似度匹配的问答系统,其充分利用了知识图谱和语义匹配各自的优势,其中,知识图谱能够存储结构化数据,并且能较好地维护和检索特定领域的知识;语义匹配模块是该系统的重点优化模块,通过在SBERT模型上微调训练,并且结合一种新的双曲距离度量,得到了一个能更好地理解自然语言问题的模型,通过该模型,系统能够利用自然语言处理这类深度学习技术来进一步回答知识图谱无法回答的问题。

然而,该系统也存在一定局限,即用户在问题表达过程中可能会使用一些知识库中医学实体和关系的同义替换词[9],这种情况下系统应能够通过模糊匹配识别出相应的实体和关系,进而继续在知识图数据库中进行查询而非转入第二条路径,这一点有待于从图嵌入技术方面进行探索。

注:本文通讯作者为徐若卿。

参考文献

[1] 郝慧斌.基于SimCSE的疾病知识图谱问答系统[J].电脑与信息技术,2023,31(2):97⁃100.

[2] 李飞.基于知识图谱的问答系统研究与实现[D].南京:南京邮电大学,2022.

[3] BAO Q, NI L, LIU J. HHH: an online medical chatbot system based on knowledge graph and hierarchical bi⁃directional attention [C]// Proceedings of the Australasian Computer Science Week Multiconference. Melbourne: ACM, 2020: 1⁃10.

[4] IMTIAZ Z, UMER M, AHMAD M, et al. Duplicate questions pair detection using siamese MaLSTM [J]. IEEE access, 2020(99): 21932⁃21942.

[5] DEVLIN J, CHANG M W, LEE K, et al. BERT: pre⁃training of deep bidirectional transformers for language understanding [EB/OL]. [2023⁃11⁃04]. https://www.xueshufan.com/publication/2896457183.

[6] REIMERS N, GUREVYCH I. Sentence⁃BERT: sentence embeddings using siamese BERT⁃Networks [EB/OL]. [2023⁃01⁃07]. https://www.xueshufan.com/publication/2971193649.

[7] GANEA O E, BÉCIGNEUL G, HOFMANN T. Hyperbolic neural networks [C]// Proceedings of the 32nd International Conference on Neural Information Processing Systems. New York: ACM, 2018: 5350⁃5360.

[8] CUI W, XIAO Y, WANG H, et al. KBQA: learning question answering over QA corpora and knowledge bases [EB/OL]. [2023⁃07⁃11]. https://www.xueshufan.com/publication/2584356431.

[9] HUANG X, ZHANG J, LI D, et al. Knowledge graph embedding based question answering [C]// Proceedings of the Twelfth ACM International Conference on Web Search and Data Mining. [S.l.]: ACM, 2019: 105⁃113.

[10] MUELLER J, THYAGARAJAN A. Siamese recurrent architectures for learning sentence similarity [EB/OL]. [2023⁃07⁃21]. https://www.xueshufan.com/publication/2508865106.

[11] ZHANG N, JIA Q, YIN K, et al. Conceptualized representation learning for chinese biomedical text mining [EB/OL]. [2023⁃05⁃11]. https://www.xueshufan.com/publication/3081505754.

[12] ZHANG S, ZHANG X, WANG H, et al. Multi⁃scale attentive interaction networks for chinese medical question answer selection [J]. IEEE, 2018(6): 74061⁃74071.

[13] CUI Y, CHE W, LIU T, et al. Pre⁃training with whole word masking for Chinese BERT [J]. IEEE/ACM transactions on audio, speech, and language processing, 2021(2): 3504⁃3514.

[14] CUI Y, CHE W, LIU T, et al. Revisiting pre⁃trained models for Chinese natural language processing [EB/OL]. [2023⁃05⁃16]. https://www.xueshufan.com/publication/3102725307.

[15] LIU Y, OTT M, GOYAL N, et al. RoBERTa: a robustly optimized BERT pretraining approach [EB/OL]. [2023⁃09⁃07]. https://www.xueshufan.com/publication/2965373594.

[16] LAN Z, CHEN M, GOODMAN S, et al. ALBERT: a lite BERT for self⁃supervised learning of language representations [EB/OL]. [2023⁃06⁃07]. https://www.xueshufan.com/publication/ 2975059944.

[17] 叶晓鹏.基于医疗知识图谱自动问答系统的构建研究[J].电脑知识与技术,2023,19(9):22⁃24.

[18] 李贺,刘嘉宇,李世钰,等.基于疾病知识图谱的自动问答系统优化研究[J].数据分析与知识发现,2021,5(5):115⁃126.

[19] 周俊杰,田紫薇,周诗雨.基于知识图谱的医疗智能对话机器人[J].信息技术,2022,46(12):62⁃68.

[20] 李瑞东.基于知识图谱的问答系统的研究与医学场景应用[D].北京:北京邮电大学,2022.

作者简介:徐若卿,男,湖北十堰人,硕士研究生,主要从事自然语言处理研究。

猜你喜欢
双曲度量图谱
有趣的度量
模糊度量空间的强嵌入
中国科学技术馆之“双曲隧道”
军事文摘(2021年22期)2022-01-18 06:22:48
绘一张成长图谱
双曲型交换四元数的极表示
迷向表示分为6个不可约直和的旗流形上不变爱因斯坦度量
一阶双曲型偏微分方程的模糊边界控制
补肾强身片UPLC指纹图谱
中成药(2017年3期)2017-05-17 06:09:01
主动对接你思维的知识图谱
基于双曲和代数多项式的HC-Bézier曲线