本方法涉及人工智能、自然语言处理,具体涉及一种基于临床文本增强的患者表示方法及序列疾病预测装置、电子设备。
背景技术:
1、序列疾病预测是医疗领域中一项重要研究任务,其目的是根据患者历史就诊记录预测该患者下一次就诊将被诊断出的疾病。序列疾病预测不仅能够帮助患者进行疾病的早期预防,也可以帮助医生对特定患者制定个性化的治疗方案。随着深度学习技术的快速发展和广泛应用,越来越多的研究者关注利用神经网络模型学习患者历史就诊记录得到患者表示,并利用患者表示预测该患者下一次就诊将被诊断出的疾病。
2、近年来,许多传统的神经网络模型被应用于序列疾病预测。其中,基于循环神经网络和图神经网络的方法表现出一定的优势。然而,基于循环神经网络的预测方法只是将单次就诊被诊断出疾病的表示整合为就诊表示,不能捕捉单词就诊被诊断出疾病间的关系;而基于图神经网络的方法,可以将单次就诊被诊断出的疾病作为节点,疾病间的关系作为边,构建成图结构,并利用图神经网络捕捉疾病间的相互关系。但是,基于图神经网络的方法在充分利用临床文本信息方面,仍有待提高和完善。这些局限导致现有方法在捕捉患者病史信息和预测疾病发展方面的能力较差,难以满足医疗领域对高精度预测结果的需求。
3、因此,本方法首先根据患者单次就诊中被诊断出的疾病以及这些疾病间的共现关系,构建疾病超图,并使用超图神经网络以捕捉疾病间的高阶交互;设计三步思维链推理方法,利用大语言模型总结与患者健康状况相关的临床文本,并利用临床预训练语言模型进行编码,从而能够捕捉疾病间的高阶交互信息以及充分利用临床文本中与患者健康状况相关的信息。
技术实现思路
1、针对现有方法的不足,本方法提出一种基于临床文本增强的患者表示方法及序列疾病预测装置、电子设备。该方法将单次就诊中被诊断出的疾病作为节点,疾病间的关系作为超边,构建超图结构,并利用超图神经网络捕获疾病间的高阶相互作用,得到就诊表示;使用大语言模型提取临床文本中与患者相关的信息,并使用临床预训练语言模型进行编码,得到临床文本表示;将临床文本表示与就诊表示进行交互,得到患者表示;最后利用患者表示来预测该患者下一次就诊将被诊断出的疾病。
2、本方法的技术任务是按以下方式实现的,基于临床文本增强的患者表示方法,该方法具体如下:
3、对以下步骤中使用专有名词,解释如下:
4、序列疾病预测任务是指根据患者历史就诊记录预测患者下一次就诊诊断出的疾病;假设患者已有h-1次历史就诊,预测患者在第h次就诊时会被诊断出的疾病;
5、疾病共现关系:假如多种疾病在某次就诊记录中共同出现,则称它们具有共现关系;
6、疾病编码:对于患者的每次就诊,使用疾病编码将患者被诊断出的疾病记录到就诊记录中;其中一种疾病编码唯一对应着一种特定疾病;
7、病案号:在就诊记录中,患者每次就诊都会用一个唯一的病案号进行表示;
8、就诊记录字典:因为每位患者id可能有多次就诊记录,每次就诊都有一个唯一的病案号以及对应的就诊时间,将每次就诊的病案号和就诊时间组合成一个列表,称之为就诊列表;以患者id作为字典的键key,将按照就诊时间顺序排列的就诊列表作为字典的值value,创建就诊记录字典;
9、疾病编码字典:为每个疾病编码分配一个唯一的整数编码,构建疾病编码映射字典,其中疾病编码作为key,整数编码作为value;对于每个患者的每次就诊,将该患者就诊的病案号作为key,将诊断出的疾病对应的疾病编码转换为整数编码后,组成一个列表,称之为诊断疾病编码列表并作为value,构建每个患者的疾病编码字典;
10、临床文本字典:将该患者就诊的病案号作为key,将患者该就诊记录中的临床文本作为value,构建每个患者的临床编码字典;
11、s301、就诊超图构建模块:以预处理后的患者就诊记录作为输入,以单次就诊中被诊断出的疾病作为节点,就诊作为超边,构建疾病超图;初始化疾病超图中的节点特征,得到就诊超图,并将其输入至就诊超图学习模块;
12、s302、临床文本处理模块:以预处理后的患者就诊记录作为输入,设计三步思维链提示方法完成三项子任务提取临床文本中与患者健康状况相关的重要信息:捕捉临床文本中与被诊断出的疾病相关的关键词和术语、从临床文本中提取影响患者健康状况的相关部分内容、根据提取的内容总结临床文本,得到总结后的临床文本,并将其输入临床文本编码模块;
13、s303、临床文本编码模块:以s302临床文本处理模块得到的总结后的临床文本作为输入,使用临床预训练语言模型编码,得到临床文本嵌入表示,并将其输入至患者表示模块;
14、s304、就诊超图学习模块:以s301就诊超图构建模块得到的就诊超图作为输入,使用超图神经网络学习就诊超图中疾病间高阶交互关系,得到疾病上下文,并将其输入至患者表示模块;
15、s305、患者表示模块:以s304就诊超图学习模块得到的疾病上下文以及s303临床文本编码模块得到的临床文本嵌入表示作为输入;使用编码级别的注意力机制学习每种疾病的重要性,得到第h-1次就诊的就诊嵌入表示,并将第h-1次就诊的就诊嵌入表示与s303临床文本编码模块生成的临床文本嵌入表示,进行交互,得到第h-1次就诊表示;使用就诊级别的注意力机制学习历史每一次就诊表示的重要程度,得到患者表示。
16、作为优选,所述s301就诊超图构建模块的具体步骤如下:
17、就诊超图构建模块主要包括构建疾病超图与初始化疾病超图中的节点特征,具体步骤如下:
18、s30101、构建疾病超图:将预处理后的患者就诊记录作为输入,根据患者第h-1次就诊被诊断出的疾病作为节点,以就诊作为超边,构建疾病超图;
19、s30102、初始化疾病超图中的节点特征:以疾病超图作为输入,初始化疾病超图中节点的特征表示,得到就诊超图,并将输入就诊超图学习模块,具体如下,
20、首先将每一种疾病映射为可学习的嵌入向量,由于每种疾病都会与疾病超图中的节点一一对应,因此将每种疾病的嵌入表示作为疾病超图中对应节点的特征表示。
21、更优地,所述s302临床文本处理模块的具体步骤如下:
22、以预处理后的患者就诊记录作为输入,设计三步思维链提示方法完成三项子任务提取临床文本中与患者健康状况相关的重要信息:捕捉临床文本中与被诊断出的疾病相关的关键词和术语、从临床文本中提取影响患者健康状况的相关部分内容、根据提取的内容总结临床文本,得到总结后的临床文本,并将其输入临床文本编码模块;
23、s30201、提取关键词提示:为了捕捉临床文本中与疾病相关的关键词和术语,将句子“step 1:首先确定与被诊断出的疾病icd-9code相关的关键词和术语,其中可包括疾病名称、常见症状和相关医学术语(格式:关键词和术语:icd-9code)”作为第一步提示,调用大模型接口,得到临床文本中与被诊断出的疾病相关的关键词和术语;
24、具体来说:提取关键词提示的操作如下所示:
25、
26、其中,{…1a…}表示患者被诊断出的疾病所对应的icd-9code,这些icd-9code形成一个集合的形式;{…1b…}表示患者就诊记录中的临床文本;
27、{…1c…}表示大语言模型对第一步提示回复的内容;
28、s30202、从临床文本中提取影响患者健康状况的相关部分内容提示:在以s30201第一步提示得到的临床文本中与被诊断出的疾病相关的关键词和术语作为输入,并将字符串“step 2:使用提取到的关键词和术语”、s30201第一步提示得到的临床文本中与被诊断出的疾病相关的关键词和术语、“从临床文本中提取影响患者健康状况的相关部分内容,重点关注症状、诊断结果以及任何提及对患者健康状况影响的内容”连接在一起,作为第二步提示,调用大模型接口,得到临床文本中影响患者健康状况的相关部分内容;
29、具体来说,从临床文本中提取影响患者健康状况的相关部分内容提示的操作如下所示:
30、
31、其中,{…1c…}表示s30201中大语言模型回复的内容;{…2a…}表示大语言模型对第二步提示回复的内容;
32、s30203、提取特定信息提示:在第二步处理的基础之上,进一步利用字符串“step3:根据从临床文本中提取的影响患者健康状况的相关部分内容如下”、s30202第二步提示得到的临床文本中影响患者健康状况的相关部分内容、“总结有关患者症状和疾病的详细信息以及支持诊断的所有临床发现”连接在一起,作为第三步提示,调用大模型接口,得到总结后的临床文本,并将其输入至临床文本编码模块;
33、
34、其中,{…2a…}表示s30202中大语言模型对第二步提示回复的内容;{…3a…}表示大语言模型对第三步提示回复的内容。
35、更优地,所述s303临床文本编码模块的具体步骤如下:
36、以s302临床文本处理模块得到的总结后的临床文本作为输入,使用临床预训练语言模型编码,得到临床文本嵌入表示,并将其输入至患者表示模块;
37、将s302临床文本处理模块得到的总结后的临床文本作为输入,为了得到更丰富地临床文本表示,首先通过临床预训练语言模型分词器将临床文本转换为token向量,即然后再使用临床预训练语言模型编码器对进行编码,得到临床文本嵌入表示hc,并将其输入至就诊表示增强模块,具体公式描述如下:
38、
39、其中,bio_plm表示临床预训练语言模型;
40、更优地,所述s304就诊超图学习模块的具体步骤如下:
41、就诊超图学习模块以s301就诊超图构建模块得到的就诊超图作为输入,使用超图神经网络学习就诊超图中疾病间的高阶交互信息,得到疾病上下文,并将其输入至患者表示模块,具体公式如下:
42、
43、公式(2)中hypergcn表示超图卷积网络,表示患者第h-1次就诊的就诊超图,来自s30102;表示超图卷积网络输出的第h-1次就诊的疾病上下文。
44、更优地,所述s305患者表示模块的具体步骤如下:
45、以s304就诊超图学习模块生成的疾病上下文以及s303临床文本编码模块得到的临床文本嵌入表示作为输入;使用编码级别的注意力机制学习每种疾病的重要性,得到第h-1次就诊的就诊嵌入表示,并将第h-1次就诊的就诊嵌入表示与s303临床文本编码模块生成的临床文本嵌入表示,进行交互,得到第h-1次就诊表示;使用就诊级别的注意力机制学习历史每一次就诊表示的重要程度,得到患者表示;
46、s30501、获得第h-1次就诊的就诊嵌入表示:以s304就诊超图学习模块得到的第h-1次就诊的疾病上下文作为输入,使用编码级别的注意力机制学习每一种疾病的重要性,得到第h-1次就诊的就诊嵌入表示,具体公式如下:
47、
48、其中softmax为激活函数;wc、bc为可训练的参数;αc表示在患者第h-1次就诊记录中每一种疾病的重要因子;表示第h-1次就诊的就诊嵌入表示,表示公式(2)第h-1次就诊的疾病上下文中第i种疾病的嵌入表示;中的u表示第h-1次就诊中被诊断出的疾病的数量;
49、s30502、获得第h-1次就诊表示:将公式(3)中第h-1次就诊的就诊嵌入表示与s303临床文本编码模块得到的临床文本嵌入表示hc,进行交叉注意力操作,得到第h-1次就诊表示:
50、
51、其中,hc来自公式(1)中临床文本编码模块生成的临床文本嵌入表示;表示第h-1次就诊表示;cross-attention表示交叉注意力操作;
52、s30503、获得患者表示:使用就诊级别的注意力机制学习患者历史就诊中每一次就诊表示的重要程度,进而得到患者表示,具体公式如下:
53、
54、其中,α为患者历史就诊中每一次就诊表示的重要因子;wv、bv为可训练的参数;u为患者表示;表示第i次就诊表示,第i次就诊表示与公式(4)第h-1次就诊表示计算方式相同;softmax表示激活函数。
55、一种存储介质,其中储存有多条指令,其特征在于,所述指令由处理器加载,执行上述的基于临床文本增强的序列疾病预测方法的步骤。
56、一种电子设备,其特征在于,所述电子设备包括:
57、上述的储存介质;以及
58、处理器,用于执行所述储存介质中的指令。
59、本方法的基于临床文本增强的患者表示方法及序列疾病预测装置具有以下优点:
60、(一)本方法根据数据集中所有患者的历史就诊记录,基于患者单次就诊中被诊断出的疾病作为节点,本次就诊作为超边,构建针对单次就诊的疾
61、病超图,并初始化疾病超图中的节点特征,得到就诊超图;
62、(二)本方法利用超图神经网络编码就诊超图,捕获单次就诊中被诊断出的疾病间高阶交互信息;学习多种疾病间多对一以及多对多的临床相互作
63、用关系;
64、(三)本方法使用疾病编码级别的注意力模块计算不同疾病对患者健康状况的影响,通过这种方式,能够捕捉每种疾病的重要性,这对于预测患者
65、下一次就诊将被诊断出的疾病至关重要;
66、(四)本方法设计三步思维链推理方法,利用大语言模型总结临床文本中与患者健康状况相关的信息,既可以解决临床文本过于冗长的问题,也可以缓解临床文本中嘈杂信息的影响,有助于提高模型的预测性能。
67、(五)本方法利用临床预训练语言模型编码临床文本,能够更好地理解临床文本中的医学知识,有助于模型更好地理解患者健康状况,进而提高模
68、型的性能;
69、(六)本装置使用疾病预测模块,以患者表示作为输入,使用全连接层并且配合softmax激活函数计算预测分类概率,以预测患者下一次就诊被诊断出的疾病。