一种基于异构EHR网络表示学习的药物推荐方法及系统

文档序号:35532009发布日期:2023-09-21 13:09阅读:79来源:国知局
一种基于异构EHR网络表示学习的药物推荐方法及系统

本发明涉及人工智能及数字医疗,特别涉及一种基于异构ehr网络表示学习的药物推荐方法及系统。


背景技术:

1、随着计算机技术迅速发展,硬件性能的提升、存储容量的增加和网络技术的普及,医疗信息化系统逐渐普及,海量的医学数据被记录在电子系统中,如病人的个人信息、诊断记录、处方用药、医疗操作记录、化验检查结果等等,形成了电子健康记录(electronichealth record,ehr),提高了医疗信息的可访问性和安全性。ehr数据具有纵向医疗信息全面、数据共享性好的优点,建模ehr中病人信息的药物推荐方法可以根据病人的临床信息预测其所需的药物,辅助医生进行个性化的药物选择,监测疗效并调整治疗方案。然而,基于ehr数据进行病人用药预测的任务仍然面临着许多挑战:(1)病人病历中包含着疾病诊断代码、药物代码、手术治疗代码、生理指标等各种类型的数据,具有数据类型多,概念之间关系繁杂,维度高等特点,传统深度学习方法对这些医学概念的表示存在稀疏性;(2)预测的药物组合中药物相互作用程度严重,用药安全性缺失;(3)病人多次就诊的病历呈现出强烈的非均衡性,大多数方法缺乏对病历时序特性的学习。实际上,ehr数据中诊断、药物等医疗实体中蕴含着丰富的语义信息,医疗实体之间又隐含着不容忽略的关联性,因此,研究人员开始探索如何使用图表示学习方法对ehr数据进行深层次的分析和利用。

2、ehr数据主要由病人个人信息、诊断信息和处方信息构成。在图表示学习领域,异构网络可以凭借其建模多类型实体及关系的特性有效地提取这些医疗实体(诊断、药物)的语义信息及医疗实体之间的结构信息。元路径作为异构网络表示学习中有效的工具之一,常用于表示两个节点之间多种不同类型的路径。对于具有特定模式的网络,可以结合特定的领域知识设计元路径来捕获节点之间不同的语义关系,帮助更好地理解和分析节点之间的关联性。具体来说,ehr数据可以构建为一个包含病人、诊断、药物三类节点和病人-诊断、病人-药物两类边的异构ehr网络,根据元路径病人-诊断-病人、病人-药物-病人可以构建出以病人为节点的同构图,根据元路径药物-病人-药物可以构建出以药物为节点的同构图,通过分析病人的病情以及与药物相关的实体关系,图神经网络可以学习到药物与这些实体之间的复杂关联,进而为每个病人提供个性化的药物推荐,更好地满足病人的特定需求。另外,通过图神经网络分析不同药物之间的相互作用以及与病人特征之间的关系,能够识别出可能导致副作用或不良反应之间的药物组合,并提供更安全的药物选择。

3、近来,结合图表示学习方法进行药物推荐的方法主要使用循环神经网络来编码时序ehr数据,附加图模型编码药物之间的关系来增强药物表示,而没有对不同医疗实体之间的结构信息加以利用,这导致图表示模型提取到的向量表示缺乏重要的关联信息,造成信息丢失,并且医疗实体间的关系可以帮助模型更好地理解病人的病情和需求,通过考虑病人、诊断、药物之间的关系,推荐系统可以提供更准确、个性化的药物推荐,反之则可能造成推荐结果不够准确,无法满足病人的具体需求,增加病人的治疗风险。因此,如何对ehr数据中不同医疗实体之间的复杂关系进行有效的提取,是帮助医生提供更个性化的治疗方案,减少药物副作用,实现药物精准推荐的关键问题。


技术实现思路

1、本发明的目的是,提供一种基于异构ehr网络表示学习的药物推荐方法及系统。通过分析病人、诊断、药物的属性信息及其之间的复杂结构关系,该方法及系统能够捕获医疗实体在异构ehr网络中的语义以及医疗实体之间的关联、交互和影响,学习到更丰富、准确的医疗实体向量表示,帮助理解病人的病情和需求,进而提供更准确、个性化的药物推荐结果,同时避免不适当的药物组合,降低治疗风险。

2、使用图表示方法对ehr数据进行分析,通过图卷积操作将关系结构数据转换为低维的向量表示,该分析过程分为两步:(1)使用预处理后的ehr数据集训练一个学习医疗实体向量表示的图表示模型;(2)依据病人时序就诊数据,使用第(1)步中训练得到的图表示模型提取医疗实体的向量表示,并使用该向量表示进行药物推荐。

3、为实现上述目的,本发明提供如下技术方案:

4、本发明提供了一种基于异构ehr网络表示学习的药物推荐方法。首先,ehr数据预处理环节依次通过去除缺失值、去除重复值和排序操作对病历数据进行预处理,得到ehr历史病历数据集;接着在复杂关系图表示模型构建和优化环节中,构建并初始化复杂关系图表示模型、学习医疗实体的向量表示、计算损失、训练模型、确定复杂关系图表示模型的参数;获取复杂关系图表示模型构建和优化环节中训练得到的复杂关系图表示模型,进行药物推荐环节为病人推荐药物。本发明的主要参数包括:优化器参数、迭代次数,其中优化器参数包括学习率、权重衰减率,迭代次数用于设置复杂关系图表示模型训练的结束条件。该方法包括以下步骤:

5、s1、预处理历史病历数据,提取历史病历数据中病人对应的诊断、药物信息,得到ehr历史病历数据集;

6、s2、根据步骤s1中得到的ehr历史病历数据集构建异构ehr网络,利用不同类型的元路径构建与病人、药物相关的关系图;构建病人-诊断、病人-药物交互图;

7、s3、构建并初始化复杂关系图表示模型;

8、s4、使用步骤s1中得到的ehr历史病历数据集通过adam优化器以随机梯度下降的方式对步骤s3中构建的复杂关系图表示模型进行训练,确定复杂关系图表示模型的训练参数,获取复杂关系图表示模型;

9、s5、依据步骤s1中的预处理方法对病人的时序就诊数据进行预处理,使用步骤s4中获取的复杂关系图表示模型,提取医疗实体的向量表示,应用医疗实体的向量表示进行药物推荐。

10、进一步,步骤s1具体包括以下步骤:

11、s11、基于异构ehr网络表示学习的药物推荐方法中设计了一个复杂关系图表示模型来提取ehr历史病历数据集中医疗实体的向量表示,为了更充分地训练复杂关系图表示模型,本发明首先对历史病历数据进行预处理,依次进行去除缺失值、去除重复值和排序操作,得到ehr历史病历数据集,该ehr历史病历数据集中包括病人的诊断过程和用药记录;

12、s12、根据预处理得到的ehr历史病历数据集,生成诊断编号与对应icd-9编码组成的诊断字典信息、药物编号与对应ndc编码组成的字典信息,另外,将ehr历史病历数据集与药物相互作用知识库(ddis)相结合,提取出ehr历史病历数据集中所有药物之间存在的相互作用关系。

13、进一步,所述步骤s2具体包括以下步骤:

14、s21、将病人、诊断、药物作为节点,病人-诊断关系、病人-药物关系作为连边,将ehr历史病历数据集构建为异构ehr网络,记作其中表示节点集合,表示病人节点集合,表示诊断节点集合,表示药物节点集合,表示边集合,包括病人-诊断类型rd的连边集合、病人-药物类型rm的连边集合;

15、s22、构建与病人、药物相关的关系图:将病人、诊断、药物节点类型分别记作vp、vd、vm,根据元路径病人-诊断-病人构建病人-病人交互图表示对应的病人-诊断-病人连边集合;根据元路径构建病人-病人交互图表示对应的病人-药物-病人连边集合;根据ehr历史病历数据集判断任意两种药物是否同时存在于同一个药物组合中,即药物共现关系,构建药物共现图其中表示存在共现关系的药物之间的连边;将步骤s12中提取出的ehr历史病历数据集中所有药物之间存在的相互作用关系,构建药物相互作用图其中,表示存在相互作用关系的药物之间的连边,以上构建的图gpdp、gpmp、gmpm、gmm对应的邻接矩阵为apdp、apmp、ampm、amm;

16、s23、依据异构ehr网络,基于边类型构建病人-诊断交互图其中表示包含病人类型节点、诊断类型节点的节点集合,表示病人-诊断连边集合,病人-诊断交互矩阵为apd;基于边类型构建病人-药物交互图其中表示包含病人类型节点、药物类型节点的节点集合,表示病人-药物连边集合,病人-药物交互矩阵为apm。

17、进一步,如说明书附图1所示,所述步骤s3的复杂关系图表示模型包括三个网络,分别是局部结构信息聚合网络、表示学习网络、表示融合网络。局部结构信息聚合网络用于编码局部异构信息,即聚合不同类型节点的信息,得到病人、诊断、药物的表示,并输入到表示学习网络中,来编码基于元路径构建的同构图语义,接着使用表示融合网络融合不同类型同构图的语义表示。步骤s3具体包含以下过程:

18、s31、随机初始化病人、诊断、药物节点的向量表示e(p)、e(d)、e(m),构建局部结构信息聚合网络,具体来说,局部结构信息聚合网络为两层轻量型的图卷积网络,以用于编码多种类型节点之间的关系来丰富节点的向量表示,对于病人-诊断交互图,首先计算每个病人节点和诊断节点的度,得到度矩阵d(p)和d(d),再对病人-诊断交互矩阵apd进行归一化操作,计算方式为对于病人-药物交互图,首先计算每个病人节点和药物节点的度,得到度矩阵d(p)和d(m),再对病人-药物交互矩阵apm进行归一化操作,计算方式为

19、s32、利用步骤s31中构建的局部结构信息聚合网络聚合不同类型的节点信息和结构信息,以递归地方式更新节点表示,对于病人-诊断交互图,其计算方式如式(1)、(2)所示:

20、

21、

22、其中,索引l表示轻量型图卷积网络层的索引,和分别表示第l层的病人和诊断节点的向量表示,当l=0时,上标pd表示该病人表示来自病人-诊断交互图,t表示矩阵的转置操作;同理,对于病人-药物交互图,根据式(3)、(4)得到病人、药物的表示:

23、

24、

25、其中,上标pm表示该病人表示是来自病人-药物交互图,t表示矩阵的转置操作,当l=0时,

26、s33、聚合来自所有层的向量表示来获取向量表示,以确保对局部结构信息的有效编码,其计算方式为

27、s34、构建和初始化表示学习网络,该表示学习网络通过多头注意力机制来融合不同元路径类型生成的不同图之间的向量表示来获得全局视角下的信息,对步骤s33中得到的向量表示进行补充,所述多头注意力机制包括使用线性层将节点表示向量投影到多个子空间中,然后聚合每个子空间下的表示向量,具体而言,将步骤s33得到的向量表示分别作为图gpdp、gpmp的输入,e(m)作为图gmm、gmpm的输入,用c统一表示以上四种图的类型,即c∈{pdp,pmp,mpm,mm},对于每种图g(c),本发明将其输入的第i行表示为首先通过线性层将不同类型的节点特征映射到相同的潜在表示空间,计算方式如式(5)所示:

28、

29、其中,w(c)为可学习的映射矩阵;接着,对于任意节点i,计算其所有一阶邻居对于自身的重要性,如式(6)所示:

30、

31、其中表示图g(c)中节点i与其任意邻居节点j之间的注意力分数,β(c)表示可学习的注意力向量,t表示矩阵的转置操作,||表示拼接操作,表示经过softmax函数归一化后的注意力分数,表示图g(c)中节点i的邻居节点集合;

32、最后,对每个子空间下的表示进行聚合,计算方式如式(7)所示:

33、

34、其中,k表示头数,上标(k)表示头的索引,根据以上过程,得到病人节点的向量表示和药物节点的向量表示其中i∈{1,…,np},j∈{1,…,nm},np表示病人的个数,nm是ehr历史病历数据集中备选药物的个数;

35、s35、构建并初始化表示融合网络,该表示融合网络通过一种可学习的加权融合机制对s34得到的病人、药物节点的向量表示进行整合,具体来说,该表示融合网络依次由线性层、tanh非线性激活层、线性层构成;每个图g(c)所得表示的权重计算如式(8)所示:

36、

37、其中,可学习的参数映射矩阵w和偏置向量b在不同的图g(c)之间共享,q是可学习的注意力向量,表示图中节点的集合,为了提高不同视图中表示的可区分性,对权重进行归一化基于此,病人i和药物j最终的表示可根据式(9)、(10)得到:

38、

39、

40、将得到的病人、药物表示以矩阵形式表示为z(p)、z(m);

41、s36、将病人和药物表示连接起来,通过全连接网络fc1(·)预测病人和药物之间存在边的概率,计算方式为

42、进一步,所述步骤s4中使用步骤s1中得到的ehr历史病历数据集通过adam优化器以随机梯度下降的方式对步骤s3中的复杂关系图表示模型进行训练,具体包括以下步骤:

43、s41、使用步骤s36中得到的病人和药物之间存在边的概率计算二元交叉熵损失,该二元交叉熵损失计算如式(11)所示:

44、

45、其中,σ(·)表示sigmoid函数,yij是反映异构ehr网络中病人i与药物j之间是否存在联系的真实标签;

46、s42、基于步骤s41中的二元交叉熵损失,以迭代方式重复步骤s31-s41,使用adam优化器以随机梯度下降的方式对s3中的复杂关系图表示模型进行训练优化,训练参数包括学习率0.001、权重衰减率0.001及迭代次数100,本发明中迭代次数为固定值,用于设置训练过程的停止条件,达到设定的迭代次数后停止训练,确定复杂关系图表示模型的训练参数,获取复杂关系图表示模型。

47、进一步,步骤s5具体包括以下步骤:

48、s51、使用步骤s1中的预处理方法对病人的时序就诊数据进行预处理;

49、s52、基于s51中的病人的时序就诊数据,使用步骤s42中获取的复杂关系图表示模型生成诊断向量表示e(d)、药物向量表示z(m),同时输入时序就诊数据dt,i,dt,i表示病人i第t次就诊时的诊断multi-hot向量表示,再聚合诊断信息得到病人i第t次就诊时的向量表示,计算方式如式(12)所示:

50、

51、接下来,利用参数共享和具有记忆性的门控循环神经网络(gru)对时序的就诊数据进行编码,学习与该病人相关的诊断向量表示:

52、

53、然后,根据式(14)计算病人向量表示与药物向量表示z(m)之间的相似性分数,并根据此相似性分数检索相关的药物信息:

54、

55、其中,表示与病人i相关的药物向量表示,t表示矩阵的转置操作;最后,通过全连接网络fc2整合与该病人相关的诊断、药物向量表示预测药物推荐的概率:其中,表示在t时刻向病人i推荐不同药物的概率值,其第j个值则表示药物j的推荐概率;

56、s53、使用步骤s52的药物推荐概率值计算药物推荐损失如下:

57、

58、其中,是真实的标签值,ti是病人i的总就诊次数。

59、本发明通过将异构ehr网络中的复杂关系信息与病人就诊的时序数据相结合,可以对病人的健康状况完整的了解,这能够根据更完整的病人健康状况情况提供更精确的药物建议。

60、本发明还提供一种基于异构ehr网络表示学习的药物推荐系统,所述系统用于实现上述的基于异构ehr网络表示学习的药物推荐方法,具体包括计算机处理器、ehr历史病历数据集存储单元、图数据处理单元、复杂关系图表示模型训练单元及药物推荐单元。

61、进一步,所述ehr历史病历数据集存储单元存储步骤s1中构建的ehr历史病历数据集,将其加载到计算机内存中;所述图数据处理单元从计算机内存中取出ehr历史病历数据集,执行步骤s2进行处理得到图结构数据;所述复杂关系图表示模型训练单元使用图结构数据执行步骤s3-s4,训练并获取复杂关系图表示模型,所述药物推荐单元执行步骤s5,得到药物推荐的结果。所有单元中具体的数据处理和计算工作由所述计算机处理器完成。

62、与现有技术相比本发明的有益效果:

63、1、本发明设计的基于异构ehr网络表示学习的药物推荐方法将ehr历史病历数据集构建为一个由三种类型的节点和两种类型的边组成的异构图。这种方法能够聚合不同的病人信息,并改进了图中病人特征的向量表示,同时有效地提高ehr历史病历数据集的利用率及ehr医疗实体向量表示的质量;

64、2、本发明设计的基于异构ehr网络表示学习的药物推荐方法中的双通道局部异构信息提取模块来对异构信息进行编码,然后采用多视图表示学习模块来融合信息,获得全局视图。这种方法增强了从ehr网络的局部和全局结构中捕获信息的能力,从而产生更准确的药物推荐结果;

65、3、本发明设计的基于异构ehr网络表示学习的药物推荐方法及系统能够有效地处理药物推荐任务,使用包含丰富结构信息的特征向量表示,应用基于rnn的方法编码病人的时序就诊信息为其生成药物处方建议。通过结合历史数据,可以有效地捕获ehr数据中的时序性,提高药物推荐的可靠性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1