一种用于预测COVID-19病患重症化的装置的制作方法

文档序号:23343679发布日期:2020-12-18 16:42阅读:142来源:国知局
一种用于预测COVID-19病患重症化的装置的制作方法

本发明属于对医学数据的智能处理技术领域,具体涉及一种用于预测covid-19病患重症化的装置。



背景技术:

当前,全世界有超过2000万人感染了新冠病毒sars-cov-2,并且有600万人正在接受治疗。这对全世界人民的健康和生命构成了巨大威胁,也给医疗系统带来了前所未有的压力。

大多数covid-19患者属于轻度/中度病例,可以自行康复。但是,约有14%的患者为重症病例,而5%的患者为危重症病例。重症/危重症病例通常在感染后2周内发展为急性呼吸窘迫综合征(ards)或多器官功能不全综合征(mods),这会消耗大量医疗资源并导致较高的病死率(高达49%)。早期预测covid-19的严重程度可以快速分流患有covid-19的患者(即家庭隔离,住院或icu分配等),这有助于优化医疗资源的使用并及时进行医疗干预。

大多数有可疑症状的患者首先会去社区医院的发烧诊所。他们通常接受4种初始测试:sars-cov-2rna测试,血液测试,血液生化测试和胸部计算机断层扫描(ct)扫描。第一个测试用于确定患者是否感染了sars-cov-2。后3个测试用于预测covid-19的严重程度。但是,由于社区医院的资源有限,在短时间内完成所有四项检查存在很多限制(例如,候诊室的容量,检查结果的等待时间和检查仪器的消毒等)。因此,如何使用最简单,最快的测试来进行准确的预测是一个非常紧迫和具有挑战性的问题。

在所有初始测试中,血液测试是最常见的,并且通常会在2小时内出结果。本发明的发明人在实现本发明时发现,可以尝试从血液检测结果中选择关键特征,以快速准确地预测covid-19患者的严重程度,从而助于优化医疗资源的使用并及时进行医疗干预。



技术实现要素:

本发明的发明目的在于:针对上述存在的问题,提供一种用于预测covid-19病患重症化的装置,以便于实现快速分流患有covid-19的患者的医疗辅助效果,助于优化医疗资源的使用并及时进行医疗干预。

本发明的用于预测covid-19病患重症化的装置,包括输入模块、数据预处理模块、特征选择模块、预测处理模块和预测结果输出模块;

其中,输入模块用于输入病患信息,若当前数据为训练数据,则输入的病患信息包括病患个人信息、血液检测信息和重症度;若当前为待预测数据,则输入的病患信息包括病患个人信息和血液检测信息;

数据预处理模块,用于对输入模块输出的数据进行数据预处理,对训练数据和待预测数据进行不同的处理,并将训练数据的处理结果发送给特征选择模块,将待预测数据的处理结果发送给预测处理模块;

特征选择模块,从输入特征中选择t个特征作为输入特征选择结果,其中t≥1;

预测处理模块,将病患的特征信息输入预设的预测模型,并将预测结果发送给预测结果输出模块;

所述预测结果输出模块用于对预测结果进行可视化输出;

其中,数据预处理模块对训练数据和待预测数据的具体处理为:

若当前数据为训练数据,则执行下列预处理步骤:

将病患的个人信息中的指定项分别作为一个输入特征项,以及将血液检测信息中的每一项分别作为一个输入特征项,并将重症度作为输出特征项;基于所有输入特征项和输出特征项得到特征表;

定义x表示输入特征索引,x表示输入特征索引集,y表示输出特征索引,y表示输出特征索引集;

计算特征表中的任意两个特征之间的相关值,得到相关矩阵r;

计算特征表中的任意两个特征之间的p值,得到p值矩阵p;

对相关矩阵r进行预处理:

若矩阵p的元素满足x∈x和y∈y,p[x,y]=p[y,x]>α时,则令r[x,y]=r[y,x]=0;

对于i,x∈x,若p[x,i]=p[i,x]>α,则令r[x,i]=r[i,x]=1;其中,阈值α为预设值;

将多个病患的特征表、输入特征索引集x、输出特征索引集y和预处理后的相关矩阵r发送给特征选择模块;

若当前数据为待预测数据,则执行下列预处理步骤:

基于特征选择模块发送的输入特征选择结果,从待预测数据中读取匹配的信息生成当前病患的特征信息,并将病患的特征信息发送给预测处理模块。

进一步,特征选择模块在确定输入特征选择结果时,将特征选择定义为输入特征之间的相关性以及输入和输出特征之间的相关性的多标准决策问题,再基于该多标准决策问题的求解得到输入特征选择结果。

进一步的,特征选择模块确定输入特征选择结果具体为:

步骤1:获取标记特征集l:

步骤t1:初始化标记特征集l为空集;

步骤t2:判断输入特征索引集x是否为空;若否,则执行步骤t3;若是,则基于当前标记特征集l执行步骤2;

步骤t3:更新标记特征集l:

步骤t301:判断是否|x|>min{m-1,⌈β×m⌉},若是,则对标记特征集l和输出特征索引集y的并集的元素升序排序,得到序列并执行步骤t302;其中,m表示输入特征项数,n表示输出特征项数,参数β的取值范围为[0.6,0.8]:

否则,直接对集合l的元素升序排序,形成序列并执行步骤t302;

步骤t302:对输入特征索引集x的元素升序排序,形成序列

步骤t303:从相关矩阵r中提取一个子矩阵e,子矩阵e的元素为:e[i,j]=r[ri,cj];

且元素e[i,j]的最差条件wi和最佳条件bi分别为:

计算矩阵e的每列的相似度sj,并将最大相似度sj对应的列标识符记为j*,将元素cj*添加到标记特征集l中,同时从输入特征索引集x中删除元素cj*,再返回步骤t2;

所述相似度sj的具体计算方式为:

其中,第一欧式距离

第二欧式距离

参数k、q分别表示矩阵e的行数和列数;

步骤2:对标记特征集l中的特征进行选择处理:

从标记特征集l的第一个特征开始,并按序每次增加一个特征的方式进行组合,得到多种组合特征;然后根据预设的分类器模型,对每种组合的特征进行分类性能测试,选取分类性能测试最好的组合作为输入特征筛选结果。

进一步的,特征选择模块采用朴素贝叶斯分类对每种组合的特征进行分类性能测试。

进一步的,所述特征选择结果将输入特征选择结果设置为:年龄、白细胞计数和淋巴细胞计数,或者设置为:年龄、中性粒细胞计数和淋巴细胞计数。

进一步的,特征选择模块基于分类准确率对每种组合的特征进行分类性能测试,选取分类准确率最高的组合作为输入特征筛选结果。

综上所述,由于采用了上述技术方案,本发明的有益效果是:

本发明从病患的血液检测结果中选择关键特征,以达到快速准确地预测covid-19患者的严重程度的目的;本发明的预测covid-19病患重症化的装置,基于对小样本数据的处理,并且可以得出相对稳定的结果,可以找出准确率较高的组合,同时特征选择的过程可视化和可解释性,符合医学临床的需求。

附图说明

图1为具体实施方式中,covid-19数据集的相关矩阵r的示例图;

图2为具体实施方式中,数据集的p值(用来判定假设检验结果的一个参数,即当原假设为真时,比所得到的样本观察结果更极端的结果出现的概率)构成的矩阵p的示例图;

图3为具体实施方式中,预处理后的相关矩阵示例图;

图4为具体实施方式中,covid-19数据集的特征排序过程示意图;

图5为具体实施方式中,特征排序示意图;

图6为具体实施方式中,本发明的预测性能评估示意图;

图7为具体实施方式中,平均特征数示意图;

图8为具体实施方式中,平均性能表现比较示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面结合实施方式和附图,对本发明作进一步地详细描述。

本发明为了通过对covid-19的严重程度的早期预测,从而实现对病患的快速分流,进而提升医疗资源的利用并提供及时的医疗干预至关重要。本发明的用于预测covid-19病患重症化的装置(简称重症化预测装置)从血液检测结果中选择关键特征,以达到快速准确地预测covid-19患者的严重程度。本发明首先将特征选择定义为考虑输入特征之间的相关性以及输入和输出特征之间的相关性的多标准决策(mcdm)问题,然后将“基于理想解的相似性的优先顺序技术”(topsis)和朴素贝叶斯(nb)分类器结合以实现用最少的功能实现最高的预测准确性。初步结果表明,即使考虑到数据集不确定性对机器学习模型预测的影响,本发明也只有3个特征(即年龄、白细胞计数(wbc)/中性粒细胞计数(neut)和淋巴细胞计数(lymc))。

本具体实施方式中,采集了2020年2月1日至2020年3月15日在武汉红十字会医院根据who(worldhealthorganization)指南诊断的covid-19病例。如表1所示,数据集包含9个特征,包括8个输入特征(年龄,性别,白细胞计数(wbc),淋巴细胞计数(lymc),淋巴细胞比率(lymph),中性粒细胞计数(neut),中性粒细胞比率(neu)和中性粒细胞与淋巴细胞比率(nlr))和1个输出特征(重症度)。

表1:covid-19病例的临床特征

根据国家卫生委员会《中国covid-19感染诊治计划指南》第5版,该病例分为4种类型:

(1)轻度病例:临床症状轻微但没有肺炎的影像学表现;

(2)中度病例:伴有发烧,呼吸道症状和肺炎影像表现;

(3)重症病例:以下任何一种:呼吸商rr>30次/分钟的呼吸窘迫,静止时的氧饱和度<93%或pao2/fio2<300mmhg(immhg=0.133kpa);

(4)危重症病例:具有以下任何一种情况:需要机械通气、电击的呼吸衰竭或需要icu重症监护的其他器官衰竭。

在本发明的重症化预测装置中,为了减少预测处理的时间开销,提升对covid-19严重性(轻度/中度还是重度/危重度的病例)的预测准确度,本具体实施方式中将重症化类型简化为两类:第一类为:轻度和/或中度;第二类为:重症和/或危重症;即基于本发明的重症化预测装置可以实现对covid-19病患是否为重症(包括危重症)的快速预测。

本发明的重症化预测装置包括输入模块、数据预处理模块、特征选择模块、预测处理模块和预测结果输出模块;其中,输入模块用于输入病患信息,若当前数据为训练数据,则输入的病患信息包括病患个人信息(姓名、年龄、性别等)、血液检测信息和重症度(即基于病人疾病的严重程度进行分类,并分别为每种类型设置一个对应的重症度量值);若当前为待预测数据,则输入的病患信息包括病患个人信息和血液检测信息;数据预处理模块,用于对输入模块输出的数据进行数据预处理,对训练数据和待预测数据进行不同的处理,对训练数据,主要是对收集的原始数据进行细化处理以对其进行消噪的过程;对待预测数据,则是从待预测数据中提取部分信息(姓名、血液检测信息中与输入特征选择结果相匹配的项的信息)生成当前病患的特征信息,并将病患的特征信息发送给预测处理模块;特征选择模块,用于特征的排序以及筛选,其中特征排序即通过某些评分功能的值对特征进行排序的过程,通常会测量其特征相关性;特征选择旨在通过去除不相关,多余或嘈杂的特征从原始特征中选择一小部分相关特征。预测处理及输出,预测处理模块将病患的特征信息输入其预置的预测模型(学习训练好的),并将预测结果发送给预测结果输出模块进行可视化输出;即基于所选定的特征和设置好的预测模型对当前输入的待预测信息进行重症化的二分类预测处理,并将预测结果进行可视化的输出。同时,为了验证本发明的重症化预测装置的预测性能,还通过统计量度(准确率(acc)、灵敏度(tpr)、假阳率(fpr)和f1分数(模型准确率和召回率的一种加权平均,其最大值为1,最小值为0,值越大意味着模型越好))来衡量本发明的重症化预测装置的二元分类的性能。

本发明的预测处理以及预测性能评估的具体实现过程如下:

(1)预处理。

本具体实施方式中,将数据集随机分为2个子集:训练集(50%)和测试集(50%)。在本具体实施方式的四个阶段中,仅将测试集用于性能评估。

假设有m个输入特征和n个输出特征,令x={x|1≤x≤m}为输入特征集,而y={y|m+1≤y≤m+n}为输出特征集,元素x和y是特征的索引。特征集为f=x∪y={i|1≤i≤m+n}。计算并可视化了一个(m+n)×(m+n)的相关矩阵r和一个(m+n)×(m+n)的p值矩阵p,以显示所有不同特征对之间的相关性。

为了简化数据处理量,分两步对相关矩阵r进行了预处理。

步骤1:忽略r[i,j]的正负号,令r[i,j]=|r[i,j]|因此r[i,j]的范围从[-1,1]变为[0,1],其中i,j∈f。

步骤2:通过p过滤r。

对于x∈x和y∈y,若p[x,y]=p[y,x]>α,则r[x,y]和r[y,x]可以忽略,即令r[x,y]=r[y,x]=0。对于i,x∈x,若p[x,i]=p[i,x]>α,则令r[x,i]=r[i,x]=1。通常,阈值α的取值范围可以是0.01或0.05,优选取值为0.05。

基于表1所给出的病患个人信息(性别和年龄)、血液检测信息和严重程度(是否为重症),可以得到,输入特征数m=8,输出特征数n=1,进而得到如图1所示的9×9的相关矩阵r,和如图2所示的9×9的p值矩阵p。

再对该相关矩阵r进行预处理后,可以得到如图3所示的预处理后的相关矩阵r的各元素r[i,j]的具体值,其中,i,j∈f,r[i,j]的取值范围变为[0,1]。

由于p[1,9]=p[9,1]=0.3865>0.05,p[3,9]=p[9,3]=0.1055>0.05,所以r[1,9],r[9,1],r[3,9]和r[9,3]可以忽略,即取值均为0。从图3还可以看到,r[1,9]=r[9,1]=r[3,9]=r[9,3]=0,r[1,1:8]=r[3,1:8]=单位向量(1,8),r[1:8,1]=r[1:8,3]=单位向量(8,1)。

(2)特征排序。

定义一个标记特征集l并初始化为l=∅。

对输入特征x∈x进行排序的过程进行迭代,并将每个排序中的第一个从x移至l。排序标准包括2个评估项:

评估项1(eval1):输入特征x∈x与输出特征y∈y,r[x,y]或r[y,x]。

评估项2(eval2):输入特征x∈x与标记特征v∈l,r[x,v]或r[v,x]之间的相关性。从而实现对决策中的多个冲突标准的评估处理。

本发明基于所提出的通过使用与理想解决方案相似的偏好顺序技术(topsis)解决此多准则决策(mcdm)问题的处理,这是一种补偿性聚合方法,首先,创建一个包含k个条件和q个替代项的评估矩阵e,以对输入要素进行排名。根据帕累托原理,将x分为以下2种类型:

类型1:

如果|x|>min{m-1,⌈β×m⌉},则要标记的输入特征x是核心特征,应该具有评估项2中最低的r[v,x],并且来自评估项1的最高r[y,x]。并以升序对集合l∪y和x的元素进行排序,以获得序列。其中,参数β的取值范围为[0.6,0.8],优选取值为0.8,即前20%的输入特征为核心特征。

令k=|l|+n,和q=|x|,从预处理后的相关矩阵r中提取一个k×q的子矩阵e,使得e[i,j]=r[ri,cj]。

且元素e[i,j]的最差条件wi和最佳条件bi分别为:

参见图4,在该图示中,表示当|x|=8>min{8-1,⌈0.8×8⌉}=7时,l∪y=∅∪{9}={9}。有(ri)1i=1=(9),(cj)8j=1=(1,…,8)。由于=|l|+n=1并且q=|x|=8,因此e是r的1×8的子矩阵。

类型2:

如果|x|≤min{m-1,⌈0.8×m⌉},要标记的x是辅助特征(其余80%),只需要具有最低的r[v,x]评估2。

并以升序对l和x集的元素进行排序,以获得序列

令k=|l|并且q=|x|,e是e[i,j]=r[ri,cj]的k×q的矩阵。

基于图4所给出的图示可知,当|x|=5<7时,l={2,6,4},并且x={1,3,5,7,8}时,(ri)3i=1=(2,6,4),(cj)5j=1=(1,3,5,7,8)。由于当前k=|l|=3并且q=|x|=5,e是r的3×5的子矩阵。

根据公式(1)计算目标替代j与最差条件之间的l2距离(欧式距离):

(1)

然后根据公式(2)计算j条件与最佳条件之间的l2距离:

(2)

再根据公式(3)计算与最差条件的相似度:

(3)

仅当替代j的条件最佳时,sj=1;仅当替代j的条件最差的条件时,sj=0。令j*=argmaxj{sj},则x=x\{cj*},l=l∪{cj*}。

范例4:如图4所示,当|x|=8>7时,wi=1且bi=0。由公式(1)和公式(2)计算出dw2=0.5251,db2=0.4749。由公式(3),可以得到s2=0.5251。|x|=5<7时,wi=1,bi=0。通过公式(1)和公式(2),计算出dw8=0.9685,db8=0.8615。由公式(3),得到s2=0.5293。

即本发明中基于mcdm对病患的多个特征进行标记,并得到标记特征集的具体实现过程如下:

步骤s1:将采集的病患特征作为输入特征,将预测类型作为输出特征,基于所有输入特征和输出特征得到特征集合;

对特征集合中的任意两个特征,基于特征之间的相关值得到相关矩阵r,其中相关矩阵r的维度为(m+n)×(m+n),m表示输入特征个数,n表述输出特征个数;

对特征集合中的任意两个特征,基于特征之间的p值得到(m+n)×(m+n)维的矩阵p;

设置输入特征索引集合x={x|1≤x≤m},输出特征索引集合y={y|m+1≤y≤m+n};

初始化标记特征集l为空集;

步骤s2:对相关矩阵r进行预处理:

将相关矩阵r的各元素设置为:r[i,j]=|r[i,j]|,其中,i,j分别表示相关矩阵r的行和列;

基于矩阵p对相关矩阵r进行过滤处理:对于x∈x和y∈y,若p[x,y]=p[y,x]>0.05,则令r[x,y]=r[y,x]=0;对于u∈x和x∈x,若p[x,u]=p[u,x]>0.05,则令r[x,u]=r[u,x]=1;

步骤s3:判断集合x是否为空;若是则执行步骤s5;否则执行步骤s4;

步骤s4:更新标记特征集l:

步骤s401:判断是否|x|>min{m-1,⌈β×m⌉},若是,则对集合l∪y和集合x的元素升序排序,得到序列并执行步骤402;

即当集合x的元素数大于min{m-1,⌈β×m⌉}的值时,对l∪y∪x的元素升序排序,形成序列

否则,直接对集合l的元素升序排序,形成序列并执行步骤402;

步骤s402:对集合x的元素升序排序,形成序列

步骤s403:从相关矩阵r中提取一个子矩阵e,子矩阵e的元素为:e[i,j]=r[ri,cj];

计算矩阵e的每列的相似度sj,并将最大相似度sj对应的列标识符记为j*,将元素cj*添加到标记特征集l中,同时从输入特征索引集x中删除元素cj*,再返回步骤s3;

步骤s5:得到并输出标记特征集l。

参见图4,当前输入要素的标注顺序为(2,6,4,7,8,6,1,3)。如果仅考虑评估项1,即根据统计学上显著的r[x,y]对x∈x进行排序,将得到另一个序列(2,5,4,7,8,6),如图5所示。从图3中可以看出,尽管r[5,9]=0.3526>r[6,9]=0.2179,但r[5,2]=0.2471>r[6,2]=0.06803和r[5,4]=0.7023>r[6,4]=0.2827。这表明{2,5,4}可能包括冗余特征,并且不能独立地对预测做出贡献。

(3)特征选取。

特征子集选择的目标是找到最佳输入特征子集。逐渐增加标记特征的数量,并依次使用朴素贝叶斯分类器训练模型。为了找到最佳子集,在训练集上顺序测试训练模型的准确性。图5显示,当选择4个特征{2,5,4,7}时,评估项1的精度达到0.765的峰值。而使用较少的特征{2,6,4}时,评估项1加上评估项2的精度可以达到更高的0.816。

(4)预测处理及输出。

基于本发明的预测处理模块和预测结果输出模块实现。本发明的预测处理模块中预置了训练好的预测模型(例如在特征选取时所采用的分类器模型),只需要将病患的特征信息输入到该分类器模型中,从而基于其分类结果输出得到当前病患的重症化的预测结果;本发明对预测处理模块中的预测模型不做具体限定,可采用任一惯用的分类器模型,并对所采用的分类器模型进行学习训练得到满足训练需求的预测模型即可。预测结果输出模块可以以图形、文字和/或灯光等方式输出对应的预测结果。

(5)性能评估。

本具体实施方式中,基于所设置的测试集,将准确率(acc)、灵敏度(tpr)、假阳率(fpr)和f1得分(f1score)作为功预测性能的评估度量值。图6为使用不同条件进行预测所对应的预测性能。如图6所示,{2,6,4}具有最低数量的功能,但在多个性能指标中得分最高。同时,基于图6还可以看到{2,5,4,7,8,6},{2,5,4,7}和{2,6,4}的准确性分别为0.7959、0.8469和0.8673;以及{2,5,4,7,8,6},{2,5,4,7}和{2,6,4}的f1分数分别为0.7561、0.7761和0.806。

本具体实施方式中,将所采集的306例covid-19病例分为两组:141例中度病例和165例重度/危重度病例。两组的血液检查结果统计见表1。

为了测试本发明的重症化预测装置预测稳定性并观察数据集不确定性对特征选择的影响,将数据集划分了100次(50%训练集和50%测试集)并重复运行。图7显示了通过3个不同标准选择的特征的平均数量,eval1,eval2(子集)和eval1+eval2(子集)分别为6.29(95%ci(confidenceinterval):6.13-6.45),3.11(95%ci:2.79-3.43)和2.98(95%ci:2.81-3.15)。从图8中可以看出,本发明的重症化预测装置所采用的标准eval1+eval2(子集)改善了大多数性能指标。eval1+eval2(子集)的指标(acc,tpr,fpr和f1分数)分别为0.803(95%ci:0.794-0.812),0.685(95%ci:0.673-0.697),0.117(95%ci:0.104-0.131)和0.724(95%ci:0.71-0.739),而eval1分别是0.75(95%ci:0.741-0.76),0.599(95%ci:0.583-0.616),0.093(95%ci:0.083-0.103)和0.698(95%ci:0.688-0.708)。参考图8,尽管数据集不确定性会影响特征选择,但仍然有2个子集{age,neut,lymc}和{age,wbc,lymc}的选择率达31%,主导了特征选择。这两个子集可以以少量特征获得高精度。

此外,根据现有的治疗经验,在疾病发展的第一和第二周进行适当干预对于防止疾病恶化和降低病死率非常重要。先前的研究表明,covid-19的严重程度与患者的年龄,基础疾病和全身免疫状态密切相关。本发明的重症化预测装置的输入仅需病患的年龄、以及血液测试结果,并基于所预设的特征选取方式,从血液测试结果中选取对应的特征(wbc/neut,lymc)进行预测处理,进而输出当前病患的covid-19的病患类型(轻度、中度、重症和危重),且可以达到80%以上的预测准确性。在covid-19大流行期间,它更符合临床需求,并且易于在不同医疗水平的地区推广和使用。即本发明的重症化预测装置,从血液测试结果中选择有效特征,初步实验结果表明,只需选择3个关键特征(即年龄,白细胞计数(wbc)/中性粒细胞计数(neut)和淋巴细胞计数(lymc))即可达到0.803的预测精度(95%ci:0.794-0.812),其预测的高精度(平均80.3%)非常有利于covid-19患者的快速分诊。仅使用最常用的血液检查,医疗机构就可以更好地确定家庭隔离、住院、icu分配或covid-19患者。

以上所述,仅为本发明的具体实施方式,本说明书中所公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换;所公开的所有特征、或所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以任何方式组合。

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