CN113674864B - 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法 - Google Patents

一种恶性肿瘤合并静脉血栓栓塞症风险预测方法 Download PDF

Info

Publication number
CN113674864B
CN113674864B CN202111007447.8A CN202111007447A CN113674864B CN 113674864 B CN113674864 B CN 113674864B CN 202111007447 A CN202111007447 A CN 202111007447A CN 113674864 B CN113674864 B CN 113674864B
Authority
CN
China
Prior art keywords
sample
model
samples
layer
new
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111007447.8A
Other languages
English (en)
Other versions
CN113674864A (zh
Inventor
徐玲
邓忠阳
刘海霞
罗兆林
雷海科
龙波
罗敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University
Original Assignee
Chongqing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University filed Critical Chongqing University
Priority to CN202111007447.8A priority Critical patent/CN113674864B/zh
Publication of CN113674864A publication Critical patent/CN113674864A/zh
Application granted granted Critical
Publication of CN113674864B publication Critical patent/CN113674864B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/30ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Abstract

本发明公开了一种恶性肿瘤合并静脉血栓栓塞症风险预测方法,该方法首先对采集的病人信息进行预处理得到基础数据集,再进行双向联合重采样得到训练集,然后对训练集中每个训练样本进行特征筛选,去掉冗余特征;构建和训练StackingXgbMlp模型,该模型包括两层,第一层包括并联的一个XGBoost模型和一个MLP模型,第二层包括一个XGBoost模型;训练完成后将未知是否患病的病人信息采用S100的方法进行预处理,再采用S300的方法进行特征筛选得到待预测样本,将该待预测样本输入训练好的StackingXgbMlp模型中,输出待预测样本患病的预测概率。实验表明,本发明方法在预测准确性比传统方法好。

Description

一种恶性肿瘤合并静脉血栓栓塞症风险预测方法
技术领域
本发明涉及通过大数据进行疾病预测的技术领域,特别涉及一种恶性肿瘤合并静脉血栓栓塞症风险预测方法。
背景技术
随着互联网的迅速发展,信息化技术广泛应用于医疗过程中。疾病的风险预测是医疗活动中极其重要的一环,它为患者的疾病诊断和治疗提供了坚实的基础。目前,疾病风险预测的主要手段是通过患者进行一系列复杂的指标项检测后,依赖临床医生所掌握的知识和经验,对风险进行预测。但是单个医生所具备的医疗知识和积累的经验有限,尤其在对于稀有疾病的患病风险预测方面,不足以准确的进行风险预测。本文研究的静脉血栓栓塞症是一种常见的肿瘤合并症,约10%~20%的静脉血栓栓塞症患者同时患有活动性肿瘤或有肿瘤病史。这种合并症症状隐匿,临床的漏诊和误诊率较高,近年来VTE在亚洲国家的发病率逐年上升。因此,如何在有限的医疗知识和经验的情况下,根据患者各项指标指数进行准确的疾病风险预测是一个亟待解决的问题。
随着医院信息化水平的提高,在临床就诊阶段积累了大量的电子化病历数据以及患者各项身体指标,疾病风险预测的依据也蕴藏在这些数据中。相应地,机器学习、大数据、人工智能等技术的发展为这些数据提供了用武之地。由于各种有利的条件,基于数据和机器学习的疾病风险预测和疾病诊断系统的研究大量出现。但这些关于疾病检测的研究都普遍存在以下几个问题:
(1)数据冗杂,难以提取。在现有的研究中,关于疾病的数据有的是患者的身体指标、有的存在于医生开的病历中。有的是结构化数据,而有的是文本数据。如何在冗杂的、大量的数据中找到最合适疾病风险预测的数据,是目前比较困难的问题之一。
(2)患病的病例较少,导致数据集样本不平衡。患病病例较少是普遍存在的现象,对于这个问题已经有很多成熟的解决方法,例如过采样和欠采样。通过重采样技术平衡数据集,从而满足模型对平衡数据的需求。但对于不同的不平衡比例需要使用不同的重采样方法,找到有效且合适的方法是目前疾病预测的工作之一。
(3)数据集特征数量太多,维度太高,影响模型的性能。疾病数据特征的高纬度会影响模型的分类结果。为了解决这一问题,不少研究提出了不同的特征筛选方法。目前采用PCA的方法解决特征冗余的问题,但对于数据分布属于非正态分布的数据,提取的主元并不是最优的。使用RFE-SVM来选择更加适用于分类器的特征,这是一种Wrapper式的特征选择算法,但所选特征会出现过适应的问题。对于疾病特征的选择也是目前亟需解决的问题之一。
(4)疾病数据样本小且不平衡,常见机器学习分类模型容易出现过拟合导致预测效果较差,有人提出将逻辑回归方法应用于疾病诊断问题上,但由于样本维度高,该方法容易产生过拟合,同时精确度也有待提高。有人提出使用随机森林模型来预测产后抑郁的风险,但同样不适用高纬度和不平衡数据。
发明内容
针对现有技术存在的上述问题,本发明的要解决的技术问题是:如何在现有数据特征维度高、样本类不平衡的情况下有效预测疾病。
为解决上述技术问题,本发明采用如下技术方案:一种面向不平衡数据的疾病风险预测方法,包括如下步骤:
S100:采集疑似患有和患有恶性肿瘤合并静脉血栓栓塞症病人的信息,一个病人对应一个样本,对采集的信息进行预处理得到基础数据集,对基础数据集中的所有样本标注标签确定负样本和正样本;
S200:对S100得到的基础数据集进行双向联合重采样得到训练集,该训练集中负样本和正样本数量相同;
S300:对训练集中每个训练样本进行特征筛选,去掉冗余特征得到新训练样本,所有新训练样本构成新训练集;
S400:构建和训练StackingXgbMlp模型
S410:所述StackingXgbMlp模型包括两层,第一层包括并联的一个XGBoost模型和一个MLP模型,第二层包括一个XGBoost模型,第一层中XGBoost模型和MLP模型输出作为第二层XGBoost模型的输入;
S420:初始化StackingXgbMlp模型参数,设定概率阈值;
S430:将新训练集中所有新样本同时输入第一层XGBoost模型和MLP模型中,对第一层XGBoost模型和MLP模型进行训练;
S440:当第一层XGBoost模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中第一层XGBoost模型对所有新样本的预测准确率;
若MLP模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中MLP模型对所有新样本的预测准确率;
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比没有变化,同时MLP模型预测准确率与之前迭代次数中对应的预测准确率相比也没有变化时,则当前迭代次数中的第一层为训练好的第一层,将当前迭代次数中每个新样本对应的第一层XGBoost模型的输出和MLP模型的输出构成一个最新样本并执行下一步,所述最新样本的标签与其对应的新样本的标签一致;
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比有变化或MLP模型预测准确率与之前迭代次数中对应的预测准确率相比有变化时,返回S430;
S450:将最新样本输入第二层XGBoost模型,对第二层XGBoost模型进行训练;
S460:若第二层XGBoost模型输出的最新样本的概率大于概率阈值时,则认为该最新样本的预测标签为正样本,否则该最新样本的预测标签为负样本;计算当前迭代次数中第二层XGBoost模型对所有最新样本的预测准确率;
若当前迭代次数中第二层XGBoost模型预测准确率与之前迭代次数中的预测准确率相比不再变化时,得到训练好的第二层,否则返回S450;
在第二层训练完成后得到训练好的StackingXgbMlp模型;
S500:对于一个未知是否患病的病人,将该病人的信息采用S100的方法进行预处理,再采用S300的方法进行特征筛选得到待预测样本,将该待预测样本输入训练好的StackingXgbMlp模型中,输出待预测样本患病的预测概率。
作为优选,所述S100中对采集的信息进行预处理的过程如下:
1)数据结构化,将获得疑似患有和患有静脉血栓栓塞症的恶性肿瘤病人的信息处理成Boolean类型的结构化数据;
2)缺失值处理,设定缺失率阈值,遍历所有病人的信息,对于某一类信息缺失率高于缺失率阈值,则删除该类信息,对于缺失率低于缺失率阈值信息,若某个病人的该类信息缺失,则采用该类信息的均值进行填充;
3)数据合并,数据结构化和缺失值处理后,按照病人的ID将病人的血检信息数据和病人临床基本信息数据对应合并起来,每个病人由一个向量来表示。
作为优选,所述S200中对基础数据集进行双向联合重采样得到训练集的过程如下:
所述基础数据集中包括N个少数类样本构成的少数样本集XN和M个多数类样本构成的多数样本集XM
S210:对于N个少数类样本采用进行过采样,具体如下:
S211:从XN中选择少数类样本xi的k个近邻样本,计算xi与N个少数类样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xi的k个近邻样本记为xi(1)…xi(k),其中i∈{1,…,N};
S212:随机选择一个近邻样本xi(r)合成一个新样本xnew=xi+R*(xi(r)-xi),其中R是0到1之间的随机数;
S213:将S230重复T次,得到T个新样本xnew,xnew∈{1,…,T};
S214:重复N次步骤S211-S213,即在所有N个少数类样本上进行操作,得到N×T个新样本,N×T个新样本构成新少数类样本集;
S220:对于M个多数类样本采用进行欠采样,具体如下:
S221:从XM中选择多数类样本xj的k个近邻样本,计算xj与M个样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xj的k个近邻样本记为xj(1)…xj(k),其中j∈{1,…,k};
S222:选出与第r个近邻样本欧式距离最小的样本,用该样本的标签标注第r个近邻样本,r=1,2…k;
S223:删除XM中与大部分样本标签不一样的样本,剩下的样本作为新多数类样集;
所述新少数类样本集合新多数类样集构成训练集。
作为优选,所述S300中对训练集中每个训练样本进行特征筛选的过程如下:
使用XGBoost衡量训练集中每个特征的重要程度,定义三个衡量指标;
特征分裂次数Weigh:
Weigh t=|X| (1)特征平均增益值Gain:
特征平均覆盖率Coner:
其中X是对应特征分类到XGBoost中叶子节点的集合;Weight是XGBoost所有树中,对应特征被用来分裂节点的次数;gainx是X中每个叶子节点在分割时的增益值;∑coverx是X中落在每个节点的样本个数;
FScore表示三个衡量指标的平均值,计算方式如下:
计算将训练集中每个特征的FScore,并按照FScore值的大小进行排序,保留前Q个特征。
作为优选,所述XGBoost模型每次迭代的时候都会增加一棵树模型,则迭代K次的线性组合为:
式(5)中,F表示所有树的集合,fk(xi)表示第i个样本在第k棵树上被分类到叶子节点的权重;
MLP模型中每一层的处理公式为:
式(6)中,为第l层第n个神经元的输出;/>为第l-1层第k个神经元的输出;/>为第l-1层第k个神经元与l层第n个神经元连接的权值;/>为l层第n个神经元的偏置;f(·)为神经元的激活函数。
相对于现有技术,本发明至少具有如下优点:
(1)利用XGBoost特征筛选有效降低数据特征的维度,缓解维度爆炸问题,避免分类器的性能下降。
(2)本发明使用的双向联合重采样技术融合两种重采样技术,解决了正负样本不平衡问题,适用于样本类不平衡的分类任务。
(3)本发明采用Stacking策略,融合XGBoost和MLP两种分类模型,有效提升预测患病风险的准确率。
附图说明
图1为本发明方法整体流程图。
图2为双向联合重采样的流程图。
图3为特征筛选的流程图,SubModel表示XGBoost模型中的子树,Model Train表示模型训练,Assign Weight表示XGBoost模型中给每个子树分配权重。
图4为StackingXgbMlp模型结构图。
图5为指标变化曲线。
具体实施方式
下面对本发明作进一步详细说明。
参见图1-图4,一种恶性肿瘤合并静脉血栓栓塞症风险预测方法,包括如下步骤:
S100:采集疑似患有和患有恶性肿瘤合并静脉血栓栓塞症病人的信息,一个病人对应一个样本,对采集的信息进行预处理得到基础数据集,对基础数据集中的所有样本标注标签确定负样本和正样本;负样本即未患病样本,正样本即患病样本。
所述S100中对采集的信息进行预处理的过程如下:
为保证不遗漏重要特征信息,我们将获得的所有信息都进行处理,包括:部分凝血酶原时间(APTT)、D-二聚体(D-D)、淋巴细胞绝对值(LYM#)等23个血液特征信息列,以及姓名、年龄、肥胖指数、深静脉血栓或肺栓塞历史、一个月内是否进行过大手术等33个病人临床基本信息列。这些信息不是结构化数据,不能直接用于实验,需要进行如下一系列预处理的工作:
1)数据结构化,将获得疑似患有和患有静脉血栓栓塞症的恶性肿瘤病人的信息处理成Boolean类型的结构化数据;血液特征信息是结构化数据,但收集的病人临床基本信息数据属于类别特征,我们将这些数据处理成Boolean类型的结构化数据。
2)缺失值处理,设定缺失率阈值,遍历所有病人的信息,对于某一类信息缺失率高于缺失率阈值,则删除该类信息,对于缺失率低于缺失率阈值信息,若某个病人的该类信息缺失,则采用该类信息的均值进行填充;由于病人在院做检查类型的差异,上述处理好的数据中还存在部分缺失值。将采集的病人的所有信息进行归类,将大部分病人都没有做而少部分病人做的检查信息认定为缺失率高的信息,缺失率高的信息我们将其直接删除,因为高缺失率意味着临床很少检查该项特征,说明其不重要;缺失率低的信息,我们取该特征列的均值作为缺失值的填充值。为了方便筛选,设定了缺失率阈值。
3)数据合并,数据结构化和缺失值处理后,按照病人的ID将病人的血检信息数据和病人临床基本信息数据对应合并起来,每个病人由一个向量来表示。预处理后的数据,作为我们之后实验的基础数据集。
S200:对S100得到的基础数据集进行双向联合重采样得到训练集,该训练集中负样本和正样本数量相同。
所述S200中对基础数据集进行双向联合重采样得到训练集的过程如下:
本发明由于是预测重大疾病,因此采集的训练样本分布极不平衡,例如本发明实验部分采集的样本中有15000个左右的负样本(正常),2000个左右的正样本(患病)。正负样本比例接近1:8,是一个典型的不平衡数据集。
为了有效解决恶性肿瘤合并静脉血栓栓塞症数据集中不平衡的问题,本发明提出使用双向联合法来进行重采样,即将过采样方法SMOTE(Synthetic MinorityOversampling Technique)和欠采样方法ENN(Edited Nearest Neighbor)组合起来进行重采样,从而减小最终所得模型过拟合的程度以及提高模型泛化能力。
双向联合重采样方法,是通过联合过采样和欠采样两个方向进行样本的平衡处理。第一个方向是SMOTE过采样算法,通过插值来为少数类合成新的样本,从而避免复制重复样本带来的过拟合问题。同时,第二个方向是ENN欠采样算法,通过计算多数类样本的k近邻样本,如果大部分近邻样本跟它本身的类别不一样,我们就将该多数类样本删除掉,这样不仅能减少部分不符合标准的样本,还能提升模型的泛化能力。图2是双向联合重采样算法的流程图。
所述基础数据集中包括N个少数类样本构成的少数样本集XN和M个多数类样本构成的多数样本集XM
S210:对于N个少数类样本采用进行过采样,具体如下:
S211:从XN中选择少数类样本xi的k个近邻样本,计算xi与N个少数类样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xi的k个近邻样本记为xi(1)…xi(k),其中i∈{1,…,N};计算k近邻样本时,过采样方向的范围局限在N个少数类样本中,即k个近邻样本也都是少数类样本。
S212:随机选择一个近邻样本xi(r)合成一个新样本xnew=xi+R*(xi(r)-xi),其中R是0到1之间的随机数;
S213:将S230重复T次,得到T个新样本xnew,xnew∈{1,…,T};
S214:重复N次步骤S211-S213,即在所有N个少数类样本上进行操作,得到N×T个新样本,N×T个新样本构成新少数类样本集;过采样方向中的变量T,即过采样后,将生成T*N个新样本;
值得注意的是,欠采样方向剪辑掉所有与k近邻样本类别不符的多数类样本后,若过采样方向仍在继续,欠采样方向也需要不断循环。原因是过采样生成新样本的过程中,可能造成部分多数类样本的边缘化。综上,双向联合重采样算法的停止标准是正负类样本达到指定比例(可以指定重采样比例为2:10、4:10、1:1等)。达到预期比例即可输出新的数据集,并作为本文后续实验的数据。
S220:对于M个多数类样本采用进行欠采样,具体如下:
S221:从XM中选择多数类样本xj的k个近邻样本,计算xj与M个样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xj的k个近邻样本记为xj(1)…xj(k),其中j∈{1,…,k};
S222:选出与第r个近邻样本欧式距离最小的样本,用该样本的标签标注第r个近邻样本,r=1,2…k;
S223:删除XM中与大部分样本标签不一样的样本,剩下的样本作为新多数类样集;
所述新少数类样本集合新多数类样集构成训练集。
S300:对训练集中每个训练样本进行特征筛选,去掉冗余特征得到新训练样本,所有新训练样本构成新训练集。
所述S300中对训练集中每个训练样本进行特征筛选的过程如下:
疾病数据不是所有的特征列都会对模型的预测起作用。将一些冗余的或者无关紧要的特征删除,不仅可以减少这些特征带来的负面干扰,还能降低特征的维度,提高模型的效率。
基于XGBoost的特征筛选采用梯度提升的方法进行数据分类,在疾病小样本数据中,分类效果、鲁棒性等都较好。特征选择的核心就是利用各个特征对模型贡献的重要度,重要度的度量则分为特征分裂次数、增益值以及覆盖率。
使用XGBoost衡量训练集中每个特征的重要程度,定义三个衡量指标需要什么的是,训练集中每个训练样本包括的特征数量都相同,不同之处在不同特征对应的值
特征分裂次数Weight:
Weigh t=|X| (1)特征平均增益值Gain:
特征平均覆盖率Coner:
其中X是对应特征分类到XGBoost中叶子节点的集合;Weight是XGBoost所有树中,对应特征被用来分裂节点的次数;gainx是X中每个叶子节点在分割时的增益值;∑coverx是X中落在每个节点的样本个数;
根据不同的重要性衡量指标,特征有不同的排序。因此,为了避免单一重要性度量的局限性,综合考量所有指标,我们计算三个指标的几何平均值,那么只有每个指标分数都高的特征,它才会有更高的排名,然后对所有特征进行排序。FScore表示三个衡量指标的平均值,计算方式如下:
计算将训练集中每个特征的FScore,并按照FScore值的大小进行排序,保留前Q个特征。经过特征筛选后,训练集中每个训练样本则都是由一个Q维的向量来表示
S400:构建和训练StackingXgbMlp模型
S410:所述StackingXgbMlp模型包括两层,第一层包括并联的一个XGBoost模型和一个MLP模型,第二层包括一个XGBoost模型,第一层中XGBoost模型和MLP模型输出作为第二层XGBoost模型的输入;
S420:初始化StackingXgbMlp模型参数,设定概率阈值;
S430:将新训练集中所有新样本同时输入第一层XGBoost模型和MLP模型中,对第一层XGBoost模型和MLP模型进行训练;
S440:当第一层XGBoost模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中第一层XGBoost模型对所有新样本的预测准确率;
若MLP模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中MLP模型对所有新样本的预测准确率;
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比没有变化,同时MLP模型预测准确率与之前迭代次数中对应的预测准确率相比也没有变化时,则当前迭代次数中的第一层为训练好的第一层,将当前迭代次数中每个新样本对应的第一层XGBoost模型的输出和MLP模型的输出构成一个最新样本并执行下一步,所述最新样本的标签与其对应的新样本的标签一致;预测准确率=预测正确的数量/新样本的数量,预测正确的数量的初始值为0,在当前迭代次数中,当一个新样本的预测标签与原始标签相同则预测正确的数量加1,如此遍历所有新样本,即得当前迭代次数中预测正确的数量。
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比有变化或MLP模型预测准确率与之前迭代次数中对应的预测准确率相比有变化时,返回S430;
S450:将最新样本输入第二层XGBoost模型,对第二层XGBoost模型进行训练;
S460:若第二层XGBoost模型输出的最新样本的概率大于概率阈值时,则认为该最新样本的预测标签为正样本,否则该最新样本的预测标签为负样本;计算当前迭代次数中第二层XGBoost模型对所有最新样本的预测准确率;
若当前迭代次数中第二层XGBoost模型预测准确率与之前迭代次数中的预测准确率相比不再变化时,得到训练好的第二层,否则返回S450;
在第二层训练完成后得到训练好的StackingXgbMlp模型;
S500:对于一个未知是否患病的病人,将该病人的信息采用S100的方法进行预处理,再采用S300的方法进行特征筛选得到待预测样本,将该待预测样本输入训练好的StackingXgbMlp模型中,输出待预测样本患病的预测概率。
作为改进,StackingXgbMlp的核心是对多个基本模型进行训练,并将它们的输出作为新的特征来训练另一个模型,从而得到融合模型的最终预测结果,XGBoost模型和MLP模型(Multilayer Perceptron)都属于现有模型,XGBoost模型属于集成树模型,后者MLP模型属于神经网络。所述XGBoost模型每次迭代的时候都会增加一棵树模型,则迭代K次的线性组合为:
式(5)中,F表示所有树的集合,fk(xi)表示第i个样本在第k棵树上被分类到叶子节点的权重;
对于MLP模型除了输入输出层,中间还有多个隐藏层,以神经元为最小单位,将输出的多个节点信息非线性映射到单一输出上,神经元之间的连接强度被称为连接权值。MLP模型中每一层的处理公式为:
式(6)中,为第l层第n个神经元的输出;/>为第l-1层第k个神经元的输出;/>为第l-1层第k个神经元与l层第n个神经元连接的权值;/>为l层第n个神经元的偏置;f(·)为神经元的激活函数,通常为ReLu函数,相比Sigmoid、Tanh函数,避免了“梯度消失”的缺陷,即x取值很大以后,y对x的增大不再敏感。
实验分析:
1.数据集
实验数据集来自重庆大学附属肿瘤医院,包含2011-2020年间疑似患有以及患有静脉血栓栓塞症的恶性肿瘤病人的信息,共19015例。其中有15000例左右的负样本(正常),2000例左右的正样本(患病)。不平衡比例接近1:8。数据共有58维,一维描述病人ID,一维描述数据标签。剩余56维度分别描述了患者的23个血常规项(部分凝血酶原时间(APTT)、D-二聚体(D-D)、淋巴细胞绝对值(LYM#)等)以及33个临床基本信息项(姓名、年龄、肥胖指数、深静脉血栓或肺栓塞历史等)。
2.评估指标
预测恶性肿瘤合并静脉血栓栓塞症的患病风险,实则是一个二分类问题。为了拟合真实场景,将测试集的正负样本比例设定为实际比例1:8。
常见的分类指标,例如准确率,容易受到类别数量比例的影响,故不宜作为不平衡问题的评价指标。合适的评价指标应该在正负样本各自分布保持不变的前提下不受类别数量比例的影响,G-Means、AUC等指标就具备这些性质。
G-Means是真正类率和真负类率的几何平均值,它同时考虑了正、负类各自的分类准确率,因此比全局的准确率更适用于不平衡数据的分类问题。
式(7)中的TP为被分类器识别为正的正样本、FP为被分类器识别为正的负样本、FN为被分类器识别为负的正样本、TN为被分类器识别为负的负样本。
AUC值定义为ROC曲线下方与横轴围成的面积,它是衡量分类器对样本预测的排序质量。
由于复合指标相比单一指标更加可靠和稳定,将它们的复合指标作为一个新的评价指标G-A。
本发明有关疾病预测,它更关注于正确预测出的患者数量比例,因此将召回率Recall作为实验的评价指标之一。
3.对比模型
本发明的实验部分对比了如下几种二分类算法模型。
决策树算法模型。本文使用的决策树模型是CART算法模型,其采用了简化的二叉树模型,同时特征选择采用了近似的基尼系数来简化计算。使用已经处理好的病人数据集训练决策树模型。
随机森林算法模型。该算法模型是一个包含多个决策树的分类器,并且输出的类别是由个别树输出的类别的众数而定。同样使用处理好的病人数据集训练随机森林算法模型。
梯度提升决策树(GBDT)算法模型。该算法也是集成学习Boosting家族的成员,是由多个CART决策树集成,最终结果是所有基学习器的结果相加。
StackingXgbMlp模型即本发明提出的融合模型。
问题1:特征筛选的有效性
表1比较了三种不同筛选方式下模型的性能,其中全特征是指不进行特征筛选,保留全部特征。第二种去除无用特征是指只去除重要性评分为0的特征。第三种方式是在第二种方式的基础上再去除重要性评分明显较低的特征(图4中CXXXLSJ特征左侧的所有特征)。结果表明,去除无用和重要性较低的特征后,相比于前两种筛选方式,在Recall/AUC/G-Means/G-A指标上有所提升,但幅度较小。而在程序运行时间,即Time(通过五次十折交叉验证计算的平均值)提升明显,分别提升了35.36%和18.32%。说明去除无用和重要性低的特征不仅保证了模型性能的稳定,而且降低了数据维度,使模型的速度更快。同时,特征筛选具有现实意义,它能帮助医生了解到哪些特征指标更重要,哪些相对不重要,从而减少病人到院检测指标项的数量。该实验的模型均采用StackingXgbMlp模型,重采样率设置为1.0,即正负样本均衡。
表1使用三种不同筛选率筛选特征的实验结果
特征筛选率 Recall AUC G-Means G-A Time
全特征 0.8234 0.6821 0.8228 0.7525 47.17
去除无用特征 0.8224 0.6804 0.8223 0.7514 37.33
去除无用和重要性低的特征 0.8261 0.6843 0.8248 0.7546 30.49
结论1:经过实验比较,特征筛选是有效的。在保证模型性能指标稳定的情况下,加快了模型速度。
问题2:双向联合重采样的有效性
表2、3、4分别是使用SMOTE过采样、ENN欠采样、双向联合重采样对数据进行处理后的模型的性能。该实验的重采样比率采用递增的方式,即随着正负样本逐渐平衡,观察模型的性能变化。模型均使用StackingXgbMlp模型,特征筛选采取第三种方式,即去除无用以及重要性较低的特征。表5是对比了三种采样方法各自最好的结果,结果表明,双向联合重采样方法处理数据后的模型训练效果更理想。相对于SMOTE过采样、ENN欠采样以及不进行正负样本平衡进行训练的模型,在Recall指标上分别提升了0.43%、144.89%、153.68%,在AUC指标上分别提升了1.04%、5.83%、6.72%,在G-Means指标上分别提升了0.40%、51.15%、53.13%,在联合指标G-A上分别提升了0.70%、26.27%、27.61%。这些结果都说明了双向联合重采样是有效的。
表2SMOTE重采样方法
Rate Recall AUC G-Means G-A
不采样 0.3148 0.6537 0.5349 0.5943
2:10 0.3898 0.6897 0.5946 0.6422
4:10 0.5609 0.7131 0.7095 0.7113
6:10 0.7007 0.7189 0.7831 0.7510
8:10 0.7539 0.7014 0.8025 0.7520
1:1 0.7952 0.6904 0.8158 0.7531
表3ENN重采样方法
Rate Recall AUC G-Means G-A
不采样 0.3148 0.6537 0.5349 0.5943
ENN 0.3261 0.6592 0.5419 0.6006
表4SMOTE+ENN重采样方法
Rate Recall AUC G-Means G-A
不采样 0.3148 0.6537 0.5349 0.5943
2:10 0.3875 0.6885 0.5930 0.6408
4:10 0.5886 0.7109 0.7251 0.7180
6:10 0.7302 0.7092 0.7939 0.7516
8:10 0.7986 0.6976 0.8191 0.7584
1:1 0.8261 0.6843 0.8248 0.7546
表5重采样方法间的对比
图5显示了双向联合重采样方法不同采样比率下模型Recall和综合性能指标G-A的折线图,能直观、清晰看到性能随着采样比率变化而变化趋势。对于Recall变化曲线,采样率为1.0时达到峰值,原因是随着正样本的生成(采样率的增加),模型对正样本的预测更加准确;对于G-A变化曲线,采样率为0.8时达到峰值。原因是随着正负样本的平衡,模型性能逐渐变好。当性能达到峰值后,继续增加正样本数量,性能指标有下降的趋势,原因是通过重采样算法生成的样本过多,造成模型一定程度的过拟合。但总体来看,平衡正负样本比例对模型的提升是有帮助的。综合考虑下,当采样率达到0.8时,我们的模型性能达到最优。
结论2:经过实验比较,双向联合重采样是最有效的。考虑不同的采样比率时,当采样比率达到0.8时,模型性能最佳。
问题3:StackingXgbMlp融合模型的有效性
表6比较了StackingXgbMlp模型和目前常用的机器学习算法模型如:决策树、随机森林、GBDT、XGBoost以及常用于二分类的神经网络多层感知机MLP。在RQ2的基础上,这次实验的采样率我们选择0.8。结果表明,StackingXgbMlp在Recall、G-Means、G-A三个指标上达到最优,分别为0.7986、0.8191、0.7584。AUC指标为0.6976,在所有对比模型仅次于XGBoost模型。综合看来,我们使用的StackingXgbMlp融合模型是最有效的模型。
表6各模型性能表
Model Recall AUC G-Means G-A
决策树 0.2727 0.6110 0.5023 0.5567
随机森林 0.3970 0.6913 0.5998 0.6456
GBDT 0.4632 0.6940 0.6490 0.6715
XGBoost 0.7905 0.6983 0.8159 0.7571
MLP 0.5689 0.6958 0.7134 0.7046
StackingXgbMlp 0.7986 0.6976 0.8191 0.7584
结论3:通过各个模型间的比较,我们采用的融合模型StackingXgbMlp是最有效的预测模型。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (5)

1.一种恶性肿瘤合并静脉血栓栓塞症风险预测方法,其特征在于,包括如下步骤:
S100:采集疑似患有和患有恶性肿瘤合并静脉血栓栓塞症病人的信息,一个病人对应一个样本,对采集的信息进行预处理得到基础数据集,对基础数据集中的所有样本标注标签确定负样本和正样本;
S200:对S100得到的基础数据集进行双向联合重采样得到训练集,该训练集中负样本和正样本数量相同;
S300:对训练集中每个训练样本进行特征筛选,去掉冗余特征得到新训练样本,所有新训练样本构成新训练集;
S400:构建和训练StackingXgbMlp模型
S410:所述StackingXgbMlp模型包括两层,第一层包括并联的一个XGBoost模型和一个MLP模型,第二层包括一个XGBoost模型,第一层中XGBoost模型和MLP模型输出作为第二层XGBoost模型的输入;
S420:初始化StackingXgbMlp模型参数,设定概率阈值;
S430:将新训练集中所有新样本同时输入第一层XGBoost模型和MLP模型中,对第一层XGBoost模型和MLP模型进行训练;
S440:当第一层XGBoost模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中第一层XGBoost模型对所有新样本的预测准确率;
若MLP模型输出的新样本的预测概率值大于概率阈值时,则认为该新样本的预测标签为正样本,否则该新样本的预测标签为负样本;计算当前迭代次数中MLP模型对所有新样本的预测准确率;
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比没有变化,同时MLP模型预测准确率与之前迭代次数中对应的预测准确率相比也没有变化时,则当前迭代次数中的第一层为训练好的第一层,将当前迭代次数中每个新样本对应的第一层XGBoost模型的输出和MLP模型的输出构成一个最新样本并执行下一步,所述最新样本的标签与其对应的新样本的标签一致;
若当前迭代次数中第一层XGBoost模型预测准确率与之前迭代次数中对应的预测准确率相比有变化或MLP模型预测准确率与之前迭代次数中对应的预测准确率相比有变化时,返回S430;
S450:将最新样本输入第二层XGBoost模型,对第二层XGBoost模型进行训练;
S460:若第二层XGBoost模型输出的最新样本的概率大于概率阈值时,则认为该最新样本的预测标签为正样本,否则该最新样本的预测标签为负样本;计算当前迭代次数中第二层XGBoost模型对所有最新样本的预测准确率;
若当前迭代次数中第二层XGBoost模型预测准确率与之前迭代次数中的预测准确率相比不再变化时,得到训练好的第二层,否则返回S450;
在第二层训练完成后得到训练好的StackingXgbMlp模型;
S500:对于一个未知是否患病的病人,将该病人的信息采用S100的方法进行预处理,再采用S300的方法进行特征筛选得到待预测样本,将该待预测样本输入训练好的StackingXgbMlp模型中,输出待预测样本患病的预测概率。
2.如权利要求1所述的恶性肿瘤合并静脉血栓栓塞症风险预测方法,其特征在于,所述S100中对采集的信息进行预处理的过程如下:
1)数据结构化,将获得疑似患有和患有静脉血栓栓塞症的恶性肿瘤病人的信息处理成Boolean类型的结构化数据;
2)缺失值处理,设定缺失率阈值,遍历所有病人的信息,对于某一类信息缺失率高于缺失率阈值,则删除该类信息,对于缺失率低于缺失率阈值信息,若某个病人的该类信息缺失,则采用该类信息的均值进行填充;
3)数据合并,数据结构化和缺失值处理后,按照病人的ID将病人的血检信息数据和病人临床基本信息数据对应合并起来,每个病人由一个向量来表示。
3.如权利要求1所述的恶性肿瘤合并静脉血栓栓塞症风险预测方法,其特征在于,所述S200中对基础数据集进行双向联合重采样得到训练集的过程如下:
所述基础数据集中包括N个少数类样本构成的少数样本集XN和M个多数类样本构成的多数样本集XM
S210:对于N个少数类样本采用进行过采样,具体如下:
S211:从XN中选择少数类样本xi的k个近邻样本,计算xi与N个少数类样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xi的k个近邻样本记为xi(1)....xi(k),其中i∈{1,...,N};
S212:随机选择一个近邻样本xi(r)合成一个新样本xnew=xi+R*(xi(r)-xi),其中R是0到1之间的随机数;
S213:将S230重复T次,得到T个新样本xnew,xnew∈{1,...,T};
S214:重复N次步骤S211-S213,即在所有N个少数类样本上进行操作,得到N×T个新样本,N×T个新样本构成新少数类样本集;
S220:对于M个多数类样本采用进行欠采样,具体如下:
S221:从XM中选择多数类样本xj的k个近邻样本,计算xj与M个样本的欧式距离,欧式距离的值由大到小排序,排在前k位的即为xj的k个近邻样本记为xj(1)....xj(k),其中j∈{1,...,k};
S222:选出与第r个近邻样本欧式距离最小的样本,用该样本的标签标注第r个近邻样本,r=1,2...k;
S223:删除XM中与大部分样本标签不一样的样本,剩下的样本作为新多数类样集;
所述新少数类样本集合新多数类样集构成训练集。
4.如权利要求1所述的恶性肿瘤合并静脉血栓栓塞症风险预测方法,其特征在于,所述S300中对训练集中每个训练样本进行特征筛选的过程如下:
使用XGBoost衡量训练集中每个特征的重要程度,定义三个衡量指标;
特征分裂次数Weight:
Weight=|X| (1)
特征平均增益值Gain:
特征平均覆盖率Cover:
其中X是对应特征分类到XGBoost中叶子节点的集合;Weight是XGBoost所有树中,对应特征被用来分裂节点的次数;gainx是X中每个叶子节点在分割时的增益值;∑coverx是X中落在每个节点的样本个数;
FScore表示三个衡量指标的平均值,计算方式如下:
计算将训练集中每个特征的FScore,并按照FScore值的大小进行排序,保留前Q个特征。
5.如权利要求1所述的恶性肿瘤合并静脉血栓栓塞症风险预测方法,其特征在于,所述XGBoost模型每次迭代的时候都会增加一棵树模型,则迭代K次的线性组合为:
式(5)中,F表示所有树的集合,fk(xi)表示第i个样本在第k棵树上被分类到叶子节点的权重;
MLP模型中每一层的处理公式为:
式(6)中,为第l层第n个神经元的输出;/>为第l-1层第k个神经元的输出;/>为第l-1层第k个神经元与l层第n个神经元连接的权值;/>为l层第n个神经元的偏置;f(·)为神经元的激活函数。
CN202111007447.8A 2021-08-30 2021-08-30 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法 Active CN113674864B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111007447.8A CN113674864B (zh) 2021-08-30 2021-08-30 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111007447.8A CN113674864B (zh) 2021-08-30 2021-08-30 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法

Publications (2)

Publication Number Publication Date
CN113674864A CN113674864A (zh) 2021-11-19
CN113674864B true CN113674864B (zh) 2023-08-11

Family

ID=78547488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111007447.8A Active CN113674864B (zh) 2021-08-30 2021-08-30 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法

Country Status (1)

Country Link
CN (1) CN113674864B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114792568B (zh) * 2022-06-27 2023-06-06 天津幸福生命科技有限公司 住院风险预测方法及装置、存储介质及电子设备
CN115719647B (zh) * 2023-01-09 2023-04-11 之江实验室 融合主动学习和对比学习的血透并发心血管疾病预测系统
CN117476240B (zh) * 2023-12-28 2024-04-05 中国科学院自动化研究所 少样本的疾病预测方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108847285A (zh) * 2018-05-09 2018-11-20 吉林大学 基于机器学习的孕前期及孕中期唐氏综合征筛查方法
CN109785976A (zh) * 2018-12-11 2019-05-21 青岛中科慧康科技有限公司 一种基于Soft-Voting的痛风病分期预测系统
CN111243662A (zh) * 2020-01-15 2020-06-05 云南大学 基于改进XGBoost的泛癌症基因通路预测方法、系统和存储介质
CN111292853A (zh) * 2020-01-15 2020-06-16 长春理工大学 基于多参数的心血管疾病风险预测网络模型及其构建方法
CN113017572A (zh) * 2021-03-17 2021-06-25 上海交通大学医学院附属瑞金医院 一种重症预警方法、装置、电子设备及存储介质
CN113057587A (zh) * 2021-03-17 2021-07-02 上海电气集团股份有限公司 一种病症预警方法、装置、电子设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108847285A (zh) * 2018-05-09 2018-11-20 吉林大学 基于机器学习的孕前期及孕中期唐氏综合征筛查方法
CN109785976A (zh) * 2018-12-11 2019-05-21 青岛中科慧康科技有限公司 一种基于Soft-Voting的痛风病分期预测系统
CN111243662A (zh) * 2020-01-15 2020-06-05 云南大学 基于改进XGBoost的泛癌症基因通路预测方法、系统和存储介质
CN111292853A (zh) * 2020-01-15 2020-06-16 长春理工大学 基于多参数的心血管疾病风险预测网络模型及其构建方法
CN113017572A (zh) * 2021-03-17 2021-06-25 上海交通大学医学院附属瑞金医院 一种重症预警方法、装置、电子设备及存储介质
CN113057587A (zh) * 2021-03-17 2021-07-02 上海电气集团股份有限公司 一种病症预警方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于LSTM与XGBOOST混合模型的孕妇产后出血预测;周彤彤;俞凯;袁贞明;卢莎;胡文胜;;计算机系统应用(03);34-40 *

Also Published As

Publication number Publication date
CN113674864A (zh) 2021-11-19

Similar Documents

Publication Publication Date Title
CN113674864B (zh) 一种恶性肿瘤合并静脉血栓栓塞症风险预测方法
CN109350032B (zh) 一种分类方法、系统、电子设备及存储介质
Babu et al. Heart disease diagnosis using data mining technique
Ramezani et al. A novel hybrid intelligent system with missing value imputation for diabetes diagnosis
Singh et al. Prediction of heart diseases using associative classification
Wang et al. Risk assessment of coronary heart disease based on cloud-random forest
CN108346474A (zh) 基于单词的类内分布与类间分布的电子病历特征选择方法
CN112116957A (zh) 基于小样本的疾病亚型预测方法、系统、装置及介质
CN109213871A (zh) 患者信息知识图谱构建方法、可读存储介质和终端
CN111599462A (zh) 基于认知学习的身体异常气味智能筛查系统
CN114925212A (zh) 一种自动判断并融合知识图谱的关系抽取方法及系统
Gürsoy et al. An overview of deep learning techniques for COVID-19 detection: methods, challenges, and future works
CN117195027A (zh) 基于成员选择的簇加权聚类集成方法
CN113643756A (zh) 一种基于深度学习的蛋白质相互作用位点预测方法
Prasanna et al. Heart Disease Prediction using Reinforcement Learning Technique
Riyaz et al. Ensemble Learning for Coronary Heart Disease Prediction
Rana et al. Comparative Study of Supervised Machine Learning Methods for Prediction of Heart Disease
Tasneem et al. Diagnosis of cardiovascular diseases using artificial intelligence techniques: A review
Chaudhary et al. Hybrid architecture of heart disease prediction system using genetic neural network
CN113780378A (zh) 一种疾病高危人群预测装置
Yadav et al. Exploring Hyper-Parameters and Feature Selection for Predicting Non-Communicable Chronic Disease Using Stacking Classifier
Khan et al. Efficient data mining techniques for heart disease prediction and comparative analysis of classification algorithms
Pan et al. Liver disease detection: evaluation of machine learning algorithms performances with optimal thresholds
Siahmarzkooh ACO-based Type 2 Diabetes Detection using Artificial Neural Networks.
Usha et al. Feature Selection Techniques in Learning Algorithms to Predict Truthful Data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant