一种基于医疗知识图谱的疾病自动问答系统、设备及介质的制作方法

文档序号:30091856发布日期:2022-05-18 09:19阅读:227来源:国知局
一种基于医疗知识图谱的疾病自动问答系统、设备及介质的制作方法

1.本发明涉及疾病学习和问答领域,尤其涉及一种基于医疗知识图谱的疾病自动问答系统、设备及介质。


背景技术:

2.近年来人们生活水平得到了普遍提高,相较以往成为了人们愈发关注自身和家人的健康问题,而在日常生活中,人们经常需要根据自身所得症状确定自己可能患有的疾病,并需要针对这类疾病进行准确挂号、合理用药、日常诊疗等操作。目前在线医疗咨询平台如寻医问药网、好大夫在线网等能够进行相关疾病咨询,但这类平台需要医生在线,通过人工答诊的方式为患者提供咨询服务,导致这类在线咨询平台缺乏自动智能化问诊与答诊的途径,无法为大量的患者提供及时的疾病咨询服务。
3.随着“互联网+”技术以及智慧医疗的迅速发展,疾病自动问答系统逐渐成为人与机器进行自然交互的新方式,知识图谱(knowledge graphs)是大规模语义网络知识库,采取符号化的知识表示方式,利用三元组来描述具体的知识,并以有向图的形式对其进行表示和存储,具有语义丰富、结构友好、易于理解等优点,由于在表达人类先验知识上具有优良的特性,知识图谱近年来在自然语言处理、问答系统、推荐系统等诸多领域取得了广泛且成功的应用。
4.因此如何将疾病自动问答系统和知识图谱深入融合构建知识图谱疾病自动问答系统满足应用需求成为了亟需思考解决的重要问题。


技术实现要素:

5.有鉴于此,本发明提出了一种基于医疗知识图谱的疾病自动问答方法,用于解决如何将疾病自动问答系统和知识图谱深入融合构建知识图谱疾病自动问答系统满足应用需求的问题。
6.本发明的技术方案是这样实现的:
7.本发明第一方面,公开一种基于医疗知识图谱的疾病自动问答系统,所述系统包括以下功能模块:
8.知识图谱构建模块:用于搭建基于医学知识图谱medkg的疾病自动问答系统后台知识总库;
9.疾病问句特征选择模块:用于对用户病情提问语句中的疾病特征词进行识别,完成疾病特征词到词向量的转化;
10.知识图谱嵌入模块:用于建立与所述疾病特征词相关联的医学知识图谱内实体及实体关系到低维向量的空间投影,生成关联实体向量;
11.多通道卷积神经网络模块:用于将疾病特征词向量与相关知识实体向量作为多通道输入网络模型进行训练,实现预测功能;
12.自动化部署模块:用于将各核心功能封装及压缩模型,上传云服务器完成访问路
径、端口参数、并发上限的配置,供客户端实时调用。
13.本发明通过上述系统,将疾病自动问答系统和知识图谱深入融合构建知识图谱疾病自动问答系统,无需医生在线根据患者信息作出诊断并给与意见,而是通过系统自动作出判断并给与建议,准确率高且大大提高了线上问诊系统的效率。
14.在以上技术方案的基础上,优选的,所述知识图谱构建模块具体包括:
15.知识获取单元:利用爬虫采集技术从多个医疗在线问答服务平台获取相关的疾病数据并作为所述医学知识图谱的数据源;
16.数据预处理单元:进行数据格式转换和数据过滤处理,数据格式转换为:将所述知识获取单元中获取的疾病数据通过订制脚本文件批量转换为适合入库的数据格式;数据过滤为:对异常数据进行过滤筛选,使经过数据格式转换处理的数据格式规整、准确统一,所述异常数据包括空值、重复值和无关标点;
17.知识抽取单元:抽取所述数据预处理单元处理完成的数据完成疾病相关的实体、关系和属性,构建疾病知识图谱三元组《head,relation,tail》,head、tail分别为三元组的头实体、尾实体,都属于medkg的实体集合,relation={r1,r1,

,rr}是medkg的关系集合,共包含r种不同关系,医疗实体head和tail作为medkg中最基本的元素,而关系relation存在于不同head或tail之间;
18.实体消歧单元:对所述知识抽取单元中存在来源不同疾病却相同或同义的多源开放疾病数据,通过消歧操作确保实体唯一;所述消歧操作包括重复实体名删除、实体名同义互换;
19.知识存储单元:通过图形数据库neo4j实现疾病数据的存储和疾病知识图谱的可视化。
20.本发明通过上述模块,剔除异常数据,统一格式,消除相同或同义实体,构建简洁干净的知识图谱,并基于知识图谱创建内容丰富的疾病自动问答系统后台知识总库。
21.在以上技术方案的基础上,优选的,所述疾病问句特征选择模块具体包括:
22.所述用户病情提问语句包括用户对自身疾病症状、病因以及严重程度相关的描述语句;使用thulac中文分词系统结合医疗专业疾病与症状词典,对用户病情提问语句进行分词、词性标注及识别医疗实体处理,并通过去除停用词及无意义的单字,得到一组与病情描述相关的疾病特征词;一条由n个特征词构成的疾病特征为x={w1,w2,

,wn},其中wi为构成一条完整疾病语句中第i个位置的特征词;
23.利用word2vec的cbow模型训练得到每个特征词转换后的词向量,即映射为对应的d维表示向量w
1:n
∈rd。
24.本发明通过上述模块,提取用户病情提问语句中的有效信息,并转换为词向量,使用word2vec的cbow模型考虑了中间词与上下文的关系,使用单层神经网络利用中间词预测其上下文或者利用中间词的上下文预测中间词,最后得到分布式词向量并且最大程度地保留了语义信息。
25.在以上技术方案的基础上,优选的,所述知识图谱嵌入模块具体包括:
26.基于实体链接el技术将所述疾病问句特征选择模块中分词后的疾病特征x={w1,w2,

,wn},与知识图谱构建模块构建的知识图谱medkg三元组《head,relation,tail》进行实体相似性计算,得出medkg内相关实体及实体关系数据信息,进而构造疾病特征x={w1,
w2,

,wn}关联的子图谱sub-medkg;
27.对所述疾病知识图谱三元组《head,relation,tail》,通过transd模型进行嵌入计算,使用两个投影矩阵mh和m
t
将头实体h和尾实体t分别投影到关系空间,并将每个关系的投影矩阵分解为两个向量的乘积,关系r被解释为从头实体h到尾实体t之间的平移向量,函数表示为fr(h,t)=‖mhh+r-m
t
t‖,其中mh=r
php
+i
m*n
,m
t
=r
p
t
p
+i
m*n
,h
p
,t
p
∈rm、r
p
是映射向量,i
m*n
是单位矩阵。
28.本发明通过上述模块,对知识图谱中的头实体、尾实体和关系进行表示学习,利用投影操作将图谱投影到低维向量空间保存知识图谱中的语义结构信息,最终以数学向量进行表示,为特定度量的计算奠定的基础。
29.在以上技术方案的基础上,优选的,所述多通道卷积神经网络模块具体包括:
30.将从所述疾病问句特征选择模块和所述知识图谱嵌入模块获得疾病特征词向量、实体向量及实体上下文向量分别通过3个独立通道输入网络模型,所述网络模型包括:1)输入层,使用3个通道来接收向量;2)卷积层,对于不同的通道,使用多窗口多卷积核的方式进行卷积操作,获取不同通道输入的局部特征,形成特征信息图;3)池化层,使用不同的池化层对不同的通道进行下采样操作,获取每个通道中最重要的特征信息;4)合并层,采用一个合并层合并从不同通道获取的局部特征,形成一个局部特征向量,并将该局部特征向量作为隐藏层的输入;5)隐藏层,采用一个隐藏层对局部特征向量进行特征提取,获取不同通道局部特征之间的联系,并通过权重矩阵学习不同通道的相互联系;6)输出层,使用函数softmax输出预测结果;
31.所述网络模型训练时采用自适应矩估计adam算法来最小化目标函数,并通过反向传播来更新每轮迭代过程中网络模型的各种参数,直到模型达到拟合要求。
32.本发明通过上述模块,训练网络模型,将网络模型用于实现根据用户提问语句判断其最可能患有的疾病,从而完成对患者的疾病诊断。
33.在以上技术方案的基础上,优选的,所述自动化部署模块具体包括:
34.通过云服务器部署,将各功能模块部署在云端服务器,用户通过网页访问或者api接口调用向云服务器发出service请求,云服务器收到请求后处理并返回结果。
35.在以上技术方案的基础上,优选的,为所述云服务器设置负载均衡和启动实例集群,所述自动化部署模块将所述基于医疗知识图谱的疾病自动问答系统各功能模块部署完成后,众多服务问诊平台通过云服务器api接口访问基于医疗知识图谱的疾病自动问答系统。
36.本发明通过上述模块,将所述基于医疗知识图谱的疾病自动问答系统的各个功能模块部署在云服务器,用户可通过云服务器api接口实现疾病自动精准问答,无需人工在线服务,满足了大量用户疾病问诊咨询服务。
37.本发明第二方面,公开一种电子设备,所述设备包括:至少一个处理器、至少一个存储器、通信接口和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的一种基于医疗知识图谱的疾病自动问答系统功能程序,一种基于医疗知识图谱的疾病自动问答系统功能程序配置为实现如本发明第一方面所述的一种基于医疗知识图谱的疾病自动问答系统功能。
38.本发明第三方面,公开一种计算机可读存储介质,所述存储介质上存储有一种基
于医疗知识图谱的疾病自动问答系统功能程序,所述一种基于医疗知识图谱的疾病自动问答系统功能程序被执行时实现如本发明第一方面所述的一种基于医疗知识图谱的疾病自动问答系统功能。
39.本发明的一种基于医疗知识图谱的疾病自动问答系统相对于现有技术具有以下有益效果:
40.(1)通过运用自然语言处理、深度学习、知识图谱等技术,结合现有在线医疗问答数据源等医疗数据,确定疾病语句自动化问答目标,准确刻画了用户提问问题与真正所需答案间的关联程度,实现了自动化精准问诊;
41.(2)将基于医疗知识图谱的疾病自动问答系统的各个功能模块部署在云服务器,用户可通过云服务器api接口访问本系统,即可进行在线疾病自动精准问答,无需人工在线服务,满足了大量用户疾病问诊咨询服务。
附图说明
42.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
43.图1为本发明一种基于医疗知识图谱的疾病自动问答系统模块图。
具体实施方式
44.下面将结合本发明实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
45.实施例
46.本发明一种基于医疗知识图谱的疾病自动问答系统模块见图1,各模块工作步骤说明如下:
47.第一步,知识图谱构建模块搭建基于医学知识图谱medkg的疾病自动问答系统后台知识总库。转第二步。
48.应当理解的是,在上述方案的基础上,医学知识图谱medkg是现实世界中根据医疗实体(结点)、实体间关系(边)相互连接起来所形成的一种网络结构,三元组作为知识图谱的一种通用表示形式,可将图谱中的每一条医学知识直观地表示为《head,relation,tail》,而在构建知识图谱前,还需要经过数据收集等处理。
49.应当理解的是,在上述方案的基础上,知识图谱构建模块具体包括:
50.知识获取单元:利用爬虫采集技术从多个医疗在线问答服务平台,如寻医问药网、好大夫在线网、39健康网等,获取相关的疾病数据并作为所述医学知识图谱的数据源;
51.数据预处理单元:进行数据格式转换和数据过滤处理,数据格式转换为:将所述知识获取单元中获取的疾病数据通过订制脚本文件批量转换为适合入库的数据格式;数据过滤为:对异常数据进行过滤筛选,使经过数据格式转换处理的数据格式规整、准确统一,所
述异常数据包括空值、重复值和无关标点;
52.知识抽取单元:抽取所述数据预处理单元处理完成的数据完成疾病相关的实体(如疾病、科室、检查、药品、症状、食物、厂商)、关系(如疾病与推荐食谱、疾病与忌吃食物、疾病与宜吃食物、疾病与热门药品、疾病与常用药品、疾病与症状、疾病与并发症、疾病与诊断检查、疾病与科室间、厂商与药物)和属性(如疾病名称、疾病描述、疾病病因、就诊科室、治疗方式、治愈时间、治愈概率、易感人群、防治措施),构建疾病知识图谱三元组
53.《head,relation,tail》,head、tail分别为三元组的头实体、尾实体,都属于medkg的实体集合,relation={r1,r1,

,rr}是medkg的关系集合,共包含r种不同关系,医疗实体head和tail作为medkg中最基本的元素,而关系relation存在于不同head或tail之间;
54.实体消歧单元:对所述知识抽取单元中存在来源不同疾病却相同或同义的多源开放疾病数据,通过消歧操作确保实体唯一;所述消歧操作包括重复实体名删除、实体名同义互换;
55.知识存储单元:通过图形数据库neo4j实现疾病数据的存储和疾病知识图谱的可视化。
56.第二步,疾病问句特征选择模块:用于对用户病情提问语句中的疾病特征词进行识别,完成疾病特征词到词向量的转化。转第三步。
57.应当理解的是,在上述方案的基础上,疾病问句特征选择模块具体包括:
58.所述用户病情提问语句包括用户对自身疾病症状、病因以及严重程度相关的描述语句;使用thulac中文分词系统结合医疗专业疾病与症状词典,对用户病情提问语句进行分词、词性标注及识别医疗实体处理,并通过去除停用词及无意义的单字,得到一组与病情描述相关的疾病特征词;一条由n个特征词构成的疾病特征为x={w1,w2,

,wn},其中wi为构成一条完整疾病语句中第i个位置的特征词;
59.利用word2vec的cbow模型训练得到每个特征词转换后的词向量,即映射为对应的d维表示向量w
1:n
∈rd。
60.cbow模型考虑了中间词与上下文的关系,使用单层神经网络利用中间词预测其上下文或者利用中间词的上下文预测中间词,最后得到分布式词向量并且最大程度地保留了语义信息。
61.第三步,知识图谱嵌入模块:用于建立与所述疾病特征词相关联的医学知识图谱内实体及实体关系到低维向量的空间投影,生成关联实体向量。转第四步。
62.应当理解的是,在上述方案的基础上,知识图谱嵌入(knowledge graph embedding)旨在对图谱中的头实体、尾实体和关系进行表示学习,利用投影操作将图谱投影到低维向量空间保存知识图谱中的语义结构信息,最终以数学向量进行表示,为特定度量(如相似度等)计算奠定的基础;不同知识图谱嵌入方法因其模型结构不同,所习得的知识向量也存在较大差异,较为常用的有transe、transd等代表模型,由于医疗类图谱具有关系复杂、网络稠密等特点,而transe模型因其自身参数少、复杂度低等缺陷显然不能处理此类图谱,因此选用性能更强的transd模型进行嵌入计算。
63.基于实体链接el技术将所述疾病问句特征选择模块中分词后的疾病特征x={w1,w2,

,wn},与知识图谱构建模块构建的知识图谱medkg三元组《head,relation,tail》进行实体相似性计算,得出medkg内相关实体及实体关系数据信息,进而构造疾病特征x={w1,
w2,

,wn}关联的子图谱sub-medkg;
64.对所述疾病知识图谱三元组《head,relation,tail》,通过transd模型进行嵌入计算,使用两个投影矩阵mh和m
t
将头实体h和尾实体t分别投影到关系空间,并将每个关系的投影矩阵分解为两个向量的乘积,关系r被解释为从头实体h到尾实体t之间的平移向量,函数表示为fr(h,t)=‖mhh+r-m
t
t‖,其中mh=r
p
t
p
+i
m*n
,m
t
=r
p
t
p
+i
m*n
,h
p
,t
p
∈rm、r
p
是映射向量,i
m*n
是单位矩阵。
65.第四步,多通道卷积神经网络模块将疾病特征词向量与相关知识实体向量作为多通道输入网络模型进行训练,实现预测功能。转第五步。
66.对于给定用户病情提问语句经第二步、第三步获得疾病特征词向量、实体向量及实体上下文向量,以上述向量分别以独立通道输入网络模型,类似于图像rgb输入,将以上三种类型向量进行转换对齐叠加,组成输入矩阵,应用多个不同尺寸卷积核进行高级特征提取,特征图池化操作采用最大池化,最后连接softmax进行预测。
67.应当理解的是,在上述方案的基础上,所述网络模型包括:1)输入层,使用3个通道来接收向量;2)卷积层,对于不同的通道,使用多窗口多卷积核的方式进行卷积操作,获取不同通道输入的局部特征,形成特征信息图;3)池化层,使用不同的池化层对不同的通道进行下采样操作,获取每个通道中最重要的特征信息;4)合并层,采用一个合并层合并从不同通道获取的局部特征,形成一个局部特征向量,并将该局部特征向量作为隐藏层的输入;5)隐藏层,采用一个隐藏层对局部特征向量进行特征提取,获取不同通道局部特征之间的联系,并通过权重矩阵学习不同通道的相互联系;6)输出层,使用函数softmax输出预测结果;
68.所述网络模型训练时采用自适应矩估计adam算法来最小化目标函数,并通过反向传播来更新每轮迭代过程中网络模型的各种参数,直到模型达到拟合要求。
69.本发明中,网络模型参数可以设置为:词向量维度120、实体向量维度120、上下文向量维度120、dropou参数值0.25、卷积核尺寸2,3,4、卷积核数量180、学习速率0.15、批大小值64,正则化项4。
70.第五步,自动化部署模块将各核心功能封装及压缩模型,上传云服务器完成访问路径、端口参数、并发上限的配置,供客户端实时调用。
71.应当理解的是,在上述方案的基础上,自动化部署模块通过云服务器部署,将各功能模块部署在云端服务器,用户通过网页访问或者api接口调用向云服务器发出service请求,云服务器收到请求后处理并返回结果。
72.应当理解的是,在上述方案的基础上,鉴于云服务器并发访问次数可能出现波峰等情形,为有效缓解远程请求服务,可设置负载均衡和启动实例集群,所述自动化部署模块将所述基于医疗知识图谱的疾病自动问答系统的各功能模块部署完成后,众多服务问诊平台通过云服务器api接口访问基于医疗知识图谱的疾病自动问答系统。
73.本发明实现了结合现有在线医疗问答数据源等医疗数据,实现疾病语句自动化问答目标,准确刻画了用户提问问题与真正所需答案间的关联程度,在自动化精准问诊、提高用户满意度等方面具有重大意义。
74.本发明还公开一种电子设备,所述设备包括:至少一个处理器、至少一个存储器、通信接口和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的一种基于医疗知识图谱的疾病自动问答系统功能
程序,一种基于医疗知识图谱的疾病自动问答系统功能程序配置为实现如本发明实施例所述的一种基于医疗知识图谱的疾病自动问答系统功能。
75.本发明还公开一种计算机可读存储介质,所述存储介质上存储有一种基于医疗知识图谱的疾病自动问答系统功能程序,所述一种基于医疗知识图谱的疾病自动问答系统功能程序被执行时实现如本发明实施例所述的一种基于医疗知识图谱的疾病自动问答系统功能。
76.以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1