一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

病历漏诊检测方法、装置、电子设备和存储介质与流程

2022-03-26 06:39:24 来源:中国专利 TAG:


1.本发明涉及自然语言处理技术领域,尤其涉及一种病历漏诊检测方法、装置、电子设备和存储介质。


背景技术:

2.漏诊是一种常见的医疗过错行为,指在治疗过程中未能对某些疾病及时做出诊断的行为。漏诊会直接影响医疗保险报销,严重时还会造成医疗隐患,威胁患者生命安全。
3.针对漏诊问题,多依赖医生对每份病历进行检测,但是漏诊问题的筛查要求操作人员具有较高的专业素养,必须由专业医生执行,医院难以承担如此庞大的人力资源投入,且人工检测同样可能由于检测医生的疏忽发现纰漏,漏诊检测的可靠性和准确性不高。


技术实现要素:

4.本发明提供一种病历漏诊检测方法、装置、电子设备和存储介质,用以解决现有技术中人工进行病历漏诊检测可靠性、准确性差、成本高的问题。
5.本发明提供一种病历漏诊检测方法,包括:
6.确定待检测的病历文本;
7.对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;
8.基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
9.根据本发明提供的一种病历漏诊检测方法,所述对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病,包括:
10.对所述病历文本进行疾病命名体识别,得到显式候选疾病;
11.和/或,基于隐式挖掘规则,对所述病历文本进行医疗数据挖掘,得到隐式候选疾病,所述隐式挖掘规则包括诊疗信息与疾病的对应关系,所述诊疗信息包括检查项和/或药品;
12.基于所述显式候选疾病和/或所述隐式候选疾病,确定所述病历文本包含的候选疾病。
13.根据本发明提供的一种病历漏诊检测方法,所述隐式挖掘规则基于疾病知识文本和/或样本病历中诊疗信息与疾病之间的关联度确定。
14.根据本发明提供的一种病历漏诊检测方法,所述隐式挖掘规则基于如下步骤确定:
15.基于所述疾病知识文本中各诊疗信息与各种疾病之间的关联度,从所述疾病知识文本中筛选得到各候选诊疗疾病对,所述候选诊疗疾病对为候选的诊疗信息和疾病的组合;
16.基于所述样本病历中各候选诊疗疾病对中的诊疗信息与对应疾病之间的关联度,从各候选诊疗疾病对中筛选得到诊疗疾病对,作为所述隐式挖掘规则。
17.根据本发明提供的一种病历漏诊检测方法,所述基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测,包括:
18.确定所述病历文本中包含所述候选疾病的片段文本;
19.将所述候选疾病,以及所述候选疾病的片段文本输入至确诊检测模型中,由所述确诊检测模型基于所述片段文本确定所述候选疾病的上下文语义,并基于所述上下文语义进行确诊检测,得到所述确诊检测模型输出的确诊检测结果;
20.基于所述确诊检测结果,对所述病历文本进行漏诊检测;
21.其中,所述确诊检测模型基于样本病历中的样本疾病,以及所述样本疾病的样本片段文本和确诊标签训练得到。
22.根据本发明提供的一种病历漏诊检测方法,所述将所述候选疾病,以及所述候选疾病的片段文本输入至确诊检测模型中,由所述确诊检测模型基于所述片段文本确定所述候选疾病的上下文语义,并基于所述上下文语义进行确诊检测,得到所述确诊检测模型输出的确诊检测结果,包括:
23.将所述候选疾病和所述候选疾病的片段文本,以及所述片段文本在所述病历文本中的章节和/或所述候选疾病的疾病类型输入至确诊检测模型中,由所述确诊检测模型基于所述片段文本确定所述候选疾病的上下文语义,并结合所述上下文语义,以及所述章节和/或疾病类型进行确诊检测,得到所述确诊检测模型输出的确诊检测结果。
24.根据本发明提供的一种病历漏诊检测方法,所述基于所述确诊检测结果,对所述病历文本进行漏诊检测,包括:
25.将所述确诊检测结果为确诊疾病的候选疾病作为候选漏诊疾病;
26.将所述候选漏诊疾病和所述病历文本对应的各项诊断疾病分别输入至疾病表示模型,得到所述疾病表示模型输出的所述候选漏诊疾病的疾病表示,以及各项诊断疾病的疾病表示;所述疾病表示模型基于各疾病的临床名称,以及正例疾病编码标准名和负例临床名称训练得到;
27.基于所述候选漏诊疾病的疾病表示分别与各项诊断疾病的疾病表示之间的相似度,对所述候选漏诊疾病进行筛除。
28.根据本发明提供的一种病历漏诊检测方法,所述疾病表示模型的损失函数是基于各疾病的临床名称的预测表示与各疾病的正例疾病编码标准名的预测表示之间的相似度,以及各疾病的临床名称的预测表示与各疾病的负例临床名称的预测表示之间的相似度确定的;
29.所述疾病的临床名称的预测表示是训练过程中的疾病表示模型基于所述疾病的临床名称确定的,疾病编码标准名的预测表示训练过程中的疾病表示模型基于所述疾病编码标准名确定的。
30.本发明还提供一种病历漏诊检测装置,包括:
31.文本确定单元,用于确定待检测的病历文本;
32.医疗数据挖掘单元,用于对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;
33.漏诊检测单元,用于基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
34.本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种所述病历漏诊检测方法的步骤。
35.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述病历漏诊检测方法的步骤。
36.本发明提供的病历漏诊检测方法、装置、电子设备和存储介质,通过挖掘病历文本中的候选疾病,基于候选疾病对病历文本进行漏诊检测过程无需人工操作,省时省力,在提供病历漏诊检测效率的同时,基于候选疾病在病历文本中的上下文语义对病历文本进行漏诊检测,能够保证在病历文本复杂的书写情况下,实现准确可靠的漏诊检测。
附图说明
37.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图简要地说明,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1是本发明提供的病历漏诊检测方法的流程示意图之一;
39.图2是本发明提供的病历漏诊检测方法中步骤120的流程示意图;
40.图3是本发明提供的隐式挖掘规则确定方法的流程示意图;
41.图4是本发明提供的病历漏诊检测方法中步骤130的流程示意图;
42.图5是本发明提供的漏诊检测模型的结构示意图;
43.图6是本发明提供的病历漏诊检测方法中步骤133的流程示意图之一;
44.图7是本发明提供的疾病表示模型的训练示意图;
45.图8是本发明提供的病历漏诊检测方法中步骤133的流程示意图之二;
46.图9是本发明提供的病历漏诊检测方法的流程示意图之二;
47.图10是本发明提供的病历漏诊检测装置的结构示意图;
48.图11是本发明提供的电子设备的结构示意图。
具体实施方式
49.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
50.针对漏诊问题,多依赖医生对每份病历进行检测,但是漏诊问题要求较高的专业素养,必须由专业医生进行检测,医院难以承担如此庞大的人力资源投入,且人工检测同样可能由于检测医生的疏忽发现纰漏,漏诊检测的可靠性和准确性不高。
51.此外,针对漏诊问题,目前还考虑基于疾病知识库或者疾病预测思路进行自动化的漏诊检测。
52.其中,基于疾病知识库的漏诊检测,可以使用疾病知识库对病历中出现的疾病与出院诊断进行对比,将比对后不相同的疾病作为漏诊进行输出,然而考虑到病历实际的书
写情况非常复杂,病历中可能还存在发现疾病且并未确诊的情况,例如仅表示需要鉴别的某种疾病或者需要预防的某种继发疾病,仅基于疾病知识库比较,可能会遗漏此类疾病。
53.基于疾病预测思路的漏诊检测实质上是疾病预测,但是由于病历包含了大量的内容信息,疾病预测范围大,学习难度非常大。而且预测结果中的前n个往往是与出院诊断非常相似的疾病,此时并无必要进行漏诊检测。另外,由于深度学习方法本身的不可解释性,预测结果缺少判断依据,不符合漏诊检测实际应用场景,难以满足实际使用需求。
54.针对上述问题,本发明实施例提供了一种病历漏诊检测方法,图1是本发明提供的病历漏诊检测方法的流程示意图之一,如图1所示,该方法包括:
55.步骤110,确定待检测的病历文本。
56.具体地,病历文本是患者的病历所对应的文本。此处,待检测的病历文本即需要进行病历漏诊检测的病历文本,病历文本可以是根据患者自述和医生问询的情况录入的电子病历,也可以是对手写的纸质病历进行扫描或者拍摄后得到的病历图像进行光学字符识别ocr得到的文本,本发明实施例对此不作具体限定。
57.步骤120,对病历文本进行医疗数据挖掘,得到病历文本包含的候选疾病。
58.具体地,病历文本中包含了大量的病情描述和患者接受检查、诊疗的信息,同时也包含了医生诊断后得到的结论性的信息。其中,病情描述和患者接收检查、诊疗的信息,也可以侧面反映患者可以患有的疾病,而医生诊断得到的结论性信息,则能够直接体现患者患有的疾病。针对病历文本中包含的丰富而复杂的信息,可以通过对病历文本进行医疗数据挖掘,得到病历文本包含的候选疾病,此处的候选疾病为病历文本对应患者可能患有的疾病,候选疾病可能是直接记载在病历文本中,也可能没有直接记载在病历文本中,但是可以通过病历文本中包含的信息推导得到的隐含信息,本发明实施例对此不作具体限定。
59.此处,对病历文本进行医疗数据挖掘,可以将疾病名称作为命名体,对病历文本进行命名体识别得到,也可以预先收集疾病金标准或者特效药的信息,并将检查项或者药品名称作为命名体,对病历文本进行命名体识别得到病历文本中包含的检查项或者药品名称,并对应疾病金标准或者特效药的信息,由此确定病历文本中隐含的候选疾病。此外,还可以预先标注样本病历文本中包含的疾病,并据此训练医疗数据挖掘模型,使得医疗数据挖掘模型能够学习到病历文本与疾病之间的映射关系,从而能够针对输入的病历文本,输出其包含的疾病作为候选疾病。
60.步骤130,基于候选疾病在病历文本中的上下文语义,对病历文本进行漏诊检测。
61.具体地,考虑到病历文本本身书写情况的复杂性,例如一些候选疾病在病历文本中出现在“既往史”章节中,而实际上早已治愈,又例如一些候选疾病在病历文本中被确认为需进行预防或者进一步观察,并未确诊,而通过对病历文本进行医疗数据挖掘所得的候选疾病,可能是病历文本中明确诊断得到的,也可能是病历文本中指出需要预防或者观察的,还可能是病历文本中提及的曾经患有但是已经治愈的,上述情况均不属于漏诊。
62.因此,在基于候选疾病,对病历文本进行漏诊检测时,如果单纯将候选疾病与已经确诊的疾病列表进行对比,显然忽略了病历文本中复杂的信息,极易出现检测错误。对此,本发明实施例在进行漏诊检测时,结合了候选疾病在病历文本中的上下文语义,使得漏诊检测能够参考到病历文本中与候选疾病相关的语义信息,由此排除候选疾病属于病历文本中明确诊断得到的、或者未确诊需预防观察的、或者已治愈等情况,从而得到真实的漏诊情
况。
63.进一步地,候选疾病在病历文本中的上下文语义,可以通过定位病历文本中包含候选疾病或者候选疾病相关信息的片段文本,并对片段文本进行语义抽取得到,在得到候选疾病在病历文本中的上下文语义之后,即可基于上下文语义,判断该候选疾病在病历文本中是否漏诊。此处,语义抽取可以通过预先训练好的语言模型实现,例如可以通过bert(bidirectional encoder representation from transformers)模型进行语义抽取,或者可以通过transformer模型中的编码部分进行语义编码。
64.此外,还可以在对片段文本进行语义抽取的基础上,结合片段文本本身在病历文本中所处的章节位置、候选疾病自身的特征,例如是否可治愈等,判断该候选疾病在病历文本中是否漏诊,本发明实施例对此不作具体限定。
65.本发明实施例提供的方法,通过挖掘病历文本中的候选疾病,基于候选疾病对病历文本进行漏诊检测过程无需人工操作,省时省力,在提供病历漏诊检测效率的同时,基于候选疾病在病历文本中的上下文语义对病历文本进行漏诊检测,能够保证在病历文本复杂的书写情况下,实现准确可靠的漏诊检测。
66.在实际病历中,漏诊通常可以分为两种情况:一为显式漏诊,二为隐式漏诊。显式漏诊指医生在治疗过程中实际已经做出了相应诊断,但是未在出院诊断中进行记录。隐式漏诊指医生在治疗过程中发现但未给出相应诊断,主要包括两种情况:1)进行了实际治疗,但是未给出相应诊断,例如使用了某些特效药;2)辅助检查中已经发现了某些疾病判断依据,但是未给出相应诊断。针对此两种不同的情况,基于上述实施例,图2是本发明提供的病历漏诊检测方法中步骤120的流程示意图,如图2所示,步骤120分别对两种情况下可能存在漏诊的疾病进行了挖掘,步骤120包括:
67.步骤121,对病历文本进行疾病命名体识别,得到显式候选疾病。
68.具体地,针对显式漏诊的情况,病历文本中通常对应有明确的疾病诊断记载,因此可以直接对病历文本进行疾病命名体识别,从而将识别所得的疾病命名体作为可能存在漏诊问题的显式候选疾病。
69.此处进行疾病命名体识别,可以通过医学领域的ner(named entity recognition,命名实体识别)模型实现,也可以结合预先收集得到的样本病历以及样本病历中标注好的疾病名称,对通用领域的ner模型进行优化训练,从而应用优化训练好的ner模型进行疾病命名体识别,本发明实施例对此不作具体限定。
70.和/或,步骤122,基于隐式挖掘规则,对病历文本进行医疗数据挖掘,得到隐式候选疾病,隐式挖掘规则包括诊疗信息与疾病的对应关系,所述诊疗信息包括检查项和/或药品。
71.具体地,针对隐式漏诊的情况,病历文本中不一定存在隐式漏诊疾病的明确记载,更多的可能是病历文本中存在一些诊疗信息的记载,而通过这些诊疗信息可以直接推断得到患者患有的疾病,此处的诊疗信息可以是患者用药的药品名称,也可以是患者接受的检查项。
72.而对于此类情况,可以应用隐式挖掘规则,对病历文本进行医疗数据挖掘,从而将挖掘所得的疾病作为可能存在漏诊问题的隐式候选疾病。此处,隐式挖掘规则可以是预先设定好的,也可以是对医学领域的知识文本进行对应关系挖掘得到的,例如可以对知识文
本进行实体识别,确定知识文本中包含的检查项实体、药品实体和疾病实体,通过统计检查项实体和疾病实体的共现概率,或者药品实体与疾病实体的共现概率,确定检查项与疾病的对应关系,或者药品与疾病的对应关系,又例如可以根据样本知识文本以及在样本知识文本中标注的诊疗信息与疾病的关系标签,训练关系抽取模型,并基于关系抽取模型抽取海量知识文本中包含的诊疗信息与疾病的对应关系,由此构建隐式挖掘规则。此处,隐式挖掘规则可以包括检查项与疾病的对应关系,此处检查项所对应的疾病,即根据该检查项可以直接区分患者是否患有的疾病。检查项与疾病的对应关系,与诊断金标准一致,诊断金标准是指临床医学界公认的诊断疾病的最可靠方法,用于准确区分受试对象是否为某病患者。在应用诊断金标准进行医疗数据挖掘时,可以获取病历文本中记载的患者接受的检查项,如果其中某项检查项为诊断金标准中用于区分是否患有某种疾病的项目,则可以将该种疾病作为隐式候选疾病。
73.此外,隐式挖掘规则还可以包括药品与疾病的对应关系,此处药品所对应的疾病,即该药品专用于治疗的疾病。药品与疾病的对应关系,与特效药信息一致,特效药信息用于反映专用于治疗某些特定疾病的特效药,此处的特效药可以理解为只用于某种疾病的药品。在应用特效药信息进行医疗数据挖掘时,可以获取病历文本中记载的患者使用的各种药品,如果其中某个药品为特效药信息中用于治疗某种疾病的特效药时,则可以将该种疾病作为隐式候选疾病。
74.再者,隐式挖掘规则还可以既包括检查项与疾病的对应关系也包括药品与疾病的对应关系,在进行医疗数据挖掘时,可以获取病历文本中记载的患者接受的检查项和患者使用的各种药品,如果其中某项检查项为诊断金标准中用于区分是否患有某种疾病的项目,则可以将该种疾病作为隐式候选疾病,如果其中某个药品为特效药信息中用于治疗某种疾病的特效药时,亦可以将该种疾病作为隐式候选疾病。
75.需要说明的是,步骤121和步骤122可以择一执行,也可以均执行,两者均需执行的情况下,步骤121可以在步骤122之前或者之后执行,也可以与步骤122同步执行。
76.步骤123,基于显式候选疾病和/或隐式候选疾病,确定病历文本包含的候选疾病。
77.具体地,当仅执行步骤121时,可以将通过步骤121得到的所有显式候选疾病均作为病历文本中包含的候选疾病,当仅执行步骤122时,可以将通过步骤122得到的所有隐式候选疾病均作为病历文本中包含的候选疾病;当既执行步骤121也执行步骤122时,可以将此两者得到的所有显式候选疾病和所有隐式候选疾病,作为病历文本中包含的候选疾病,例如可以将显式候选疾病和隐式候选疾病均置入候选疾病集合,再对候选疾病集合中的包含的疾病进行去重,也可以先将所有显式候选疾病置入候选疾病集合,再逐个将隐式候选疾病与候选疾病集合中已有的候选疾病进行相似度匹配,如果存在与隐式候选疾病相似度极高的候选疾病,则删除该隐式候选疾病,否则将该隐式候选疾病置入候选疾病集合。
78.本发明实施例提供的方法,通过分别进行显示候选疾病和隐式候选疾病的挖掘,保证了基于病历文本的医疗数据挖掘的全面性,避免后续进行病历漏诊检测时遗漏候选疾病。
79.实际操作中,对隐式候选疾病进行挖掘所应用的隐式挖掘规则的构建存在困难,具体是疾病金标准与特效药收集较为困难:普通医学知识库往往不包含这类型知识;而由于医生所获取到的知识也存在片面性,难以直接通过医生标注的方式获得这类型知识。对
此,基于上述任一实施例,隐式挖掘规则基于疾病知识文本和/或样本病历中诊疗信息与疾病之间的关联度确定。
80.具体地,疾病知识文本可以是疾病知识库中的文本,疾病知识库是疾病为中心,包含症状、辅助检查、实验室检查、药品、手术等信息的信息数据库。疾病知识文本可以涵盖疾病诊断所需的检查项,也可以涵盖疾病治疗所需的药品,因此通过挖掘疾病知识文本中包含的检查项与疾病之间的关联度,即可得到专用于诊断某种疾病的检查项,从而得到诊断金标准,通过挖掘疾病知识文本中药品与疾病之间的关联度,即可挖掘得到专用于治疗某种疾病的药品,从而得到特效药信息。
81.样本病历是预先收集得到的病历文本,样本病历中涵盖了真实的诊疗过程中患者接受的检查项、由此诊断得到的疾病和用于疾病治疗的药品,因此通过挖掘样本病历中包含的检查项与疾病之间的关联度,即可得到专用于诊断某种疾病的检查项,从而得到诊断金标准,通过挖掘样本病历中药品与疾病之间的关联度,即可挖掘得到专用于治疗某种疾病的药品,从而得到特效药信息。
82.进一步地,检查项与疾病之间的关联度,可以理解为检查项名称与疾病名称的共现概率,也可以理解为患者进行某种检查项后确诊患有某种疾病的概率,药品与疾病之间的关联度,可以理解为药品名称与疾病名称的共现概率,也可以理解为使用某种药品时患有某种疾病的概率。
83.本发明实施例中,应用对疾病知识文本和/或样本病历中诊疗信息与疾病之间的关联度构建隐式挖掘规则,保证了隐式挖掘规则的全面性和可靠性。由此构建的隐式挖掘规则,能够避免医生的认知偏差,更具鲁棒性。
84.基于上述任一实施例,可以基于疾病知识文本中各诊疗信息与各种疾病的关联度,从疾病知识文本中筛选得到各候选诊疗疾病对,并基于各候选诊疗疾病对,确定隐式挖掘规则。此处,候选诊疗疾病对为候选的诊疗信息和疾病的组合。
85.此处,诊疗信息可以是检查项,也可以是药品。下述操作均可直接应用于检查项或者药品,以实现隐式挖掘规则的构建。
86.具体地,挖掘统计所得的疾病知识文本中包含的诊疗信息和疾病之间的关联度,即疾病知识文本中各诊疗信息下患各种疾病的概率,此处所指的概率可以是疾病知识文本中直接记载的,也可以根据疾病知识文本中统计的相关数据计算得到的,本发明实施例不对此作具体限定。
87.诊疗信息为任一检查项时,疾病知识文本中任一诊疗信息下患任一种疾病的概率可以标识为p(diseasej|auxiliaryi),即接受第i种检查项auxiliaryi时患者患有第j种疾病diseasej的概率,其中auxiliaryi和diseasej可以构成一对,如p(diseasej|auxiliaryi)大于预先设置的金标准判断阈值,则可以将auxiliaryi和diseasej作为一对候选诊疗疾病对,此处金标准判断阈值可以设置为0.95、0.9等,候选诊疗疾病对可以理解为通过疾病知识文本挖掘所得的诊断金标准,即检查项与疾病的对应关系。
88.诊疗信息为任一药品时,疾病知识文本中任一诊疗信息下患任一种疾病的概率可以标识为p(diseasej|drugi),即使用第i种药品drugi时患者患有第j种疾病diseasej的概率。其中drugi和diseasej可以构成一对,如p(diseasej|drugi)大于预先设置的特效药判断阈值,则可以将drugi和diseasej作为一对候选诊疗疾病对,此处,特效药判断阈值可以设置
为0.95、0.9等,候选诊疗疾病对可以理解为通过疾病知识文本挖掘所得的特效药信息,即药品与疾病的对应关系。
89.由此得到的候选诊疗疾病对,可以直接用于构建隐式挖掘规则。
90.基于上述任一实施例,图3是本发明提供的隐式挖掘规则确定方法的流程示意图,如图3所示,隐式挖掘规则基于如下步骤确定:
91.步骤310,基于疾病知识文本中各诊疗信息与各种疾病之间的关联度,从疾病知识文本中筛选得到各候选诊疗疾病对,候选诊疗疾病对为候选的诊疗信息和疾病的组合。
92.此处,诊疗信息可以是检查项,也可以是药品。下述操作均可直接应用于检查项或者药品,以实现隐式挖掘规则的构建。
93.具体地,挖掘统计所得的疾病知识文本中包含的诊疗信息和疾病之间的关联度,即疾病知识文本中各诊疗信息下患各种疾病的概率,此处所指的概率可以是疾病知识文本中直接记载的,也可以根据疾病知识文本中统计的相关数据计算得到的,本发明实施例不对此作具体限定。
94.诊疗信息为任一检查项时,疾病知识文本中任一诊疗信息下患任一种疾病的概率可以标识为p(diseasej|auxiliaryi),即接受第i种检查项auxiliaryi时患者患有第j种疾病diseasej的概率,其中auxiliaryi和diseasej可以构成一对,如p(diseasej|auxiliaryi)大于预先设置的金标准判断阈值,则可以将auxiliaryi和diseasej作为一对候选诊疗疾病对,此处的候选诊疗疾病对可以理解为通过疾病知识文本挖掘所得的诊断金标准,即检查项与疾病的对应关系。
95.诊疗信息为任一药品时,疾病知识文本中任一诊疗信息下患任一种疾病的概率可以标识为p(diseasej|drugi),即使用第i种药品drugi时患者患有第j种疾病diseasej的概率。其中drugi和diseasej可以构成一对,如p(diseasej|drugi)大于预先设置的特效药判断阈值,则可以将drugi和diseasej作为一对候选诊疗疾病对,此处的候选诊疗疾病对可以理解为通过疾病知识文本挖掘所得的特效药信息,即药品与疾病的对应关系。
96.步骤320,基于样本病历中各候选诊疗疾病对中的诊疗信息与对应疾病之间的关联度,从各候选诊疗疾病对中筛选得到诊疗疾病对,作为隐式挖掘规则。
97.具体地,考虑到知识库中知识有局限,例如某些药物仅与某些疾病有关联可能仅因为这些药物比较少见,但并不是这些疾病的特效药,因此通过挖掘疾病知识文本所得的候选诊疗疾病对,还需要通过样本病历作进一步验证。
98.样本病历中,任一候选诊疗疾病对中的诊疗信息与对应疾病之间的关联度,可以表现为样本病历中该候选诊疗疾病对的共现概率,也可以表现为样本病历中任一候选诊疗疾病对中的诊疗信息下患对应疾病的概率。
99.样本病历中任一候选诊疗疾病对的共现概率,即该候选诊疗疾病对中的诊疗信息与疾病这一组合在各样本病历中的共现比例,可以理解为该候选诊疗疾病的支持度,共现比例越高,则共现概率越大,共现情况越密集,该候选诊疗疾病对的存在越普遍,支持度越高,被作为隐式挖掘规则的概率越高;相反,共现比例越低,共现概率越低,共现情况越少,该候选诊疗疾病对的存在越不具备普遍性,支持度越低,被作为隐式挖掘规则的概率越低。
100.样本病历中任一候选诊疗疾病对中的诊疗信息下患对应疾病的概率,即其中的诊疗信息出现时,对应疾病出现的条件概率,可以理解为该候选诊疗疾病的置信度,条件概率
越高,则置信度越高,诊疗信息具有特异性的概率越高,该候选诊疗疾病对被作为隐式挖掘规则的概率越高;相反,条件概率越低,诊疗信息对应的不同疾病较多,置信度越低,诊疗信息具有特异性的概率越低,该候选诊疗疾病对被作为隐式挖掘规则的概率越低。
101.可以仅基于样本病历中各候选诊疗疾病对的共现概率,从各候选诊疗疾病对中筛选诊疗疾病对作为隐式挖掘规则,也可以仅基于样本病历中各候选诊疗疾病对中的诊疗信息下患对应疾病的概率,从各候选诊疗疾病对中筛选诊疗疾病对作为隐式挖掘规则,还可以参考上述两者,从各候选诊疗疾病对中筛选诊疗疾病对作为隐式挖掘规则,本发明数量对此不作具体限定。
102.本发明实施例提供的方法,通过疾病知识文本挖掘候选诊疗疾病对,并且在此基础上结合样本病历,对候选诊疗疾病对作进一步筛选,从而保证隐式挖掘规则的可靠性。
103.基于上述任一实施例,步骤320中,任一候选诊疗疾病对为(疾病,检查项)时,样本病历中任一候选诊疗疾病对的共现情况,具体可以是样本病历的辅助检查字段中该候选诊疗疾病对的共现情况。样本病历中任一候选诊疗疾病对中的检查项下患对应疾病的概率,具体可以是样本病历的辅助检查字段中该候选诊疗疾病对中的检查项下患对应疾病的概率。
104.此处,辅助检查字段中的检查项常以(检查项:疾病)的形式出现,表示根据检查项(包含化验和影像等类型)可以判断出存在相应疾病,两个检查项之间往往有明显的分割符号,例如“头颈部动脉血管成像:1.右侧大脑前动脉多发轻度狭窄2.左侧颈总动脉近分叉处轻度狭窄”,表示根据头颈部动脉血管成像的结果可诊断出存在“1.右侧大脑前动脉多发轻度狭窄”、“2.左侧颈总动脉近分叉处轻度狭窄”两种疾病。通过文本中一些固定模式及词表、疾病规范化工具可以从此处抽取出(头颈部血管成像,脑动脉狭窄),(头颈部血管成像,颈动脉狭窄)。样本病历中此处内容,可以作为疾病的检查项知识,用于计算候选诊疗疾病对的支持度和置信度,以此验证候选诊疗疾病对是否存在一定的普遍性和特异性。
105.候选诊疗疾病对的支持度,即候选诊疗疾病对的共现情况可以标识为:
106.support(diseasei,auxiliaryj)=#(diseasei,auxiliaryj)/#
107.其中,#(diseasei,auxiliaryj)表示所有样本病历中(疾病i,检查项j)在辅助检查字段之中的出现次数;#(diseasei,auxiliaryj)与#(auxiliaryj,diseasei)等价。#表示所有样本病历中辅助检查字段中现出的所有(疾病,检查项)的组合数量。
108.候选诊疗疾病对的置信度,即候选诊疗疾病对中的诊疗信息下患对应疾病的概率可以标识为:
109.confidence(diseasei,auxiliaryj)=#(diseasei,auxiliaryj)/#(auxiliaryj)
110.其中,#(auxiliaryj)表示检查项j在所有病历中辅助检查字段中出现的次数。
111.在计算得到(疾病,检查项)的支持度和置信度之后,可以根据预先设置的检查项的支持度阈值和置信度阈值,筛选支持度大于支持度阈值且置信度大于置信度阈值的(疾病,检查项)作为诊断金标准,从而实现准确可靠的诊断金标准的获取。此处为了准确性,避免因形式复杂造成规范化的错误,找到的诊断金标准均形式较为简单,例如:ct检查_尿酸盐结晶-》痛风。
112.基于上述任一实施例,步骤320中,任一候选诊疗疾病对为(疾病,药品)时,样本病历中任一候选诊疗疾病对的共现情况,具体可以是样本病历的主要诊断中该候选诊疗疾病
对的共现情况。样本病历中任一候选诊疗疾病对中的药品下患对应疾病的概率,具体可以是样本病历的主要诊断中该候选诊疗疾病对中的药品下患对应疾病的概率。
113.此处,主要诊断被认为是和本次住院相关的最严重、治疗费用最高、时间最长的疾病,本发明实施例中假设治疗过程中所有的治疗用药均与主要诊断存在一定关系。
114.候选诊疗疾病对的支持度,即候选诊疗疾病对的共现情况可以标识为:
115.support(diseasei,drugj)=#(diseasei,drugj)/#
116.候选诊疗疾病对的置信度,即候选诊疗疾病对中的诊疗信息下患对应疾病的概率可以标识为:
117.confidence(diseasei,drugj)=#(diseasei,drugj)/#(drugj)
118.其中,#表示全部样本病历中(病案首页-主要诊断,治疗过程-某种药品)的组合数量,#(diseasei,drugj)表示所有样本病历中候选疾病i作为主要诊断,药品j在治疗过程之中的统计次数。#(drugj)表示药品j在治疗过程中出现的次数。
119.在计算得到(疾病,药品)的支持度和置信度之后,可以根据预先设置的检查项的支持度阈值和置信度阈值,筛选支持度大于支持度阈值且置信度大于置信度阈值的(疾病,药品)作为特效药信息,从而实现准确可靠的特效药的获取。需要说明的是,此处用于筛选(疾病,药品)的支持度阈值和置信度阈值,与用于筛选(疾病,检查项)的支持度阈值和置信度阈值可以相同,也可以不同。此外,因实际临床上用药常有不局限于药品的适应症情况,故实际找到的特效药信息往往情况较为特殊,例如:开塞露-》便秘。
120.基于上述任一实施例,图4是本发明提供的病历漏诊检测方法中步骤130的流程示意图,如图4所示,步骤130包括:
121.步骤131,确定病历文本中包含候选疾病的片段文本;
122.步骤132,将候选疾病,以及候选疾病的片段文本输入至确诊检测模型中,由确诊检测模型基于片段文本确定候选疾病的上下文语义,并基于上下文语义进行确诊检测,得到确诊检测模型输出的确诊检测结果;
123.其中,确诊检测模型基于样本病历中的样本疾病,以及样本疾病的样本片段文本和确诊标签训练得到。
124.具体地,在完成针对病历文本的医疗数据挖掘之后,即可得到病历文本包含的候选疾病,在此基础上,可以从病历文本中定位中包含候选疾病的片段文本,此处的片段文本可以是一个分句,或者以候选疾病为中心的至少两个分句,或者一个语段等,本发明实施例对此不作具体限定。例如,候选疾病为“哮喘病”,候选疾病对应的片段文本可以是“需预防哮喘病的可能”。
125.在得到候选疾病的片段文本之后,可以将候选疾病及其片段文本一并输入至确诊检测模型。此处的输入方式,可以是分别输入候选疾病和片段文本,也可以是输入片段文本,并输入候选疾病在片段文本中的位置编码,本发明实施例对此不作具体限定。
126.确诊检测模型可以提取输入的片段文本的语义信息,由此确定输入的候选疾病的上下文语义,并基于上下文语义,判断该候选疾病在病历文本中是否确诊,从而输出候选疾病的确诊检测结果,即候选疾病为确诊疾病,或候选疾病未确诊。
127.在步骤132执行之前,还可以预先训练得到确诊检测模型,确诊检测模型的训练过程可以通过如下步骤实现:首先收集大量样本病历,标注样本病历中包含的样本疾病,并定
位样本疾病在样本病历中的样本片段文本,另外标注样本疾病是否为样本病历的确诊疾病。基于上述样本进行模型训练,从而得到确诊检测模型。
128.步骤133,基于确诊检测结果,对病历文本进行漏诊检测。
129.具体地,针对于确诊检测结果为已确诊的候选疾病,可以比对出院诊断中列出的疾病进行比对,从而判断是否存在漏诊。
130.此处,在将已确诊的候选疾病,与出院诊断中列出的疾病进行比对时,可以直接计算已确诊的候选疾病与出院诊断中列出的疾病的疾病名称相似度,如果出院诊断中存在疾病名称相似度大于相似度阈值的疾病,则确定候选疾病未漏诊,否则确定候选疾病为漏诊疾病;
131.还可以应用预先训练好的疾病表示模型,分别获取已确诊的候选疾病的疾病表示,以及出院诊断中列出的疾病的疾病表示,在此基础上计算已确诊的候选疾病与出院诊断中列出的疾病的疾病表示相似度,如果出院诊断中存在疾病表示相似度大于相似度阈值的疾病,则确定候选疾病未漏诊,否则确定候选疾病为漏诊疾病;
132.还可以应用样本疾病的正负疾病对,训练的疾病比对模型,此处样本疾病的正疾病对中包含同一疾病的两个疾病名称,负疾病对中包含两个不同疾病的名称,由此训练得到的疾病比对模型具备自动判断输入的两个疾病是否为同一种疾病的功能。将已确诊的候选疾病与出院诊断中列出的疾病输入至疾病比对模型,即可得到疾病比对模型输出的比对结果,比对结果为相同时,确定候选疾病未漏诊,比对结果为不同时,确定候选疾病为漏诊疾病。而针对确诊检测结果为未确诊的候选疾病,则可以直接判断为不存在漏诊。
133.本发明实施例提供的方法,通过候选疾病的片段文本,获取候选疾病的上下文语义进行确诊检测,从而在病历文本复杂的书写情况下,提高漏诊检测的可靠性。
134.基于上述任一实施例,步骤132包括:
135.将候选疾病和候选疾病的片段文本,以及片段文本在病历文本中的章节和/或候选疾病的疾病类型输入至确诊检测模型中,由确诊检测模型基于片段文本确定候选疾病的上下文语义,并结合上下文语义,以及章节和/或疾病类型进行确诊检测,得到确诊检测模型输出的确诊检测结果。
136.具体地,在确诊检测时,候选疾病在病历文本中所处的位置,对于候选疾病在病历文本中是否确诊存在较大的影响,例如病历文本的“既往史”中包含的疾病大多数情况不是本次确诊的疾病。因此在进行针对候选疾病的确诊检测时,不仅可以考虑候选疾病的上下文语义,还可以考虑候选疾病在病历文本中所处的位置,即片段文本在病历文本中的章节。
137.对应在针对确诊检测模型的输入阶段,可以在输入候选疾病和候选疾病的片段文本的同时,一并输入片段文本在病历文本中的章节,使得确诊检测模型在进行确诊检测时,可以参考到候选疾病的上下文语义以及片段文本的章节进行分析。此处,针对章节的输入,可以直接输入章节名称,也可以输入章节名称对应的编码,本发明实施例对此不作具体限定。
138.进一步地,片段文本在病历文本中的章节,可以根据结构化的病历文本中,各片段文本与病历文本中各章节之间的归属关系确定,也可以标记样本病历文本中各片段文本与章节之间的归属关系,据此训练章节识别模型,在得到章节识别模型之后,即可将片段文本输入到预先训练好的章节识别模型中,由章节识别模型对片段文本进行章节识别,从而得
到片段文本所属的章节。另外,由于疾病本身的性质影响,一些疾病是可以短期治愈的,而一些疾病需要较长的治疗周期,还有一些疾病可能无法治愈,例如外伤出血是可以短期治愈的,之前诊断外伤出血,本次病历文本中外伤出血的确诊不会继续存在,又例如脑梗塞无法治愈,上次确诊脑梗塞,此处病历文本中应依然存在脑梗塞的确诊。因此,在进行针对候选疾病的确诊检测时,不仅可以考虑候选疾病的上下文语义,还可以考虑候选疾病的疾病类型,此处的疾病类型用于反映疾病的持续性质,例如疾病类型可以是短期治愈或者长期治疗。
139.进一步地,候选疾病的疾病类型,可以根据预先设置的各种疾病与疾病类型的对应关系直接确定,也可以根据预先标注的样本疾病对应的疾病类型训练类型识别模型,在得到类型识别模型之后,即可将候选疾病的疾病名称输入到训练好的类型识别模型中,由类型识别模型对输入的候选疾病进行类型识别,从而得到候选疾病的疾病类型。
140.对应在针对确诊检测模型的输入阶段,可以在输入候选疾病和候选疾病的片段文本的同时,一并输入候选疾病的疾病类型,使得确诊检测模型在进行确诊检测时,可以参考到候选疾病的上下文语义以及疾病类型进行分析。此处,针对疾病类型的输入,可以直接输入疾病类型,也可以输入疾病类型对应的编码,本发明实施例对此不作具体限定。
141.此外,在针对确诊检测模型的输入阶段,还可以在输入候选疾病和候选疾病的片段文本的同时,一并输入片段文本在病历文本中的章节和候选疾病的疾病类型,使得确诊检测模型在进行确诊检测时,可以参考到候选疾病的上下文语义、片段文本在病历文本中的章节和疾病类型进行分析,从而得到更加可靠的确诊检测结果。
142.本发明实施例提供的方法,在确诊诊断过程中结合了候选疾病的片段文本在病历文本中的章节和/或候选疾病的疾病类型,使得确诊诊断过程中能够从章节上判断片段文本所描述的情况是否为与本次诊断相关,从疾病类型上判断候选疾病是否具备持续性,从而为候选疾病是否为本次诊断的确诊疾病提供更多的参考信息,有助于提高确诊检测的可靠性和准确性。
143.基于上述任一实施例,图5是本发明提供的确诊检测模型的结构示意图,如图5所示,确诊检测模型的输入包括候选疾病,例如“哮喘病”,候选疾病的片段文本,例如“需预防哮喘病的可能”,以及候选疾病的疾病类型和章节编码,输出为是否确诊的分类结果,若为确诊,则候选疾病可能存在漏诊,若非确诊,则候选疾病不存在漏诊。
144.其中,片段文本可以映射为字编码和位置编码两个部分,其中字编码表示片段文本中每个字的字向量,具体可以表示为h=[h0,...,hn],hi∈rs,其中hi为片段文本中第i个字的字向量,n为片段文本长度,s为编码维度。位置编码表示片段文本与候选疾病的相对位信息,例如图5中,位置编码具体是片段文本中的每个字到候选疾病字符的距离和方向,-1表示距离候选疾病字符1个字,且位于候选疾病字符的左侧,2表示距离候选疾病字符2个字,且位于候选疾病字符的右侧,0表示该字属于候选疾病字符。针对距离大于预先设置的某个阈值的情况,例如设置阈值为30,可以仍将位置编码设置为-30或者30。随后在训练过程中,如果学习到更优的位置编码,则可以将位置编码表示为p=[p0,...,pn],pi∈rs,其中。pi为第i个字的位置编码。
[0145]
图5中的章节编码表示为与字编码同一行的最右侧填充有斜线的方框,不同的章节可以对应不同的章节编码,此处的章节编码为维度为s的编码,可以直接拼接在字编码序
列的末尾,此时字编码序列长度为n 1。
[0146]
此外,针对输入的疾病类型,可以表示为维度为s的疾病类型编码的形式,疾病类型编码可以与片段文本中候选疾病的各个字符分别相加。
[0147]
此后,可以将片段文本的字编码(包括章节编码)与位置编码拼接获得上下文语义,其中每个字的表示为ei=[hi;pi],i=1,...,n 1,hi∈r
2s
。之后经过多层注意力编码器,对上下文语义进行编码,使候选疾病与上下文语义进行充分的交互,获取片段文本中与描述候选疾病是否确诊的信息,编码结果为t=[t0,...,tn],ti∈r
2s
。其中,多层注意力编码器可以选用transformer,以便于候选疾病对应编码与上下文语义、章节编码充分交互,最终在多层编码器输出结果中候选疾病对应编码可融合上下文语义、章节编码信息。
[0148]
之后将疾病名所对应位置的编码相加,获得疾病是否确诊表示d=∑
jhj
,hi∈r
2s
,其中j为疾病名所在的位置下标,即位置编码为0的部分。之后通过多层的全连接层进行非线性变换,最后一层参数可以是w∈rs×1,b∈r1,使用sigmoid激活函数。由此得到的输出结果为概率值,若输出值大于阈值,则候选疾病为确诊疾病,小于阈值则候选疾病非确诊疾病。
[0149]
上述确诊检测模型在训练时可以使用交叉熵作为损伤函数,adam方法进行优化,利用反向传播学习模型中各参数。
[0150]
基于上述任一实施例,步骤133中,在基于确诊检测结果,对病历文本进行漏诊检测时,可以针对确诊检测结果为已确诊的候选疾病,可以比对出院诊断中列出的疾病进行比对,从而判断是否存在漏诊。
[0151]
然而,由于自然语言本身的复杂性,同一种疾病的临床名称可能有多种不同的写法,例如“上呼吸道感染”和“上感”即同一种疾病的不同表示,简单进行匹配对比并不能用于判断已经在病历中确诊的疾病,是否出现在出院诊断的列表中。
[0152]
基于此,图6是本发明提供的病历漏诊检测方法中步骤133的流程示意图之一,如图6所示,步骤133包括:
[0153]
步骤1331,将确诊检测结果为确诊疾病的候选疾病作为候选漏诊疾病。
[0154]
步骤1332,将候选漏诊疾病和病历文本对应的各项诊断疾病分别输入至疾病表示模型,得到疾病表示模型输出的候选漏诊疾病的疾病表示,以及各项诊断疾病的疾病表示;疾病表示模型基于各疾病的临床名称,以及正例疾病编码标准名和负例临床名称训练得到。
[0155]
步骤1333,基于候选漏诊疾病的疾病表示分别与各项诊断疾病的疾病表示之间的相似度,对候选漏诊疾病进行筛除。
[0156]
具体地,确诊检测结果为确诊疾病的候选疾病,即可能存在漏诊风险的疾病,针对此类疾病,本发明实施例中记为候选漏诊疾病。
[0157]
为了避免从文本上机械比对,无法覆盖同一疾病的各种临床名称的情况,而导致漏诊检测虚警的问题,本发明实施例中预先训练的疾病表示模型,从而将需要进行比对的候选漏诊疾病和各项诊断疾病直接转换为疾病表示的形式,从而可以忽略临床名称的干扰,实现准确可靠的比对。此处,各项诊断疾病可以是出院诊断列表中的疾病。
[0158]
为了保证同一疾病的各种临床名称经过疾病表示模型可以得到一致的疾病表示,本发明实施例中借助了疾病编码为基准,利用同一疾病的各种临床名称与同一个疾病编码
的对应关系,使得同一疾病的各种临床名称的疾病表示均能够尽可能贴近该疾病的疾病编码的标准疾病名称,即疾病编码标准名的疾病表示,从而拉近同一疾病的各种临床名称的疾病表示之间的距离。此处的疾病编码可以是国际疾病分类(international classification of diseases,icd)编码,也可以是其他针对疾病进行分类的编码方式。
[0159]
对此,在执行步骤1332之前,还需要预先训练得到疾病表示模型,疾病表示模型的训练可以疾病表示模型基于各疾病的临床名称,以及正例疾病编码标准名和负例临床名称实现,此处,针对任意疾病的临床名称,其正例疾病编码即该疾病实际对应的疾病编码,正例疾病编码标准名即该疾病实际对应的疾病编码的标准疾病名称;其负例临床名称即与该临床名称分属不同疾病的临床名称,此处的负例临床名称可以是其他疾病在临床上多样化的名称,也可以是其他疾病对应疾病编码的标准疾病名称。
[0160]
具体在训练过程中,疾病表示模型可以针对各疾病的临床名称或者疾病编码标准名输出各疾病的临床名称或者疾病编码标准名的预测表示,针对各疾病的正例疾病编码标准名输出各疾病的正例疾病编码标准名的预测表示,针对各疾病的负例临床名称输出各疾病的负例临床名称的预测表示,此处的预测表示即训练过程中输出的表示向量。考虑到各疾病的临床名称及其正例疾病编码反映的是相同的疾病情况,可以在模型训练过程中,尽量缩小各疾病的临床名称的预测表示及其正例疾病编码标准名的预测表示之间的距离,相反地,各疾病的临床名称及其负例临床名称反映的是不同的疾病情况,可以在模型训练过程中,尽量拉大各疾病的临床名称的预测表示及其负例临床名称的预测表示之间的距离,由此训练得到的疾病表示模型,在针对相同疾病编码下的不同临床名称时进行疾病表示时,其输出的疾病表示都与该疾病编码标准名的疾病表示十分接近,因此同一疾病的不同临床名称所对应的疾病表示也能够忽略临床名称的干扰,反映疾病本身的特性。
[0161]
基于由此得到的候选漏诊疾病的疾病表示与各项诊断疾病的疾病表示,可以计算候选漏诊疾病的疾病表示分别与各项诊断疾病的疾病表示之间的相似度,此处候选漏诊疾病的疾病表示与任一项诊断疾病的疾病表示之间的相似度越高,则该候选漏诊疾病越有可能就是该项诊断疾病,即该候选漏诊疾病被记录在出院诊断中的概率越高,该候选漏诊疾病越不可能是漏诊疾病;候选漏诊疾病的疾病表示与每项诊断疾病的疾病表示之间的相似度越低,则该候选漏诊疾病越不可能是列出的各项诊断疾病,即该候选漏诊疾病被记录在出院诊断中的概率越低,该候选漏诊疾病越有可能是漏诊疾病。
[0162]
具体在基于候选漏诊疾病的疾病表示分别与各项诊断疾病的疾病表示之间的相似度,对候选漏诊疾病进行筛除时,可以预先设置相似度阈值,如果候选漏诊疾病的疾病表示与任一项诊断疾病的疾病表示之间的相似度大于相似度阈值,可以认为候选漏诊疾病即该项诊断疾病,不存在漏诊风险,可删除此项候选漏诊疾病;如果候选漏诊疾病的疾病表示与各项诊断疾病的疾病表示之间的相似度均小于相似度阈值,则可以认为候选漏诊疾病未被列入出院诊断中,该候选漏诊疾病可以确定为漏诊疾病。
[0163]
本发明实施例提供的方法,借助同一疾病的各种临床名称与同一个icd编码的对应关系训练疾病表示模型,使得同一疾病的不同临床名称能够对应相同的疾病表示,从而忽略临床名称的干扰,实现准确可靠的疾病比对,保证漏诊检测的准确性。
[0164]
基于上述任一实施例,疾病表示模型的损失函数是基于各疾病的临床名称的预测表示与各疾病的正例疾病编码标准名的预测表示之间的相似度,以及各疾病的临床名称的
预测表示与各疾病的负例临床名称的预测表示之间的相似度确定的;
[0165]
疾病的临床名称的预测表示是训练过程中的疾病表示模型基于疾病的临床名称确定的,疾病编码标准名的预测表示训练过程中的疾病表示模型基于疾病编码标准名确定的。
[0166]
具体地,在疾病表示模型的训练过程中,疾病表示模型可以对输入的疾病的临床名称进行编码,从而输出该疾病的临床名称的预测表示,此处的预测表示即训练过程中模型针对该疾病的临床名称输出的疾病表示。同样地,疾病表示模型可以对输入的疾病编码标准名进行编码,从而输出该疾病编码标准名的预测表示,此处的预测表示即训练过程中模型针对该疾病编码标准名输出的疾病表示。
[0167]
考虑到同一疾病可能存在多种不同的临床名称,在训练过程中,可以以最大化各疾病的临床名称的预测表示与各疾病的正例疾病编码标准名的预测表示之间的相似度,以及最小化各疾病的临床名称的预测表示与各疾病的负例临床名称的预测表示之间的相似度为目标,构建疾病表示模型的损失函数。其中,各疾病的临床名称的预测表示与各疾病的正例疾病编码标准名的预测表示之间的相似度越大,则各疾病与其对应的疾病编码标准名的预测表示越接近,各疾病下的不同临床名称对于预测表示的干扰越小,越能够避免由于临床名称不同导致疾病无法匹配的问题;而各疾病的预测表示与各疾病的负例临床名称的预测表示之间的相似度越小,则各疾病与其无关的疾病的预测表示相差越大,各疾病下的不同临床名称与其他疾病的预测表示区分越清楚,从而保证不同疾病下相似的临床名称被混淆的问题。
[0168]
基于上述任一实施例,图7是本发明提供的疾病表示模型的训练示意图,如图7所示,左侧虚线框图表示如何构建疾病表示模型训练所需的样本,即各疾病的临床名称以及各疾病的正例疾病编码标准名组成的正例样本对,以及各疾病的临床名称及其负例临床名称组成的负例样本对。此处的疾病编码即icd编码。图7中,带有√的连线表示所连接的疾病名称为当前疾病临床名称的正例icd编码标准名,带有
×
的连线表示所连接的疾病名称为当前疾病临床名称的负例。以疾病临床名称1为例,出院诊断列表中,除与临床诊断对应的icd编码标准名为正例外,其他均为负例。相对应的icd编码标准名1的正例只有疾病临床名称1,其他出院诊断的临床名称和icd标准名均为负例。其他诊断名称(包括临床名和icd标准名)的正负例构建方式与此相同,一份病历的出院诊断列表中生成的所有正负例组成一个batch进行训练。
[0169]
图7中,右侧虚线框图表示疾病表示模型的训练架构。具体在疾病表示模型的对比学习中,使用的模型架构为存在上下两分支对称的模型结构。以疾病临床名称1与icd标准名1计算其对比关系为例,则上下两个分支的输入分别为临床名称、icd编码标准名。上下两个分支结构相同,使用相同的参数,经过多层编码后将输入映射到相同的表示空间。最后使用相似度度量函数度量上下两分支的相似程度。在对比学习中,对于正例,希望其在表示空间中越近越好;而对于负例,则希望其在表示空间中越远越好。
[0170]
进一步地,以其中任一分支的编码过程(上下分支相同)为例进行说明:
[0171]
输入为疾病名称,首先需将其按字映射至字向量e∈r
l
×e,其中l为字符数量,e为字向量维度。之后通过编码器encoder对疾病名称的字向量进行编码获得疾病的编码表示,此处的编码器encoder具体可以是textcnn(text convolutional neural networks,文本卷
积神经网络),也可以是lstm(long short-term memory,长短期记忆网络)等形式,获得的编码表示可以为h=textcnn(e),h∈re的形式,例如第i个疾病名称,其对应的编码表示可以是hi,其中textcnn的3个filter_size(卷积核大小)可以为3、4、5。projector为变换器,用于将疾病名称的编码表示映射至与任务相关的更抽象维度得到疾病表示,疾病表示可以为z=projector(h)=fc(relu(fc(h))),z∈re,其中fc表示全连接网络,relu表示激活函数,例如第i个疾病名称,其对应的疾病表示可以是zi。
[0172]
相似度度量函数可以为余弦相似度,也可以是余弦相似度、欧几里得距离等,例如可以表示为:其中||z||2表示l2范数,zi和zj分别为第i个和第j个疾病名称的疾病表示。
[0173]
基于上述任一实施例,疾病表示模型的训练损失函数可以使用infonce loss,某个疾病名称对应的infonce损失为:
[0174][0175]
其中z

表示与zi对应的正例,k为一个batch中疾病名的数量。t为温度系数,可根据训练需求进行设置,例如可以设为0.1。在一次训练中,某个疾病名称需要和batch中所有其他名称都需要计算其相似度,而只有临床名称和它的icd标准名称互为正例,其他均为负例。通过训练,使临床名称和icd标准名称在表示空间越来越靠近,而其他疾病名称在表示空间关系越来越远,从此过程中学习得到较好的疾病表示。
[0176]
基于上述任一实施例,图8是本发明提供的病历漏诊检测方法中步骤133的流程示意图之二,如图8所示,疾病表示模型即经过图7示出的训练方式训练得到encoder projector结构的模型,分别将候选漏诊疾病和出院诊断列表中的各个诊断疾病输入到疾病表示模型中,即可得到疾病表示模型分别输出的候选漏诊疾病和各个诊断疾病的疾病表示,在此基础上,分别计算候选漏诊疾病的疾病表示与各项诊断疾病的疾病表示之间的相似度sim,即可在此基础上得到该候选漏诊疾病是否漏诊的结论。
[0177]
另外,图8示出的流程图,也可以作为疾病比对模型的模型整体流程,疾病比对模型的输入为候选漏诊疾病和出院诊断列表中的各个诊断疾病,输出为该候选漏诊疾病是否漏诊,疾病对比模型可以承担候选漏诊疾病和出院诊断列表中的各个诊断疾病的疾病表示编码,疾病表示相似度计算,以及输出漏诊结论的任务。疾病比对模型可以是在训练得到疾病表示模型的基础上,基于疾病表示模型的参数,以样本病历中各候选漏诊疾病是否漏诊为标签,进行训练得到的。
[0178]
具体在疾病比对模型的训练过程中,可以使用交叉熵作为损失函数。encoder模块的参数使用疾病表示模型的预训练结果,随训练过程更新。projecter模块的参数随机初始化,随训练过程更新。
[0179]
基于上述任一实施例,图9是本发明提供的病历漏诊检测方法的流程示意图之二,如图9所示,病历漏诊检测方法包括如下步骤:
[0180]
首先,确定待检测的病历文本。
[0181]
其次,挖掘病历文本中可能存在漏诊的疾病。
[0182]
此处进行医疗数据挖掘,划分为显式候选医疗数据挖掘和隐式候选医疗数据挖掘
两种。其中,针对显式候选疾病,可以直接对病历文本进行疾病命名体识别进行挖掘;针对隐式候选疾病,可以采用预先收集好的诊断金标准和/或特效药信息进行挖掘。
[0183]
在挖掘得到候选疾病之后,可以分两个步骤,进行漏诊判断:
[0184]
首先,基于上下文语义进行漏诊初步判断:具体可以基于病历文本中包含候选疾病的片段文本的上下文语义,进行确诊检测,如果候选疾病的确诊检测结果为确诊,则候选疾病是可能存在漏诊风险的疾病,针对此类疾病,记为候选漏诊疾病执行基于比对的漏诊再次判断;如果候选疾病的确诊检测结果为未确诊,则排除该候选疾病是漏诊疾病的可能,直接将该候选疾病归纳未非漏诊疾病。
[0185]
接着,针对候选漏诊疾病,执行基于比对的漏诊再次判断:可以分别将候选漏诊疾病和出院诊断列表中的各个诊断疾病输入到疾病表示模型中,得到疾病表示模型分别输出的候选漏诊疾病和各个诊断疾病的疾病表示,在此基础上,分别计算候选漏诊疾病的疾病表示与各项诊断疾病的疾病表示之间的相似度,即可在此基础上得到该候选漏诊疾病是否漏诊的结论。
[0186]
本发明实施例提供的方法,首先需找出所有的候选疾病,并对每个候选疾病进行二次判断,以确保其为真正的漏诊疾病。最终输出结果中每个漏诊疾病均可找到其在病历中的判断依据,具有很强的可解释性。
[0187]
基于上述任一实施例,图10是本发明提供的病历漏诊检测装置的结构示意图,如图10所示,该装置包括:
[0188]
文本确定单元1010,用于确定待检测的病历文本;
[0189]
医疗数据挖掘单元1020,用于对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;
[0190]
漏诊检测单元1030,用于基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
[0191]
本发明实施例提供的装置,通过挖掘病历文本中的候选疾病,基于候选疾病对病历文本进行漏诊检测过程无需人工操作,省时省力,在提供病历漏诊检测效率的同时,基于候选疾病在病历文本中的上下文语义对病历文本进行漏诊检测,能够保证在病历文本复杂的书写情况下,实现准确可靠的漏诊检测。
[0192]
基于上述任一实施例,所述医疗数据挖掘单元1020用于:
[0193]
对所述病历文本进行疾病命名体识别,得到显式候选疾病;
[0194]
和/或,基于隐式挖掘规则,对所述病历文本进行医疗数据挖掘,得到隐式候选疾病,所述隐式挖掘规则包括诊疗信息与疾病的对应关系,所述诊疗信息包括检查项和/或药品;
[0195]
基于所述显式候选疾病和/或所述隐式候选疾病,确定所述病历文本包含的候选疾病。
[0196]
基于上述任一实施例,所述隐式挖掘规则基于疾病知识文本和/或样本病历中诊疗信息与疾病之间的关联度确定。
[0197]
基于上述任一实施例,还包括挖掘规则确定单元,用于:
[0198]
基于所述疾病知识文本中各诊疗信息与各种疾病之间的关联度,从所述疾病知识文本中筛选得到各候选诊疗疾病对,所述候选诊疗疾病对为候选的诊疗信息和疾病的组
合;
[0199]
基于所述样本病历中各候选诊疗疾病对中的诊疗信息与对应疾病之间的关联度,从各候选诊疗疾病对中筛选得到诊疗疾病对,作为所述隐式挖掘规则。
[0200]
基于上述任一实施例,所述漏诊检测单元1030用于:
[0201]
确定所述病历文本中包含所述候选疾病的片段文本;
[0202]
将所述候选疾病,以及所述候选疾病的片段文本输入至确诊检测模型中,由所述确诊检测模型基于所述片段文本确定所述候选疾病的上下文语义,并基于所述上下文语义进行确诊检测,得到所述确诊检测模型输出的确诊检测结果;
[0203]
基于所述确诊检测结果,对所述病历文本进行漏诊检测;
[0204]
其中,所述确诊检测模型基于样本病历中的样本疾病,以及所述样本疾病的样本片段文本和确诊标签训练得到。
[0205]
基于上述任一实施例,所述漏诊检测单元1030具体用于:
[0206]
将所述候选疾病和所述候选疾病的片段文本,以及所述片段文本在所述病历文本中的章节和/或所述候选疾病的疾病类型输入至确诊检测模型中,由所述确诊检测模型基于所述片段文本确定所述候选疾病的上下文语义,并结合所述上下文语义,以及所述章节和/或疾病类型进行确诊检测,得到所述确诊检测模型输出的确诊检测结果。
[0207]
基于上述任一实施例,所述漏诊检测单元1030具体用于:
[0208]
将所述确诊检测结果为确诊疾病的候选疾病作为候选漏诊疾病;
[0209]
将所述候选漏诊疾病和所述病历文本对应的各项诊断疾病分别输入至疾病表示模型,得到所述疾病表示模型输出的所述候选漏诊疾病的疾病表示,以及各项诊断疾病的疾病表示;所述疾病表示模型基于各疾病的临床名称,以及正例疾病编码标准名和负例临床名称训练得到;
[0210]
基于所述候选漏诊疾病的疾病表示分别与各项诊断疾病的疾病表示之间的相似度,对所述候选漏诊疾病进行筛除。
[0211]
基于上述任一实施例,所述疾病表示模型的损失函数是基于各疾病的临床名称的预测表示与各疾病的正例疾病编码标准名的预测表示之间的相似度,以及各疾病的临床名称的预测表示与各疾病的负例临床名称的预测表示之间的相似度确定的;
[0212]
所述疾病的临床名称的预测表示是训练过程中的疾病表示模型基于所述疾病的临床名称确定的,疾病编码标准名的预测表示训练过程中的疾病表示模型基于所述疾病编码标准名确定的。
[0213]
图11示例了一种电子设备的实体结构示意图,如图11所示,该电子设备可以包括:处理器(processor)1110、通信接口(communications interface)1120、存储器(memory)1130和通信总线1140,其中,处理器1110,通信接口1120,存储器1130通过通信总线1140完成相互间的通信。处理器1110可以调用存储器1130中的逻辑指令,以执行病历漏诊检测方法,该方法包括:确定待检测的病历文本;对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
[0214]
此外,上述的存储器1130中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本
发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0215]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的病历漏诊检测方法,该方法包括:确定待检测的病历文本;对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
[0216]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的病历漏诊检测方法,该方法包括:确定待检测的病历文本;对所述病历文本进行医疗数据挖掘,得到所述病历文本包含的候选疾病;基于所述候选疾病在所述病历文本中的上下文语义,对所述病历文本进行漏诊检测。
[0217]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0218]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0219]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献