CN112071429A - 一种基于知识图谱的医疗自动问答系统构建方法 - Google Patents
一种基于知识图谱的医疗自动问答系统构建方法 Download PDFInfo
- Publication number
- CN112071429A CN112071429A CN202010921733.4A CN202010921733A CN112071429A CN 112071429 A CN112071429 A CN 112071429A CN 202010921733 A CN202010921733 A CN 202010921733A CN 112071429 A CN112071429 A CN 112071429A
- Authority
- CN
- China
- Prior art keywords
- data
- knowledge
- knowledge graph
- medical
- graph
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/70—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Public Health (AREA)
- Biomedical Technology (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Pathology (AREA)
- Epidemiology (AREA)
- Primary Health Care (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
本发明涉及一种自动问答的技术领域,揭露了一种基于知识图谱的医疗自动问答系统构建方法,包括:对医疗领域知识图谱中的实体、关系以及属性进行预定义;获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;利用对话编码器将用户的对话文本进行编码,得到对话文本编码数据;利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径,意图路径所指向的知识图谱结果即为自动问答结果。本发明还构建了一种基于知识图谱的医疗自动问答系统。本发明实现了医疗领域的自动问答。
Description
技术领域
本发明涉及自动问答的技术领域,尤其涉及一种基于知识图谱的医疗自动问答系统构建方法。
背景技术
互联网的极速发展带来了信息的爆炸式增长。而且信息的来源多种多样,没有统一的结构也带来了信息的杂乱无章,导致人们无法快速去查找有用的信息。随着人工智能技术不断地更新迭代,人们非常期望计算机能够像人一样理解他们的需求并快速、准确地帮助找到对人们有用的信息,从而引发人们对新的数据表示存储方式——知识图谱的研究热潮。
现有基于知识存储的技术探索了以不同语义、句法特征为基础的特征工程方法,这些方法的优势在于具有较强的可解释性,但通常需要大量人工特征选择,特征设计的不足和底层语法工具的错误都可能导致知识存储效果较差;基于深度学习的知识存储模型将知识存储的效果提升到了新的水平,但这些模型通常只关注数据集中包含的信息,对于医疗等专业知识信息缺乏考虑。
同时针对自动问答系统中的意图识别,现有技术经常将意图识别视为分类任务,即将用户的对话文本标记为相应的意图,并使用该数据训练分类器。尽管这种意图分类模型在学术界和行业中都被证明是有效的,但它们也有明显的缺点。当前很多研究使用的是深度神经网络作为分类器,但这种分类器是一个“黑匣子”,缺少充分的可解释性。
鉴于此,如何构建医疗领域的知识图谱,并基于知识图谱进行用户意图的识别,实现医疗领域的自动问答,成为本领域技术人员亟待解决的问题。
发明内容
本发明提供一种基于知识图谱的医疗自动问答系统构建方法,通过定义医疗领域知识图谱中的实体、关系和属性,并利用数据自动标注算法对医疗领域数据进行标注,同时基于神经网络模型进行知识图谱的补全和构建,根据所构建的知识图谱进行基于强化学习的医疗领域自动问答。
为实现上述目的,本发明提供的一种基于知识图谱的医疗自动问答系统构建方法,包括:
对医疗领域知识图谱中的实体、关系以及属性进行预定义;
获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;
利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;
利用对话编码器将用户的对话文本进行编码,得到对话文本编码数据;
利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径,意图路径所指向的知识图谱结果即为自动问答结果。
可选地,所述定义医疗领域知识图谱中的实体、关系以及属性,包括:
构建11种知识图谱实体类型以及8种知识图谱属性类型以完成医疗知识图谱实体关系的设计,所述知识图谱实体类型包括:疾病、症状、部位、患者、诊断项目、医疗科室、医生、医院、治疗、饮食以及运动,其中疾病、症状、部位、患者属于确定病情关系,诊断项目、医疗科室、医生、医院、治疗属于诊断治疗关系,治疗、饮食以及运动属于日常护理关系;
所述知识图谱属性类型包括:疾病名称、疾病介绍、病因、治疗方式、治疗概率、预防措施、治愈概率、易感人群以及日常护理。
可选地,所述利用数据自动标注算法对医疗领域数据进行标注利用数据自动标注算法对医疗领域数据进行标注,包括:
1)将预定义的医疗领域知识图谱与医疗领域数据对齐,对于医疗领域数据中含有知识图谱实体的数据,将该数据归类到对应的实体对中,得到共实体的数据集;
2)对于共实体数据集,在知识图谱中筛选对应的关系作为关系特征词,人工构建这些关系特征词的同义扩展词表;
3)依次将共实体的数据集中的数据与相应的关系特征词及扩展词进行匹配,如果数据集中的数据存在相应的关系特征词或者同义扩展词,则标注该数据,同时将该数据加入到标注数据集M1中,否则不标注该数据,同时将该数据加入到未标注数据集U1中;
4)将共实体的数据集对应的实体关系三元组(E1,R,E2)按照格式“E1的R是E2”拼接成标准句子S;
5)利用余弦相似度算法分别计算标注数据集M1中的句子与标准句子S的相似度,选择第二小的相似度值作为相似度阈值;
6)分别将未标注数据集U1中的句子与标准句子S计算句子相似度,如果该句子相似度达到了相似度阈值,则标注该句子,同时将该句子加入到标注数据集M2中,否则不标注该句子,同时将该句子加入到未标注数据集U2中;
7)将未标注数据集U2作为未标注数据,将标注数据集M1与标注数据集M2的并集作为标注数据,最终输出标注数据。
可选地,所述利用知识图谱构建模型对所述标注数据进行知识图谱的构建,包括:
1)将标注了实体的数据作为知识图谱构建模型的输入;
2)在表示层中将标注数据转换为低维向量,每个单词可以通过查看词向量库得到其对应的向量表示,其中标注数据中的每个实体都有一个相对于实体1的距离值和一个相对于实体2的距离值,两个距离值通过查看位置向量矩阵来得到其向量表示,位置向量矩阵中的参数在训练过程中不断优化;
3)使用孪生网络结构将两个标注数据作为输入,两个标注数据分别通过表示层和双向长短时记忆网络层得到其对应的向量,标注数据Si的输出向量为oi,标注数据Sj的输出向量为oj,并使用欧式距离来衡量两个输出向量之间的距离,记为dist(oi,oj);
4)利用两向量之间的距离值来衡量两个标注数据中所包含的实体间的关系是否是同一种关系,将同属于一种关系的实体所对应的标注数据归为一类,以将标注数据划分为若干类,从而构成知识图谱。
可选地,所述知识图谱构建模型的训练过程为:
对于训练集中关系类型为ri的句子Si,需要在训练集中选择一个关系类型为rj的句子Sj与之组成一对,若两个句子的关系类型相同,即ri=rj,则构成一个正例对,否则则构成一个负例对,并用标签label来表示两者是否属于同一种关系,对于正例对则label为0,对于负例对则label为1,且正例对和负例对的数量比例为1比1;
所述训练模型的损失函数为:
其中:
dist(oi,oj)为两个输出向量之间的欧式距离;
在训练过程中,通过不断调整模型的参数使得如果两个句子属于同一种关系,它们的输出向量之间的距离就较小,反之则较大。
可选地,所述利用对话编码器将用户的对话文本进行编码,包括:
1)提取出用户对话文本中所有词的集合,然后对这些词构建索引,并随机初始化这些词的嵌入矩阵使得每一个词都对应着一个嵌入向量,其中,nω为词的数量,eω为词嵌入向量的长度,依据词嵌入矩阵Eω将用户的对话文本中所有的词转换为对应的词嵌入向量,其中词向量转换后的第i个用户对话文本表示为{ωi1,...,ωin},ωih为第i个用户对话文本中第h个词对应的词向量;
2)将词嵌入向量通过双向GRU模型中,生成每个词对应的向量,将两个双向单元对应的向量进行串接,生成第i轮句子的编码ui:
ui=Bi-GRU(ωi1,...,ωin)
3)利用上下文编码器将第i轮对话的编码ui及其前面所有轮的对话文本编码进行整合,生成每一轮对话对应的上下文嵌入向量ci,即对话文本编码数据。
可选地,所述利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,包括:
1)在t时刻,使用状态对当前可观察到的环境进行编码,当前可观察到的环境为st=(et,er,ci)∈ε,其中et∈ε表示在t时刻属于知识图谱的实体节点,ε表示知识图谱,et表示实体节点,er,ci分别表示根节点和文本编码数据;
2)利用路径推理器从当前实体节点et的所有可到达的路径中选择一条作为下一步的动作at;
3)利用状态转换函数对当前节点的状态进行转换:
f(st,at)=(ei+1,er,ci)
4)在训练的过程中,如果模型产生的路径到达了目标实体,模型会收到一个正向奖励,值为+2;否则,会收到一个负向奖励,值为0,该奖励仅在生成推理路径后获得,因此该奖励为延时奖励;本发明通过设定q值来将此奖励转换为每一个时间步的累积折扣奖励,用于计算模型的损失,转换方法是最后一个非实体节点倒序开始,第一个节点及其后面的节点设为奖励值,前一个节点累积折扣奖励是后一个节点的q倍;
5)计算迭代得到所有推理路径,并计算每条推理路径的奖励值,选取其中奖励值最高的推理路径作为用户意图路径,所述用户意图路径指向的知识图谱结果即为自动问答结果。
此外,为实现上述目的,本发明还提供一种基于知识图谱的医疗自动问答系统,所述系统包括:
医疗知识获取装置,用于获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;
医疗知识处理器,用于利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;
医疗问答系统构建装置,用于利用对话编码器将用户的对话文本进行编码,利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有医疗自动问答构建指令,所述医疗自动问答构建指令可被一个或者多个处理器执行,以实现如上所述的基于知识图谱的医疗自动问答系统构建的实现方法的步骤。
相对于现有技术,本发明提出一种基于知识图谱的医疗自动问答系统构建方法,该技术具有以下优势:
首先,现有特定领域自动标注数据时,缺乏相应领域的知识库,且目前自动标注算法的语料存在大量噪声。因此本发明对现有的自动标注算法进行改进,由于知识图谱中不同实体关系三元组构建的标准句子与语料句子的句子相似度有着巨大波动,也就是归属于不同关系的句子集与标准句子的句子相似度的分布范围各不相同,如果采用固定的相似度阈值,往往只能满足部分关系的标准性能,而其他关系的标注性能较差,因此本发明依赖于关系特征词及扩展词标注模块产生的标注数据得到动态相似度阈值,这些标注数据在本发明中被认为是正确的,也就是这些标注数据中所有句子与标准句子的句子相似度都达到了相似度阈值,采用这些标注数据中句子与标准句子的句子相似度作为相似度阈值,可以保证后续句子相似度标注的准确率,而在这些句子相似度中选取尽可能小值,同时可以保证后续句子相似度标注的召回率。
同时,以往的模型一般将关系抽取视为多分类任务,将句子映射为一个特征向量后输入到分类器中来得到结果。本发明提出一种关系抽取方法用来构建知识图谱,将关系抽取问题转化为这个句子与哪些已知关系的句子的表达结构比较相似。于是,本发明在训练模型时,通过设计一种基于度量的损失函数,使得那些关系类型相同的句子的向量表示彼此靠近,那些关系类型不同的句子的向量表示彼此远离,所设计的损失函数为:
其中,dist(oi,oj)为两个输出向量之间的欧式距离,在训练过程中,通过不断调整模型的参数使得如果两个句子属于同一种关系,它们的输出向量之间的距离就较小,反之则较大。比如,模型得到的句子1的向量表示和句子2的向量表示彼此靠近,而和句子3的向量表示彼此远离,这样,具有同一种关系类型的句子就聚集在了一起。在测试阶段,对于未知关系的句子5,经过模型得到其与已知关系的四个句子之间的相似度,发现与句子1和句子2比较相似,而与句子3和句子4的差异比较大,于是就得到这个句子中两个实体间的关系为句子1和句子2中实体间的关系,并基于实体之间的关系建立知识图谱。
附图说明
图1为本发明一实施例提供的一种基于知识图谱的医疗自动问答系统构建方法的流程示意图;
图2为本发明一实施例提供的一种基于知识图谱的医疗自动问答系统的结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
通过定义医疗领域知识图谱中的实体、关系和属性,并利用数据自动标注算法对医疗领域数据进行标注,同时利用神经网络模型进行知识图谱的补全和构建,根据所构建的知识图谱进行基于强化学习的医疗领域自动问答。参照图1所示,为本发明一实施例提供的基于知识图谱的医疗自动问答系统构建方法示意图。
在本实施例中,基于知识图谱的医疗自动问答系统构建方法包括:
S1、对医疗领域知识图谱中的实体、关系以及属性进行预定义。
首先,通过构建11种知识图谱实体类型以及8种知识图谱属性类型以完成医疗知识图谱实体关系的设计,所述知识图谱实体类型包括:疾病、症状、部位、患者、诊断项目、医疗科室、医生、医院、治疗、饮食以及运动,其中疾病、症状、部位、患者属于确定病情关系,诊断项目、医疗科室、医生、医院、治疗属于诊断治疗关系,治疗、饮食以及运动属于日常护理关系;
所述知识图谱属性类型包括:疾病名称、疾病介绍、病因、治疗方式、治疗概率、预防措施、治愈概率、易感人群以及日常护理。
S2、获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注。
进一步地,本发明通过获取医疗领域数据,根据预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注,所述数据自动标注算法流程为:
1)将预定义的医疗领域知识图谱与医疗领域数据对齐,对于医疗领域数据中含有知识图谱实体的数据,将该数据归类到对应的实体对中,得到共实体的数据集;
2)对于共实体数据集,在知识图谱中筛选对应的关系作为关系特征词,人工构建这些关系特征词的同义扩展词表;
3)依次将共实体的数据集中的数据与相应的关系特征词及扩展词进行匹配,如果数据集中的数据存在相应的关系特征词或者同义扩展词,则标注该数据,同时将该数据加入到标注数据集M1中,否则不标注该数据,同时将该数据加入到未标注数据集U1中;
4)将共实体的数据集对应的实体关系三元组(E1,R,E2)按照格式“E1的R是E2”拼接成标准句子S;
5)利用余弦相似度算法分别计算标注数据集M1中的句子与标准句子S的相似度,选择第二小的相似度值作为相似度阈值;
6)分别将未标注数据集U1中的句子与标准句子S计算句子相似度,如果该句子相似度达到了相似度阈值,则标注该句子,同时将该句子加入到标注数据集M2中,否则不标注该句子,同时将该句子加入到未标注数据集U2中;
7)将未标注数据集U2作为未标注数据,将标注数据集M1与标注数据集M2的并集作为标注数据,最终输出标注数据。
S3、利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱。
进一步地,本发明利用知识图谱构建模型对所述标注数据进行知识图谱的构建和补全,所述基于知识图谱构建模型的医疗领域知识图谱构建过程为:
1)将标注了实体的数据作为知识图谱构建模型的输入;
2)在表示层中将标注数据转换为低维向量,每个单词可以通过查看词向量库得到其对应的向量表示,其中标注数据中的每个实体都有一个相对于实体1的距离值和一个相对于实体2的距离值,两个距离值通过查看位置向量矩阵来得到其向量表示,位置向量矩阵中的参数在训练过程中不断优化;
3)使用孪生网络结构将两个标注数据作为输入,两个标注数据分别通过表示层和双向长短时记忆网络层得到其对应的向量,标注数据Si的输出向量为oi,标注数据Sj的输出向量为oj,并使用欧式距离来衡量两个输出向量之间的距离,记为dist(oi,oj);
4)利用两向量之间的距离值来衡量两个标注数据中所包含的实体间的关系是否是同一种关系,将同属于一种关系的实体所对应的标注数据归为一类,以将标注数据划分为若干类,从而构成知识图谱;
所述知识图谱构建模型的训练过程为:
对于训练集中关系类型为ri的句子Si,需要在训练集中选择一个关系类型为rj的句子Sj与之组成一对,若两个句子的关系类型相同,即ri=rj,则构成一个正例对,否则则构成一个负例对,并用标签label来表示两者是否属于同一种关系,对于正例对则label为0,对于负例对则label为1,且正例对和负例对的数量比例为1比1;
所述训练模型的损失函数为:
其中:
dist(oi,oj)为两个输出向量之间的欧式距离;
在训练过程中,通过不断调整模型的参数使得如果两个句子属于同一种关系,它们的输出向量之间的距离就较小,反之则较大。
S4、利用对话编码器将用户的对话文本进行编码,得到对话文本编码数据。
进一步地,本发明利用对话编码器将用户的对话文本进行编码处理,所述基于对话编码器对用户对话文本进行编码的流程为:
1)提取出用户对话文本中所有词的集合,然后对这些词构建索引,并随机初始化这些词的嵌入矩阵使得每一个词都对应着一个嵌入向量,其中,nω为词的数量,eω为词嵌入向量的长度,依据词嵌入矩阵Eω将用户的对话文本中所有的词转换为对应的词嵌入向量,其中词向量转换后的第i个用户对话文本表示为{ωi1,...,ωin},ωih为第i个用户对话文本中第h个词对应的词向量;
2)将词嵌入向量通过双向GRU模型中,生成每个词对应的向量,将两个双向单元对应的向量进行串接,生成第i轮句子的编码ui:
ui=Bi-GRU(ωi1,...,ωin)
3)利用上下文编码器将第i轮对话的编码ui及其前面所有轮的对话文本编码进行整合,生成每一轮对话对应的上下文嵌入向量ci,即对话文本编码数据。
S5、利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径,意图路径所指向的知识图谱结果即为自动问答结果。
进一步地,本发明利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,所述基于知识图谱的强化学习网络对文本编码数据进行路径推断的流程为:
1)在t时刻,使用状态对当前可观察到的环境进行编码,当前可观察到的环境为st=(et,er,ci)∈ε,其中et∈ε表示在t时刻属于知识图谱的实体节点,ε表示知识图谱,et表示实体节点,er,ci分别表示根节点和文本编码数据;
2)利用路径推理器从当前实体节点et的所有可到达的路径中选择一条作为下一步的动作at;
3)利用状态转换函数对当前节点的状态进行转换:
f(st,at)=(ei+1,er,ci)
4)在训练的过程中,如果模型产生的路径到达了目标实体,那么模型会收到一个正向奖励,值为+2;否则,会收到一个负向奖励,值为0,该奖励仅在生成推理路径后获得,因此该奖励为延时奖励;本发明通过设定q值来将此奖励转换为每一个时间步的累积折扣奖励,用于计算模型的损失,转换方法是最后一个非实体节点倒序开始,第一个节点及其后面的节点设为奖励值,前一个节点累积折扣奖励是后一个节点的q倍;
5)计算迭代得到所有推理路径,并计算每条推理路径的奖励值,选取其中奖励值最高的推理路径作为用户意图路径,所述用户意图路径指向的知识图谱结果即为自动问答结果。
下面通过一个算法实验来说明本发明的具体实施方式,并对发明的处理方法进行测试。本发明算法的硬件测试环境部署在Pytorch深度学习框架中,处理器为Inter(R)Core(TM)i5-7300HQ CPU@2.50GHZ,显卡为GeForce GTX1040,内存为16G,开发环境为python3.6,开发工具为Anaconda科学计算库;对比算法模型为基于对话编码器的问答模型,基于单词级别循环神经网络模型以及BERT模型。
在本发明所述算法实验中,数据集为主要来自于医疗网站的医疗数据、手工构建的问题数据和Simple Question简单问答对数据集,Simple Question简单问答对数据集是基于Free Base知识库的基准数据集,提供了一组单一关系问题,每个问题附有一个的答案,是当前大多数问答系统测试使用的基准数据集。本发明将数据集中的问题数据分别输入到训练模型中,将所生成的答案同训练集中的答案进行匹配,匹配结果记为问答模型的正确率。
根据实验结果,基于对话编码器的问答模型的知识问答正确率为68.14%,基于单词级别循环神经网络模型的知识问答正确率为71.32%,BERT模型的医疗知识问答正确率为78.34%,本发明所述算法的知识问答正确率为83.14%,相较于对比算法,本发明所提出的基于知识图谱的医疗自动问答系统构建方法具有更高的医疗领域问答正确率。
发明还提供一种基于知识图谱的医疗自动问答系统。参照图2所示,为本发明一实施例提供的基于知识图谱的医疗自动问答系统的内部结构示意图。
在本实施例中,所述基于知识图谱的医疗自动问答系统1至少包括医疗知识获取装置11、医疗知识处理器12、医疗问答系统构建装置13,通信总线14,以及网络接口15。
其中,医疗知识获取装置11可以是PC(Personal Computer,个人电脑),或者是智能手机、平板电脑、便携计算机等终端设备,也可以是一种服务器等。
医疗知识处理器12至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。医疗知识处理器12在一些实施例中可以是基于知识图谱的医疗自动问答系统1的内部存储单元,例如该基于知识图谱的医疗自动问答系统1的硬盘。医疗知识处理器12在另一些实施例中也可以是基于知识图谱的医疗自动问答系统1的外部存储设备,例如基于知识图谱的医疗自动问答系统1上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,医疗知识处理器12还可以既包括基于知识图谱的医疗自动问答系统1的内部存储单元也包括外部存储设备。医疗知识处理器12不仅可以用于存储安装于基于知识图谱的医疗自动问答系统1的应用软件及各类数据,还可以用于暂时地存储已经输出或者将要输出的数据。
医疗自动问答构建装置13在一些实施例中可以是一中央处理器(CentralProcessingUnit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行医疗知识处理器12中存储的程序代码或处理数据,例如医疗自动问答构建程序指令等。
通信总线14用于实现这些组件之间的连接通信。
网络接口15可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该系统1与其他电子设备之间建立通信连接。
可选地,该系统1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在基于知识图谱的医疗自动问答系统1中处理的信息以及用于显示可视化的用户界面。
图2仅示出了具有组件11-15以及基于知识图谱的医疗自动问答系统1,本领域技术人员可以理解的是,图1示出的结构并不构成对基于知识图谱的医疗自动问答系统1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在图2所示的装置1实施例中,医疗知识处理器12中存储有医疗自动问答构建程序指令;医疗自动问答构建装置13执行医疗知识处理器12中存储的医疗自动问答构建程序指令的步骤,与基于知识图谱的医疗自动问答系统构建方法的实现方法相同,在此不作类述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有医疗自动问答构建程序指令,所述医疗自动问答构建程序指令可被一个或多个处理器执行,以实现如下操作:
对医疗领域知识图谱中的实体、关系以及属性进行预定义;
获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;
利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;
利用对话编码器将用户的对话文本进行编码,得到对话文本编码数据;
利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径,意图路径所指向的知识图谱结果即为自动问答结果。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述方法包括:
对医疗领域知识图谱中的实体、关系以及属性进行预定义;
获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;
利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;
利用对话编码器将用户的对话文本进行编码,得到对话文本编码数据;
利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径,意图路径所指向的知识图谱结果即为自动问答结果。
2.如权利要求1所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述定义医疗领域知识图谱中的实体、关系以及属性,包括:
构建11种知识图谱实体类型以及8种知识图谱属性类型以完成医疗知识图谱实体关系的设计,所述知识图谱实体类型包括:疾病、症状、部位、患者、诊断项目、医疗科室、医生、医院、治疗、饮食以及运动,其中疾病、症状、部位、患者属于确定病情关系,诊断项目、医疗科室、医生、医院、治疗属于诊断治疗关系,治疗、饮食以及运动属于日常护理关系;
所述知识图谱属性类型包括:疾病名称、疾病介绍、病因、治疗方式、治疗概率、预防措施、治愈概率、易感人群以及日常护理。
3.如权利要求2所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述利用数据自动标注算法对医疗领域数据进行标注利用数据自动标注算法对医疗领域数据进行标注,包括:
1)将预定义的医疗领域知识图谱与医疗领域数据对齐,对于医疗领域数据中含有知识图谱实体的数据,将该数据归类到对应的实体对中,得到共实体的数据集;
2)对于共实体数据集,在知识图谱中筛选对应的关系作为关系特征词,人工构建这些关系特征词的同义扩展词表;
3)依次将共实体的数据集中的数据与相应的关系特征词及扩展词进行匹配,如果数据集中的数据存在相应的关系特征词或者同义扩展词,则标注该数据,同时将该数据加入到标注数据集M1中,否则不标注该数据,同时将该数据加入到未标注数据集U1中;
4)将共实体的数据集对应的实体关系三元组(E1,R,E2)按照格式“E1的R是E2”拼接成标准句子S;
5)利用余弦相似度算法分别计算标注数据集M1中的句子与标准句子S的相似度,选择第二小的相似度值作为相似度阈值;
6)分别将未标注数据集U1中的句子与标准句子S计算句子相似度,如果该句子相似度达到了相似度阈值,则标注该句子,同时将该句子加入到标注数据集M2中,否则不标注该句子,同时将该句子加入到未标注数据集U2中;
7)将未标注数据集U2作为未标注数据,将标注数据集M1与标注数据集M2的并集作为标注数据,最终输出标注数据。
4.如权利要求3所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述利用知识图谱构建模型对所述标注数据进行知识图谱的构建,包括:
1)将标注了实体的数据作为知识图谱构建模型的输入;
2)在表示层中将标注数据转换为低维向量,每个单词可以通过查看词向量库得到其对应的向量表示,其中标注数据中的每个实体都有一个相对于实体1的距离值和一个相对于实体2的距离值,两个距离值通过查看位置向量矩阵来得到其向量表示,位置向量矩阵中的参数在训练过程中不断优化;
3)使用孪生网络结构将两个标注数据作为输入,两个标注数据分别通过表示层和双向长短时记忆网络层得到其对应的向量,标注数据Si的输出向量为oi,标注数据Sj的输出向量为oj,并使用欧式距离来衡量两个输出向量之间的距离,记为dist(oi,oj);
4)利用两向量之间的距离值来衡量两个标注数据中所包含的实体间的关系是否是同一种关系,将同属于一种关系的实体所对应的标注数据归为一类,以将标注数据划分为若干类,从而构成知识图谱。
5.如权利要求4所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述知识图谱构建模型的训练过程为:
对于训练集中关系类型为ri的句子Si,需要在训练集中选择一个关系类型为rj的句子Sj与之组成一对,若两个句子的关系类型相同,即ri=rj,则构成一个正例对,否则则构成一个负例对,并用标签label来表示两者是否属于同一种关系,对于正例对则label为0,对于负例对则label为1,且正例对和负例对的数量比例为1比1;
所述训练模型的损失函数为:
其中:
dist(oi,oj)为两个输出向量之间的欧式距离;
在训练过程中,通过不断调整模型的参数使得如果两个句子属于同一种关系,它们的输出向量之间的距离就较小,反之则较大。
6.如权利要求5所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述利用对话编码器将用户的对话文本进行编码,包括:
1)提取出用户对话文本中所有词的集合,然后对这些词构建索引,并随机初始化这些词的嵌入矩阵使得每一个词都对应着一个嵌入向量,其中,nω为词的数量,eω为词嵌入向量的长度,依据词嵌入矩阵Eω将用户的对话文本中所有的词转换为对应的词嵌入向量,其中词向量转换后的第i个用户对话文本表示为{ωi1,...,ωin},ωih为第i个用户对话文本中第h个词对应的词向量;
2)将词嵌入向量通过双向GRU模型中,生成每个词对应的向量,将两个双向单元对应的向量进行串接,生成第i轮句子的编码ui:
ui=Bi-GRU(ωi1,...,ωin)
3)利用上下文编码器将第i轮对话的编码ui及其前面所有轮的对话文本编码进行整合,生成每一轮对话对应的上下文嵌入向量ci,即对话文本编码数据。
7.如权利要求6所述的一种基于知识图谱的医疗自动问答系统构建方法,其特征在于,所述利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,包括:
1)在t时刻,使用状态对当前可观察到的环境进行编码,当前可观察到的环境为st=(et,er,ci)∈ε,其中et∈ε表示在t时刻属于知识图谱的实体节点,ε表示知识图谱,et表示实体节点,er,ci分别表示根节点和文本编码数据;
2)利用路径推理器从当前实体节点et的所有可到达的路径中选择一条作为下一步的动作at;
3)利用状态转换函数对当前节点的状态进行转换:
f(st,at)=(ei+1,er,ci)
4)在训练的过程中,模型产生的路径到达了目标实体,模型会收到一个正向奖励,值为+2;否则,会收到一个负向奖励,值为0,该奖励仅在生成推理路径后获得,因此该奖励为延时奖励;本发明通过设定q值来将此奖励转换为每一个时间步的累积折扣奖励,用于计算模型的损失,转换方法是最后一个非实体节点倒序开始,第一个节点及其后面的节点设为奖励值,前一个节点累积折扣奖励是后一个节点的q倍;
5)计算迭代得到所有推理路径,并计算每条推理路径的奖励值,选取其中奖励值最高的推理路径作为用户意图路径,所述用户意图路径指向的知识图谱结果即为自动问答结果。
8.一种基于知识图谱的医疗自动问答系统,其特征在于,所述系统包括:
医疗知识获取装置,用于获取医疗领域数据,根据所预定义的医疗领域知识图谱,利用数据自动标注算法对医疗领域数据进行标注;
医疗知识处理器,用于利用知识图谱构建模型对所述标注数据进行知识图谱的构建,得到医疗领域知识图谱;
医疗问答系统构建装置,用于利用对话编码器将用户的对话文本进行编码,利用基于知识图谱的强化学习网络对文本编码数据进行路径推断,得到用户的意图路径。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有医疗自动问答构建程序指令,所述医疗自动问答构建程序指令可被一个或者多个处理器执行,以实现如权利要求1至7中任一项所述的一种构建基于知识图谱的医疗自动问答系统的实现步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010921733.4A CN112071429A (zh) | 2020-09-04 | 2020-09-04 | 一种基于知识图谱的医疗自动问答系统构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010921733.4A CN112071429A (zh) | 2020-09-04 | 2020-09-04 | 一种基于知识图谱的医疗自动问答系统构建方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112071429A true CN112071429A (zh) | 2020-12-11 |
Family
ID=73666514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010921733.4A Withdrawn CN112071429A (zh) | 2020-09-04 | 2020-09-04 | 一种基于知识图谱的医疗自动问答系统构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112071429A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112927810A (zh) * | 2021-03-23 | 2021-06-08 | 崔剑虹 | 基于大数据的智慧医疗响应方法及智慧医疗云计算系统 |
CN113268610A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的意图跳转方法、装置、设备及存储介质 |
CN113656569A (zh) * | 2021-08-24 | 2021-11-16 | 电子科技大学 | 一种基于上下文信息推理的生成式对话方法 |
CN116701609A (zh) * | 2023-07-27 | 2023-09-05 | 四川邕合科技有限公司 | 基于深度学习的智能客服问答方法、系统、终端及介质 |
-
2020
- 2020-09-04 CN CN202010921733.4A patent/CN112071429A/zh not_active Withdrawn
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112927810A (zh) * | 2021-03-23 | 2021-06-08 | 崔剑虹 | 基于大数据的智慧医疗响应方法及智慧医疗云计算系统 |
CN113268610A (zh) * | 2021-06-22 | 2021-08-17 | 中国平安人寿保险股份有限公司 | 基于知识图谱的意图跳转方法、装置、设备及存储介质 |
CN113268610B (zh) * | 2021-06-22 | 2023-10-03 | 中国平安人寿保险股份有限公司 | 基于知识图谱的意图跳转方法、装置、设备及存储介质 |
CN113656569A (zh) * | 2021-08-24 | 2021-11-16 | 电子科技大学 | 一种基于上下文信息推理的生成式对话方法 |
CN113656569B (zh) * | 2021-08-24 | 2023-10-13 | 电子科技大学 | 一种基于上下文信息推理的生成式对话方法 |
CN116701609A (zh) * | 2023-07-27 | 2023-09-05 | 四川邕合科技有限公司 | 基于深度学习的智能客服问答方法、系统、终端及介质 |
CN116701609B (zh) * | 2023-07-27 | 2023-09-29 | 四川邕合科技有限公司 | 基于深度学习的智能客服问答方法、系统、终端及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106980683B (zh) | 基于深度学习的博客文本摘要生成方法 | |
CN106682397B (zh) | 一种基于知识的电子病历质控方法 | |
CN112071429A (zh) | 一种基于知识图谱的医疗自动问答系统构建方法 | |
CN110472229A (zh) | 序列标注模型训练方法、电子病历处理方法及相关装置 | |
WO2021042516A1 (zh) | 命名实体识别方法、装置及计算机可读存储介质 | |
CN113724882B (zh) | 基于问诊会话构建用户画像的方法、装置、设备和介质 | |
CN112256828A (zh) | 医学实体关系抽取方法、装置、计算机设备及可读存储介质 | |
CN110287337A (zh) | 基于深度学习和知识图谱获取医学同义词的系统及方法 | |
CN111368094A (zh) | 实体知识图谱建立、属性信息获取、门诊分诊方法及装置 | |
CN113704428B (zh) | 智能问诊方法、装置、电子设备及存储介质 | |
CN111145913B (zh) | 基于多重注意力模型的分类方法、装置及设备 | |
CN111540470B (zh) | 一种基于bert迁移学习的社交网络抑郁倾向检测模型及其训练方法 | |
CN116030944A (zh) | 一种医疗咨询信息的推荐方法及系统 | |
CN112000778A (zh) | 一种基于语义识别的自然语言处理方法、装置和系统 | |
CN115438674A (zh) | 实体数据处理、实体链接方法、装置和计算机设备 | |
CN116821373A (zh) | 基于图谱的prompt推荐方法、装置、设备及介质 | |
CN110852071A (zh) | 知识点检测方法、装置、设备及可读存储介质 | |
CN108875024B (zh) | 文本分类方法、系统、可读存储介质及电子设备 | |
CN117828024A (zh) | 一种插件检索方法、装置、存储介质及设备 | |
US11783244B2 (en) | Methods and systems for holistic medical student and medical residency matching | |
US20240203569A1 (en) | Intelligent triage method and device, storage medium and electronic device | |
CN114443818A (zh) | 一种对话式知识库问答实现方法 | |
CN114417016A (zh) | 一种基于知识图谱的文本信息匹配方法、装置及相关设备 | |
CN114155957A (zh) | 文本确定方法、装置、存储介质及电子设备 | |
CN113704421A (zh) | 信息检索方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20201211 |
|
WW01 | Invention patent application withdrawn after publication |