一种重症患者长期死亡风险预测系统及方法

文档序号:31774515发布日期:2022-10-12 08:02阅读:272来源:国知局
一种重症患者长期死亡风险预测系统及方法

1.本发明属于医学诊断技术领域,具体涉及一种重症患者长期死亡风险预测系统及方法。


背景技术:

2.重症监护病房(intensive care unit,icu)是为危重症患者实施救治和康复所设置的特殊病房,其医疗情况相对复杂且变化较快、死亡率高,基于人群的粗略统计显示,患者入住icu期间的死亡率为8.6%,在某些地区可高达16.3%,根据疾病的严重程度不同,如在患者入住icu期间对病情处理不当,患者离开icu后,死亡率也可达6.4%~40%。此外,icu医疗成本远远高于普通病房。
3.随着icu的数字化,产生的临床数据体量庞大、数据复杂,使医生很难以经验对患者的病情进行准确估计。因此准确评估危重症病人疾病严重程度及死亡率预测十分重要,不仅对患者的治疗具有指导意义,也可以为患者及亲属提供有关结果的信息、作为医疗资源分配指南,是临床研究中患者分层的一种方式。
4.人工智能现已被广泛应用于探索危重疾病的预后因素和评估患者的死亡风险,出于其精准捕捉变量之间非线性关系的强大特性,ai+医学已经逐步被医护人员接受,而众多人工智能技术中,长短期记忆网络(lstm)是一种特殊的循环神经网络(rnn),尽管其数学统计原理十分完备,但对于给定任务的知识表征学习尚缺乏明确解释,这种“黑盒”特性影响了其在众多领域中的应用,比如医学领域以及金融领域、自动驾驶领域等。在这些领域中,所使用模型的可解释性和可靠性是影响最终用户信任的关键因素。
5.人工智能也已经被应用于医疗领域。中国发明专利申请“cn112420201a 用于icu死亡率预测的深度级联框架和icu死亡率预测方法”提供了利用机器学习模型预测icu死亡率的方法。然而,与其他机器模型的应用相似,上述模型的可解释性和可靠性仍然不够理想。现有方法为了提高模型的可解释性,其运算量会根据变量数量的增加而大幅提升,而为了满足模型的计算精度,又需要尽可能地输入更多的变量用于构建特征。这使得在现有技术中,同时提升模型的精度和可解释性是非常困难的。具体到icu死亡风险预测中,预测结果的精度和可解释性的同时提升受限于模型结构的icu数据的复杂性,仍然是一个亟需解决的难题。


技术实现要素:

6.针对现有技术的问题,本发明提供一种重症患者长期死亡风险预测系统及方法吗,目的在于选择合适的模型和方法,提高重症患者长期死亡风险预测的精度和预测结果的可解释性。
7.一种重症患者长期死亡风险预测系统,包括:
8.云数据库模块,用于存储重症患者的生理数据;
9.数据处理模块,用于获取所述重症患者的生理数据,并对其进行预处理,得到输入
变量;
10.长期死亡风险预测模块,用于将输入变量输入lstm神经网络模型,对所述重症患者的长期死亡风险进行预测,并利用shap方法对预测结果进行解释。
11.优选的,所述生理数据每间隔一小时上传一次至云数据库模块。
12.优选的,所述输入变量包括年龄、心率、入院类型、手术类型、是否进行心脏手术、转移类型、收缩压、昏迷指数、氧合指数、ph、温度、入住icu 前的住院时间、白细胞、胆红素、伴随疾病类型、肌酸酐、机械通风或血小板中的至少一种。
13.优选的,所述输入变量包括心率、收缩压、昏迷指数、氧合指数、ph值、温度、白细胞、胆红素、肌酸酐以及血小板的采集方法为取每小时的中位数、最大值和最小值。
14.优选的,所述预处理包括缺失值填充和数据归一化处理。
15.优选的,所述lstm神经网络模型包括两个lstm层,第一个lstm层包括32个神经元,第二个lstm层包括16个神经元。
16.优选的,所述lstm神经网络模型的训练过程中选择的优化算法为adam。
17.优选的,所述云数据库模块基于nosql的dynamodb实现。
18.本发明还提供一种利用上述重症患者长期死亡风险预测系统实现的预测方法,包括如下步骤:
19.步骤1,输入重症患者的生理数据,进行预处理,得到输入变量;
20.步骤2,将输入变量输入lstm神经网络模型对所述重症患者的长期死亡风险进行预测,并利用shap方法对预测结果进行解释;
21.步骤3,输出预测结果和对预测结果的解释。
22.本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序用于实现上述重症患者长期死亡风险预测系统。
23.本发明以lstm深度神经网络为基础,实现了重症患者的长期死亡风险的高精度动态预测,挖掘患者的潜在死亡风险因素,为医护人员更早对患者病情做出准确判断提供依据。此外,本发明利用shap方法对模型的死亡风险预测结果进行解释,将模型的结果落实到各个特征的贡献程度上,为医护人员提供对结果的直观理解,增强了模型结果的可信度,更易取得医护人员的信任。因此,本发明在对重症患者的监护中具有很好的应用前景。
24.显然,根据本发明的上述内容,按照本领域的普通技术知识和惯用手段,在不脱离本发明上述基本技术思想前提下,还可以做出其它多种形式的修改、替换或变更。
25.以下通过实施例形式的具体实施方式,对本发明的上述内容再作进一步的详细说明。但不应将此理解为本发明上述主题的范围仅限于以下的实例。凡基于本发明上述内容所实现的技术均属于本发明的范围。
附图说明
26.图1为重症患者长期死亡风险预测系统的结构示意图;
27.图2为重症患者长期死亡风险预测方法的流程示意图。
具体实施方式
28.需要特别说明的是,实施例中未具体说明的数据采集、传输、储存和处理等步骤的
算法,以及未具体说明的硬件结构、电路连接等均可通过现有技术已公开的内容实现。
29.实施例1重症患者长期死亡风险预测系统及方法
30.本实施例的系统如图1所示,包括:
31.云数据库模块,用于存储重症患者的生理数据;
32.数据处理模块,用于获取所述重症患者的生理数据,并对其进行预处理,得到输入变量;
33.长期死亡风险预测模块,用于将输入变量输入lstm神经网络模型,对所述重症患者的长期死亡风险进行预测,并利用shap方法对预测结果进行解释。
34.其中,云数据库模块基于nosql的dynamodb,对于存储于云数据库的重症患者数据,首先采用动态数据脱敏技术,在用户层对患者的姓名,身份证号等个人信息进行屏蔽、加密、隐藏、审计,当应用程序、维护、开发工具请求通过动态数据脱敏时,实时筛选请求的sql语句,依据用户角色、权限和其他脱敏规则屏蔽敏感数据,从而保护病人和医院隐私,增强本系统的安全性和可靠性。
35.数据处理模块将抓取现有的待预测的重症患者的信息数据并进行处理,包括缺失值处理和归一化处理。缺失值采用链式方程-随机森林多重插补法进行填充保证填充数据的准确性,归一化处理的方式决定于数据类型:对于二分类标签数据,使用0-1编码将其转化为数值类型数据;对于多标签数据,使用独热编码将其转化为数值向量。处理完毕后再将数据传递到长期死亡风险预测模块中。
36.长期死亡风险预测模块接收到来自数据处理模块的数据(输入变量)后,建立并训练lstm神经网络模型,并将lstm神经网络预测结果通过可解释方法shap进行解释。
37.采用上述系统进行预测的方法流程如图2所示,包括如下步骤:
38.步骤1,输入重症患者的生理数据,进行预处理,得到输入变量;
39.步骤2,将输入变量输入lstm神经网络模型对所述重症患者的长期死亡风险进行预测,并利用shap方法对预测结果进行解释;
40.步骤3,输出预测结果和对预测结果的解释。
41.其中,所述生理数据每间隔一小时上传一次至云数据库模块,同时每间隔一小时按照上述方法获得一次预测结果,从而实现动态预测的目的。
42.所述步骤s2中lstm神经网络的模型的建立与训练过程如下:
43.lstm循环单元具有三个“门”,分别是输入门、遗忘门、输出门。其中输入门控制要输入到当前时刻的信息量,遗忘门控制要遗忘的历史信息量,输出门控制隐藏状态的输出。
44.在lstm神经网络的循环单元中,有两个重要的状态,分别是t时刻的细胞状态c
t
和隐藏状态h
t
;在每一个时刻,循环单元接受上一时刻的隐藏状态h
t-1
、上一时刻的细胞状态c
t-1
当前时刻的输入信息x
t
,x
t
即为t时刻患者的各项生理指标特征。
45.对于遗忘门,f
t
用于决定在t时刻要保留的t-1时刻细胞状态的信息量,表达式如下:
46.f
t
=σ(wf[h
t-1
,x
t
]+bf)
[0047]
其中wf和bf分别为权重向量和偏置项,σ为激活函数。
[0048]
对于输入门,c
t
为t时刻要输入细胞状态的信息,i
t
用于决定在t时刻要输入的细胞状态c
t
的信息量,其更新方式如下:
[0049]it
=σ(wi[h
t-1
,x
t
]+bi)
[0050]ct
=tanh(wc[h
t-1
,x
t
],+bc)
[0051]ct
=f
tct-1
+i
tct
[0052]
其中,wi、wc为权重向量,bi、bc为偏置项,σ和tanh为激活函数。
[0053]
对于输出门,控制要输出的细胞状态值,表达式如下:
[0054]ot
=σ(w0[h
t-1
,x
t
]+bo)
[0055]ht
=o
t
×
tanh(c
t
)
[0056]
其中wo和bo分别为权重向量和偏置项,σ和tanh为激活函数。
[0057]
基于重症icu患者预后领域的前沿研究成果,并结合数据库所涵盖的特征指标,通过lasso回归来排除与患者死亡预后不显著相关的变量。在本模型中,考虑的重症患者的输入变量有:年龄、心率、入院类型、手术类型、是否进行心脏手术、转移类型、收缩压、昏迷指数、氧合指数、ph、温度、入住icu前的住院时间、白细胞、胆红素、伴随疾病类型、肌酸酐、机械通风、血小板。其中,对于连续变量,包括心率、收缩压、昏迷指数、氧合指数、ph值、温度、白细胞、胆红素、肌酸酐以及血小板,为了更能反映其特征,对这些变量进行特征提取,选取每小时的中位数、最大值和最小值作为输入变量,故模型的输入特征数量为38。
[0058]
在模型的结构选择上,由于利用shap对模型预测结果进行解释的过程中存在着大量的模型正向传播计算过程,往往需要从训练样本中抽取大量的样本来近似当联盟中不考虑目标特征变量时的预测值。模型一共38个特征变量,假设一次抽样n个样本,对于一个特征,包含该特征的联盟有2
37
=137438953472 个,即使是对2
37
个联盟进行蒙洛卡特近似,其计算量也是庞大的,假设一次抽取10000个联盟进行近似,那么计算一个特征变量的shapley值需要模型进行20000n次前向传播,而对一个样本整体的解释需要进行38
×
10000n+n 次前向传播,因此在n不变且不考虑并行的情况下,即使模型的运行时间只增加0.01秒,一个实例的解释所需的时间会增加3800n+0.01n秒,大大地增加了计算的开销。因此模型在精度满足要求的情况下,模型参数越少是越能保证模型预测和解释的实时性,更有利于临床应用。过大的神经网络,尤其是循环神经网络,由于其难以并行的原因,运行速度远比不上传统机器学习模型,但lstm模型在时序问题上的精度远高于传统机器学习模型,故此,有实时性应用要求的模型需要考虑模型的运行速度。综上,本模型考虑的lstm 的层数选择集合为{2,3,4},各lstm层的神经元数量选择集合为 {4,8,16,24,32,48,64},基于模型的训练结果,模型最终确定模型一共包含两个 lstm层,第一个lstm层有32个神经元,第二个lstm层有16个神经元,最后连接全连接层作为模型的输出,相比于第一个lstm层有48个神经元,第二个lstm层有24个神经元,最后连接全连接层作为模型的输出的模型架构,在批量大小为1的情况下,该模型的精度略微降低0.57%,但模型的运行时间降低了48%,这是由于两个模型架构的训练参数相差较大,后者的训练参数为23737,而前者的训练参数为12241。
[0059]
训练过程中选择的优化算法是adam(adaptive moment estimation),它利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率。adam的优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。
[0060]
训练过程中选择的损失函数为交叉熵,计算公式如下:
[0061][0062]
其中p(xi)为患者的实际最终死亡风险,即最终的存活状态,为0(死亡) 和1(存活),q(xi)为预测的死亡风险,是一个介于0到1的值,越接近0 表示死亡风险越大,n为样本数量。
[0063]
shap对lstm神经网络模型预测的死亡风险结果进行解释,即计算各个特征变量在所有特征集合中的平均边际贡献,进而来确定各个特征对预测结果的影响,包括正面影响和负面影响,以及影响程度。
[0064]
shap可解释模型的原理如下:
[0065]
对于一个预测结果f(x),可以通过解释模型g(z

)来表示,具体表示如下式:
[0066][0067]
其中φ0为预测的平均值,φi为第i个特征的贡献值,m为特征维度。
[0068]
因此可以通过φi的值来确定第i个特征对预测结果的影响,如确定ph值、心率等对预测的死亡风险结果得到贡献,若φi为正,即该指标将患者的生存状态推向死亡,反之,若φi为负,则将生存状态推向存活。
[0069]
通过上述实施例可以看到,本发明构建了用于重症患者长期死亡风险预测系统及方法,通过lstm神经网络模型对重症患者长期死亡风险进行动态预测,通过shap可解释模型对预测结果进行解释。通过对模型结构的优选和输入变量的优选,同时兼顾了预测结果的精度和可解释性,具有很好的应用前景。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1