CN110119540A - 一种用于生存风险分析的多输出梯度提升树建模方法 - Google Patents

一种用于生存风险分析的多输出梯度提升树建模方法 Download PDF

Info

Publication number
CN110119540A
CN110119540A CN201910315829.3A CN201910315829A CN110119540A CN 110119540 A CN110119540 A CN 110119540A CN 201910315829 A CN201910315829 A CN 201910315829A CN 110119540 A CN110119540 A CN 110119540A
Authority
CN
China
Prior art keywords
survival
gradient
loss function
expression formula
model
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.)
Granted
Application number
CN201910315829.3A
Other languages
English (en)
Other versions
CN110119540B (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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201910315829.3A priority Critical patent/CN110119540B/zh
Publication of CN110119540A publication Critical patent/CN110119540A/zh
Application granted granted Critical
Publication of CN110119540B publication Critical patent/CN110119540B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

本发明提供了一种用于生存风险分析的多输出梯度提升树建模方法,该方法包括:首先在最优梯度提升树(XGBoost)的模型算法框架下,构建用于建立金融、保险、医疗、交通或工业目标行业生存预测模型的生存数据的表达式;然后定义并计算所述生存数据对应的损失函数;随后定义并计算所述损失函数对应的一阶梯度和二阶梯度;最后将计算出的损失函数值以及损失函数的一阶梯度和二阶梯度值同时输入XGBoos模型算法框架,自动训练生成所述目标行业的生存预测模型。本发明的建模方法能更好地表示模型协变量与风险预测值之间的关系;提高模型的预测性能以及泛化能力;有更好的预测性能和风险区分度;并且适用场景广泛。

Description

一种用于生存风险分析的多输出梯度提升树建模方法
技术领域
本发明涉及计算机生存分析和机器学习领域,尤其涉及一种用于生存风险分析的多输出梯度提升树建模方法。
背景技术
生存风险分析,在很多领域都有着广泛的应用,如金融,保险,医疗,交通,工业等。生存风险分析(简称生存分析)主要是研究在观测时间点发生某个特定事件的概率,进而估计随时间变化的风险曲线和生存曲线。与普通的分类和回归问题不同的是,生存风险分析的研究目标是在某个时间点发生特定事件的概率,而不仅仅只是一个目标变量,这使得其与一般研究的分类与回归问题有着较大不同。传统的生存风险分析方法通常以个体风险函数为主要研究对象,并对其做出某种假设,从而预测在不同时间点发生特定事件的概率;生存风险分析中另外一种是研究事件首次命中时间的预测模型。这两种传统的生存风险分析方法都对个体风险函数做出了某种形式的假设,并且设置模型参数与个体协变量之间为线性关系。在未知情况下,一旦个体风险函数违背模型的假设,那么由上述方法构建的生存预测模型的预测性能将会大大降低。
用于建立生存预测模型的生存风险分析方法总体可分为以下几种:
(1)Cox比例风险方法。Cox比例风险方法假设观测对象的风险函数与人
群的基准风险函数之比是一个时不变量,且观测对象的复发风险与协变量之间是线性函数关系,以优化生存数据对应偏似然函数为目标,可以得到易于解释的线性生存预测模型,但是该方法很大程度上限制了生存预测模型的表达能力,无法表示复发风险与协变量之间的非线性关系。
(2)随机生存森林方法。随机生存森林方法来源于随机森林,它主要用于
预测观测对象的生存状态,完全基于生存风险分析中生存函数和风险函数的无参数估计方法,而不再局限于Cox比例风险方法的假设。该方法和众多的无参数估计方法一样,需要大量的数据作为支撑,且容易出现过拟合的现象。
(3)梯度提升树方法。它是一个前向加法模型,其核心思想是每轮迭代生
成新的决策树来学习上一轮模型预测的“残差”,最终预测结果由每一轮经过拟合的决策树的预测结果相加得到。用于生存风险分析的梯度提升方法通常仍然假设观测对象的风险函数与人群的基准风险函数之比是一个时不变量,但是观测对象的复发风险与协变量之间不再局限于线性函数关系,以生存数据对应偏似然函数作为损失函数,以损失函数对上一轮模型预测值的负梯度作为“残差”的近似值。常用的GBM梯度提升树模型,在学习过程中,对上一轮模型预测值的“残差”的近似不够精确。而最优梯度提升树(XGBoost)梯度提升树模型虽然采用二阶近似的方法更加精确地给出了上一轮模型预测值的“残差”,但是其损失函数对于实际的生存数据来说,偏似然函数的近似不够精确。
实现基于深度学习方法的生存预测模型往往需要大量训练样本,并且需要仔细调节生存预测模型的模型参数,并训练该生存预测模型,这会耗费大量时间。同时,复杂的生存预测模型是一个黑盒子,对临床特征的解释性不够,无法用于发现与疾病相关的重要因子,而临床特征解释性在实际疾病预后研究中通常是被要求的,比如无法准确评估癌症相关的基因属于危险因子还是保护因子,这在一定程度上限制了它们在预后研究中的应用。另外,也无法准确描述设备的损坏时间与不同维修方式的关系等。
此外,比如在工业生产新设备投放后,设备故障发生时间的预判并配套维修很重要,这不仅可以节约资金和人力成本,还可以提前更换零部件,保障设备的正常生存经营活动,大大减少因停转带来的各种损失。但设备故障会受到原始零配件和材料的影响,因此构建智能的生存预测模型来评估设备的故障发生时间和概率,找到发生的内在原因非常重要。
发明内容
本发明提出了一种用于生存风险分析的多输出梯度提升树建模方法,该方法是基于多输出梯度提升树建立的,用于利用随访跟踪得到的生存数据建立生存预测模型,称之为增强命中算法(即HitBoost算法),其利用最优梯度提升树(XGBoost梯度提升树)模型更加精确地近似残差以及加入正则化措施的优势,同时为XGBoost梯度提升树的模型算法重新定义更加精确的损失函数,且推导该损失函数对应的一阶梯度和二阶梯度,将该损失函数以及该损失函数对应的一阶梯度和二阶梯度同时输入XGBoost梯度提升树的模型算法框架中以建立生存预测模型。
本发明建立了有效的生存预测模型,并提升生存预测模型的准确性,改善了生存预测模型对潜在随机过程(即个体的风险函数)的假设带来的约束性所造成的不足,解决了基于深度学习方法的生存预测模型在实际应用中解释性不够的问题。
本发明提出的一种用于生存风险分析的多输出梯度提升树建模方法,该方法包括如下步骤:
S1)在最优梯度提升树(XGBoost)的模型算法框架下,首先构建用于建立目标行业生存预测模型的生存数据的表达式;
S2)定义所述目标行业生存预测模型的生存数据对应的损失函数表达式;
S3)计算所述损失函数;
S4)推导所述损失函数对应的一阶梯度和二阶梯度表达式;
S5)计算所述损失函数对应的一阶梯度和二阶梯度;
S6)将计算出的所述损失函数值以及所述损失函数对应的一阶梯度和二阶梯度值同时输入最优梯度提升树(XGBoost)的模型算法框架中,由最优梯度提升树(XGBoost)的模型算法框架自动训练生成所述目标行业的生存预测模型;
所述目标行业为金融、保险、医疗、交通和工业中的任意一种。
本发明充分运用了最优梯度提升树(XGBoost)的模型算法框架的优势,使用了更精确的损失函数,并且推导了该损失函数对应的一阶梯度和二阶梯度,将它们同时输入最优梯度提升树(XGBoost)的模型算法框架来训练所述目标行业的生存预测模型。本发明具有以下优势:
(1)基于梯度提升树算法。梯度提升树算法是机器学习中一种非常突出且被广泛使用的建模方法,它能够很好地表示协变量与风险预测值之间的关系;
(2)基于最优梯度提升树(XGBoost)的模型算法框架。最优梯度提升树(XGBoost)算法作为梯度提升树算法的变体,它更加精确地近似了模型需要拟合的“残差”以及加入正则化措施的优势,这进一步提高了所述目标行业的生存预测模型的预测性能以及模型的泛化能力;
(3)精确的损失函数。在首次命中时间(First Hitting Time,FHT)模型损失函数的基础上,添加了一致性指数的凸性近似函数,使得多输出的梯度提升树模型隐式地学习协变量与潜在随机过程之间的关系。重要性相比传统的生存分析方法具有更好的预测性能和风险区分度,它可以作为一种有效的生存分析方法用于建立生存预测模型和发现与生存相关的重要因子。
另外,本发明有较广泛的适用场景。
附图说明
图1为本发明的基本思路流程图
图2为本发明的具体实施过程
具体实施方式
为使本发明目的,实施方式,技术方案及优点更加清楚明白,以下结合附图及具体实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅以用以解释本发明,并不用于限定本发明。
本发明提出的一种用于生存风险分析的多输出梯度提升树建模方法,该方法包括如下步骤:
S1:构建生存数据的表达式
用于建立目标行业生存预测模型的生存数据由若干个观测对象的生存数据组成,其中,任意一个观测对象i的生存数据可以表示为{(xi,Tii)|i=1,2,…,n},i表示第i个观测对象,n为观测对象的总个数,另外,表示第i个观测对象的协变量,表示第i个观测对象的末次观测时间,δi∈{0,1}表示在Ti时刻是否观测到第i个观测对象发生特定事件(即第i个观测对象在末次观测时间的生存状态),其中,δi=0表示在Ti时刻未观测到第i个观测对象发生特定事件;δi=1表示在Ti时刻观测到第i个观测对象发生特定事件。
S2:定义损失函数的表达式
S201:为将步骤S1中的每个观测对象的生存数据输入最优梯度提升树(XGBoost)的模型算法框架中,需要为最优梯度提升树(XGBoost)的模型算法框架定义损失函数,所述损失函数的表达式如下:
L=L1+θ·L2
其中,L1为所述损失函数的第一部分(即图1中的首次命中时间(First HittingTime,FHT)损失函数),L2为所述损失函数的第二部分(即图1中的一致性指数(concordancein dex,CI)损失函数),θ为所述损失函数的第二部分L2的系数,其也是所述目标行业生存预测模型中需要调整的参数,且0≤θ≤1。
S202:定义L1的表达式:
定义步骤S201中的L1的表达式为似然函数负对数形式,其表示为:
其中,表示第i个观测对象在协变量为xi时,在t时刻发生特定事件的预测概率,I(·)为指示函数,Ti为第i个观测对象的末次观测时间,i=1,2,…,n。
S203:定义L2的表达式:
定义步骤S201中的L2的表达式为:
首先获得集合Ω:对于任意一个观测对象j,j=1,2,…,n,其末次观测时间为Tj,如果特定事件发生,则将末次观测时间小于Tj的其他观测对象i取出,并以(i,j)数对的形式存放在集合Ω;
其中,表示第i个观测对象在其末次观测时间Ti和Ti之前累积发生特定事件的预测概率,其中,i≠j,i,j=1,2,…,n,且
对于集合Ω中任意一个数对(i,j),wi,j的权值,并且,0<γ≤1,η>1,γ和η是建立的所述目标行业生存预测模型中需要调整的参数。
S3:计算损失函数L
S301:将满足步骤S1)构建的生存数据表达式的生存数据训练集输入经过步骤S2定义了损失函数表达式后的最优梯度提升树(XGBoost)的模型算法框架中,所述经过步骤S2定义了损失函数表达式后的最优梯度提升树(XGBoost)的模型算法框架对所述生存数据训练集中的任意一个观测对象i的生存数据的预测值向量为 其中,是所述生存数据训练集中观测对象i的在离散时间点t的预测值,此时,该预测值等于步骤S202)中定义的预测概率的值。
S302:计算L1
遍历所述生存数据训练集,对于任意一个观测对象i的生存数据,如果所述特定事件发生,则根据步骤S301得到的预测值向量计算观测对象i的生存数据在末次观测时间Ti的预测值的自然对数,即如果特定事件不发生,则根据步骤S301得到的预测值向量,用1减去观测对象i在其末次观测时间Ti和Ti之前累积的预测值的加和,并计算其自然对数,即将上述计算值代入步骤S202定义的L1表达式中,计算得到L1
S303:计算L2
遍历集合Ω中的所有数对,按照步骤S203定义的L2的表达式计算得到L2
S304:计算损失函数L
将通过步骤S302和步骤S303计算得到的L1和L2代入步骤S201定义的损失函数L的表达式中,计算得到L。
本发明定义和计算损失函数L的具体实施方式如下:
a:采用算法1来定义并计算用于最优梯度提升树(XGBoost)的模型算法框架的损失函数L,其算法伪代码如下所示,
算法1:自定义损失函数计算
其具体执行过程如下:
a1:将生存数据训练集输入所述目标行业的生存预测模型,其中,任意一个观测对象i的生存数据为{(xi,Tii)|i=1,2,…,n},所述生存预测模型对任意一个观测对象i的生存数据的预测值向量为其中,是观测对象i的在离散时间点t的预测值。初始化L1=0且L2=0,即初始化L=0。
a2:计算损失函数的第一部分L1
遍历所述生存数据训练集,对于任意一个观测对象i的生存数据,如果特定事件发生,则计算观测对象i的生存数据在末次观测时间Ti的预测值的自然对数;如果特定事件不发生,则用1减去观测对象i在其末次观测时间Ti和Ti之前累积的预测值的加和,并计算其自然对数。将所述生存数据训练集中所有观测对象的生存数据的计算值相加,得到L1的表达式及计算值。
a3:计算损失函数的第二部分L2
首先获得集合Ω,对于任意一个观测对象j,j=1,2,…,n,其末次观测时间为Tj,如果特定事件发生,则将末次观测时间小于Tj的其他观测对象i取出,并以(i,j)数对的形式存放在集合Ω,其中i≠j,i=1,2,…,n。然后遍历集合Ω中的所有数对,对于集合Ω中的任意一个数对(i,j),使用公式
计算的值,并使用公式
计算的权值wi,j,然后将计算得到的及其对应的权值wi,j的乘积进行累加,并除以所述集合Ω中与所有数对相关权值的加和,得到L2
a4:计算损失函数L
采用表达式L=L1+θ·L2,得到损失函数L的表达式和计算值。
S4:定义损失函数L的一阶梯度和二阶梯度的表达式
所述最优梯度提升树(XGBoost)的模型算法框架需要输入步骤S2定义的损失函数表达式相对于任意一个观测对象i在任意离散时间点t发生特定事件的预测概率的一阶梯度和二阶梯度才能运行,定义其中,α=∑(i,j)∈Ωwi,j
损失函数L的表达式相对于的一阶梯度表达式为
损失函数L的表达式相对于的二阶梯度表达式为
S5:计算损失函数L的一阶梯度和二阶梯度
S501:计算L1的一阶梯度
如果所述生存数据训练集中观测对象i发生了特定事件,则根据步骤S301得到的预测值向量计算L1的一阶梯度如果所述生存数据训练集中观测对象i没有发生特定事件,则根据步骤S301得到的预测值向量计算L1的一阶梯度
S502:计算L2的一阶梯度
由之前约定可知,因此,L2的一阶梯度表示为
如果所述生存数据训练集中观测对象i发生了特定事件,则根据步骤S301得到的预测值向量计算其中,k表示所述生存数据训练集中任意一个观测对象,且i≠k,k=1,2,…,n,δk=1表示第k个观测对象发生特定事件,Tk表示第k个观测对象的末次观测时间,其中,Ω1={(i,k)|Ti<Tk},并且Ω2={(k,i)|δk=1,Tk<Ti},另外,α、β的值按照步骤S4)定义的表达式进行计算;
如果所述生存数据训练集中观测对象i没有发生特定事件,则根据步骤S301得到的预测值向量计算另外,α、β的值按照步骤S4)定义的表达式进行计算。
S503:将与θ倍的相加,得到L的一阶梯度。
S504:计算L1的二阶梯度
首先计算L1的二阶梯度如果所述生存数据训练集中观测对象i发生了特定事件,则根据步骤S301得到的预测值向量计算L1的二阶梯度如果所述生存数据训练集中观测对象i没有发生特定事件,则根据步骤S301得到的预测值向量计算L1的二阶梯度
S505:计算L2的二阶梯度
计算L2的二阶梯度其中,α″=0。如果所述生存数据训练集中观测对象i发生了特定事件,则根据步骤S301得到的预测值向量计算反之另外,根据步骤S502)计算得到α′、β′,根据步骤S4)计算得到α、β,各个符号在前文已经提及。
S506:将计算出的与θ倍的相加,计算出L的二阶梯度。
本发明定义和计算损失函数L的一阶梯度和二阶梯度的具体实施方式如下:
b:采用算法2来定义并计算用于最优梯度提升树(XGBoost)的模型算法框架的损失函数L的一阶梯度和二阶梯度,其算法伪代码如下所示,
算法2:自定义损失函数的梯度计算
具体计算过程如下:
b1:将所述生存数据训练集和所述生存数据训练集中的任意一个观测对象i的生存数据的预测值向量输入所述目标行业的生存预测模型,其中,所述预测值向量为其中,是观测对象i的在离散时间点t的预测值。
从Ω中获取Ω1和Ω2,使得Ω1={(i,k)|Ti<Tk},Ω2={(k,i)|δk=1,Tk<Ti},其中,k表示所述生存数据训练集中任意一个观测对象,且i≠k,k=1,2,…,n。
b2:计算损失函数L的一阶梯度
首先计算损失函数L第一部分L1的一阶梯度如果所述生存数据训练集中观测对象i发生了特定事件,则L1的一阶梯度为如果所述生存数据训练集中观测对象i没有发生特定事件,则L1的一阶梯度为
其次计算损失函数L第二部分L2的一阶梯度。由于之前约定,因此,如果所述生存训练数据中观测对象i发生了特定事件,则α′等于β′等于如果所述生存训练数据中观测对象i没有发生特定事件,则α′等于β′等于
b3:将与θ倍的相加,得到L的一阶梯度
b4:计算损失函数L的二阶梯度
首先计算损失函数L第一部分L1的二阶梯度如果所述生存训练数据中观测对象i发生了特定事件,则L1的二阶梯度为如果所述生存训练数据中观测对象i没有发生特定事件,则L1的二阶梯度为
其次计算损失函数L第二部分L2的二阶梯度 如果所述生存训练数据中观测对象i发生了特定事件反之以各个符号在前文已经提及。
b5:将与θ倍的相加,得到L的二阶梯度。
S6:实现最优梯度提升树(XGBoost)的模型算法框架接口及训练生存预测模型
将基于定义的损失函数表达式计算出的损失函数值和基于所述损失函数对应的梯度表达式计算得到的损失函数的一阶梯度以及二阶梯度计算值,同时输入最优梯度提升树(XGBoos t)的模型算法框架中。使用XGBoost库所提供的损失函数及其梯度的接口,按照步骤S2-S5的内容重新编程实现上述接口,由最优梯度提升树(XGBoost)的模型算法框架自动训练生成所述目标行业的生存预测模型。其实现过程如下:
S601:根据步骤S2和S3的描述,编程实现XGBoost库自定义损失函数的接口;并进一步根据步骤S4和S5的描述,编程实现XGBoost库自定义损失函数一阶梯度和二阶梯度的接口;
S602:设置最优梯度提升树(XGBoost)的模型的参数,采用所述生存数据训练集训练得到所述目标行业生存预测模型。
S7:预测应用
将待预测的观测对象的生存数据输入经过步骤S6训练完成的所述目标行业的生存预测模型,获得预后结果。所述待预测的观测对象的生存数据格式满足所述步骤S1)构建的观测对象生存数据表达式。
如图2所示,首先将满足步骤S1)构建的生存数据表达式的观测数据通过数据清洗和数据切分等数据预处理以7:3或8:2的概率随机切分成满足步骤S1)构建的生存数据表达式的生存数据训练集和满足步骤S1)构建的生存数据表达式的生存数据测试集;
然后采用所述生存数据训练集通过图1描述的增强命中算法(HitBoost算法)训练所述目标行业的生存预测模型,并采用所述生存数据测试集通过交叉验证调试所述目标行业的生存预测模型的参数θ、γ和η,优化所述目标行业的生存预测模型;
最后,获取新的生存数据,将其进行数据清洗后,依次输入优化后的所述目标行业的生存预测模型中,优化后的所述目标行业的生存预测模型依次输出所述新的生存数据的预测结果,所述新的生存数据格式满足所述步骤S1)构建的生存数据表达式。
如图1所示,采用增强命中算法(HitBoost算法)训练所述目标行业的生存预测模型,其将自定义损失函数以及自定义损失函数的一阶梯度和二阶梯度表达式同时输入最优梯度提升树(XGBoost)的模型算法框架,采用所述生存数据训练集通过梯度提升树算法得到训练好的所述目标行业的生存预测模型,其中,GBM表示梯度提升机;右删失表示截止观测时间点,特定事件还没有发生;然后将需要预测的生存数据依次输入训练好的所述目标行业的生存预测模型,训练好的所述目标行业的生存预测模型以归一化指数函数softmax依次输出所述需要预测的生存数据的预测值。
所述目标行业为金融、保险、医疗、交通、工业中的任意一种。
本发明充分运用最优梯度提升树(XGBoost)的模型算法框架的优势,使用了更精确的损失函数,并且推导了该损失函数对应的一阶梯度和二阶梯度,将它们计算出来并同时输入最优梯度提升树(XGBoost)的模型算法框架来训练生存预测模型,使得能更好地表示协变量与风险预测值之间的关系;进一步提高生存预测模型的预测性能以及模型的泛化能力;有更好的预测性能和风险区分度;并且适用场景广泛。
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围。凡采用等同替换或等效替换,这些变化是显而易见,一切利用本发明构思的发明创造均在保护之列。

Claims (10)

1.一种用于生存风险分析的多输出梯度提升树建模方法,其特征在于:该方法包括如下步骤:
S1)在最优梯度提升树(XGBoost)的模型算法框架下,首先构建用于建立目标行业生存预测模型的生存数据的表达式;
S2)定义所述目标行业生存预测模型的生存数据对应的损失函数表达式;
S3)计算所述损失函数;
S4)推导所述损失函数对应的一阶梯度和二阶梯度表达式;
S5)计算所述损失函数对应的一阶梯度和二阶梯度;
S6)将计算出的所述损失函数以及所述损失函数对应的一阶梯度和二阶梯度同时输入最优梯度提升树(XGBoost)的模型算法框架中,由最优梯度提升树(XGBoost)的模型算法框架自动训练生成所述目标行业的生存预测模型;
所述目标行业为金融、保险、医疗、交通和工业中的任意一种。
2.根据权利要求1所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S1)中构建用于建立目标行业生存预测模型的生存数据的表达式具体为:所述用于建立目标行业生存预测模型的生存数据由若干个观测对象的生存数据组成,其中,任意一个观测对象i的生存数据可以表示为{(xi,Tii)|i=1,2,…,n},i表示第i个观测对象,n为观测对象的总个数,另外,表示第i个观测对象的协变量,表示第i个观测对象的末次观测时间,δi∈{0,1}表示在Ti时刻是否观测到第i个观测对象发生特定事件,其中,δi=0表示在Ti时刻未观测到第i个观测对象发生特定事件;δi=1表示在Ti时刻观测到第i个观测对象发生特定事件。
3.根据权利要求2所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S2)中定义所述目标行业生存预测模型的生存数据对应的损失函数表达式具体包括:
S201)根据步骤S1)构建的所述用于建立目标行业生存预测模型的生存数据的表达式为最优梯度提升树(XGBoost)的模型算法框架定义损失函数,所述损失函数的表达式如下:
L=L1+θ·L2
其中,L1为所述损失函数的第一部分,L2为所述损失函数的第二部分,θ为所述损失函数的第二部分L2的系数,是所述目标行业生存预测模型中需要调整的参数,且0≤θ≤1;
S202)定义L1的表达式:
定义步骤S201)中的L1的表达式为似然函数负对数形式,其表示为:
其中,表示第i个观测对象在协变量为xi时,在任意离散时间点t发生特定事件的预测概率,I(·)为指示函数,i=1,2,…,n;
S203)定义L2的表达式:
定义步骤S201)中的L2的表达式为:
首先获得集合Ω:对于任意一个观测对象j,j=1,2,…,n,其末次观测时间为Tj,如果特定事件发生,则将末次观测时间小于Tj的其他观测对象i取出,并以(i,j)数对的形式存放在集合Ω,其中,i≠j,i,j=1,2,…,n;
表示第i个观测对象在其末次观测时间Ti和Ti之前累积发生特定事件的预测概率,且
对于所述集合Ω中任意一个数对(i,j),wi,j的权值,并且,0<γ≤1,η>1,γ和η是所述目标行业生存预测模型中需要调整的参数。
4.根据权利要求3所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S3)中计算所述损失函数具体包括:
S301)将满足步骤S1)构建的生存数据表达式的生存数据训练集输入经过步骤S2)定义了损失函数表达式的最优梯度提升树(XGBoost)的模型算法框架中,所述经过步骤S2)定义了损失函数表达式的最优梯度提升树(XGBoost)的模型算法框架对所述生存数据训练集中的任意一个观测对象i的生存数据的预测值向量为 其中,是所述生存训练数据集中观测对象i的在任意离散时间点t的预测值,此时,该预测值等于步骤S202)中定义的预测概率的值;
S302)计算L1
遍历所述生存数据训练集,对于任意一个观测对象i的生存数据,根据步骤S301)得到的预测值向量并采用步骤S202)定义的L1的表达式,计算得到L1
S303)计算L2
遍历所述集合Ω中的所有数对,根据步骤S301)得到的预测值向量并采用步骤S203)定义的L2的表达式,计算得到L2
S304)计算损失函数L:
将通过步骤S302)和步骤S303)计算得到的L1和L2代入步骤S201)定义的损失函数L的表达式中,计算得到L。
5.根据权利要求4所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S4)中推导所述损失函数对应的一阶梯度和二阶梯度表达式具体包括:
定义其中,α=∑(i,j)∈Ωwi,j
所述步骤S2)定义的损失函数L的表达式相对于任意一个观测对象i在任意离散时间点t发生特定事件的预测概率的一阶梯度表达式为
所述步骤S2)定义的损失函数L的表达式相对于任意一个观测对象i在任意离散时间点t发生特定事件的预测概率的二阶梯度表达式为
6.根据权利要求5所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S5)中计算所述损失函数对应的一阶梯度和二阶梯度具体包括:
S501)计算L1的一阶梯度
如果所述生存数据训练集中的观测对象i发生了特定事件,则根据步骤S301)得到的预测值向量计算L1的一阶梯度如果观测对象i没有发生特定事件,则根据步骤S301)得到的预测值向量计算L1的一阶梯度
S502)计算L2的一阶梯度
根据步骤S4)得到L2的一阶梯度表达式为如果所述生存数据训练集中的观测对象i发生了特定事件,则根据步骤S301)得到的预测值向量计算其中,k表示所述生存数据训练集中任意一个观测对象,i≠k且k=1,2,…,n,δk=1表示第k个观测对象发生特定事件,Tk表示第k个观测对象的末次观测时间,其中,Ω1={(i,k)|Ti<Tk},并且Ω2={(k,i)|δk=1,Tk<Ti},另外,α、β的值按照步骤S4)定义的表达式进行计算;
如果所述生存数据训练集中的观测对象i没有发生特定事件,则根据步骤S301)得到的预测值向量计算另外,α、β的值按照步骤S4)定义的表达式进行计算;
S503)将计算得到的与θ倍的相加,计算出L的一阶梯度;
S504)计算L1的二阶梯度
如果所述生存数据训练集中的观测对象i发生了特定事件,则根据步骤S301)得到的预测值向量计算L1的二阶梯度如果所述生存数据训练集中的观测对象i没有发生特定事件,则根据步骤S301)得到的预测值向量计算L1的二阶梯度
S505)计算L2的二阶梯度
L2的二阶梯度表达式为其中,α″=0,如果所述生存数据训练集中的观测对象i发生了特定事件,则根据步骤S301)得到的预测值向量计算另外,根据步骤S502)计算得到α′、β′,根据步骤S4)计算得到α、β;如果所述生存数据训练集中的观测对象i没有发生特定事件,则根据步骤S301)得到的预测值向量计算另外,根据步骤S502)计算得到α′、β′,根据步骤S4)计算得到α、β;
S506)将计算得到的与θ倍的相加,计算出L的二阶梯度。
7.根据权利要求6所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,所述步骤S6)中将计算出的所述损失函数以及所述损失函数对应的一阶梯度和二阶梯度同时输入最优梯度提升树(XGBoost)的模型算法框架中,由最优梯度提升树(XGBoost)的模型算法框架自动训练生成所述目标行业的生存预测模型具体包括:
S601)根据步骤S2)和S3)的描述,编程实现XGBoost库自定义损失函数的接口;并进一步根据步骤S4)和S5)的描述,编程实现XGBoost库自定义损失函数一阶梯度和二阶梯度的接口;
S602)设置最优梯度提升树(XGBoost)的模型的参数,采用所述生存数据训练集训练得到所述目标行业生存预测模型。
8.根据权利要求1-7任意一项所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,在所述步骤S2)和S3)之间还包括:将满足步骤S1)构建的生存数据表达式的观测数据通过数据清洗和数据切分,以7:3或8:2的概率随机切分成满足步骤S1)构建的生存数据表达式的生存数据训练集和满足步骤S1)构建的生存数据表达式的生存数据测试集。
9.根据权利要求8所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,在所述步骤S6)之后还包括:采用所述生存数据测试集通过交叉验证调试所述目标行业生存预测模型的参数θ、γ和η,优化所述目标行业生存预测模型。
10.根据权利要求9所述的用于生存风险分析的多输出梯度提升树建模方法,其特征在于,使用所述目标行业生存预测模型进行生存风险分析的方法为:将需要预测的满足所述步骤S1)构建的观测对象生存数据表达式的观测对象生存数据进行数据清洗后输入优化后的所述目标行业生存预测模型中,所述目标行业生存预测模型输出所述需要预测的观测对象生存数据的预测结果。
CN201910315829.3A 2019-04-19 2019-04-19 一种用于生存风险分析的多输出梯度提升树建模方法 Expired - Fee Related CN110119540B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910315829.3A CN110119540B (zh) 2019-04-19 2019-04-19 一种用于生存风险分析的多输出梯度提升树建模方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910315829.3A CN110119540B (zh) 2019-04-19 2019-04-19 一种用于生存风险分析的多输出梯度提升树建模方法

Publications (2)

Publication Number Publication Date
CN110119540A true CN110119540A (zh) 2019-08-13
CN110119540B CN110119540B (zh) 2022-05-03

Family

ID=67521194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910315829.3A Expired - Fee Related CN110119540B (zh) 2019-04-19 2019-04-19 一种用于生存风险分析的多输出梯度提升树建模方法

Country Status (1)

Country Link
CN (1) CN110119540B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110738414A (zh) * 2019-10-15 2020-01-31 北京明略软件系统有限公司 一种风险预测方法和装置及计算机可读存储介质
CN111310931A (zh) * 2020-02-05 2020-06-19 北京三快在线科技有限公司 参数生成方法、装置、计算机设备及存储介质
CN111429970A (zh) * 2019-12-24 2020-07-17 大连海事大学 基于极端梯度提升方法进行特征选择来获取多基因风险评分的方法及系统
CN111461350A (zh) * 2020-04-08 2020-07-28 西安交通大学 一种基于非线性集成模型的预测数据错误风险方法
CN113095390A (zh) * 2021-04-02 2021-07-09 东北大学 基于云数据库和改进集成学习的手杖运动分析系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106682394A (zh) * 2016-11-30 2017-05-17 北京拓明科技有限公司 一种生存风险的大数据分析方法及系统
US20180172667A1 (en) * 2015-06-17 2018-06-21 Uti Limited Partnership Systems and methods for predicting cardiotoxicity of molecular parameters of a compound based on machine learning algorithms
CN108536650A (zh) * 2018-04-03 2018-09-14 北京京东尚科信息技术有限公司 生成梯度提升树模型的方法和装置
CN108896914A (zh) * 2018-05-11 2018-11-27 浙江工业大学 一种锂电池健康状况的梯度提升树建模与预测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180172667A1 (en) * 2015-06-17 2018-06-21 Uti Limited Partnership Systems and methods for predicting cardiotoxicity of molecular parameters of a compound based on machine learning algorithms
CN106682394A (zh) * 2016-11-30 2017-05-17 北京拓明科技有限公司 一种生存风险的大数据分析方法及系统
CN108536650A (zh) * 2018-04-03 2018-09-14 北京京东尚科信息技术有限公司 生成梯度提升树模型的方法和装置
CN108896914A (zh) * 2018-05-11 2018-11-27 浙江工业大学 一种锂电池健康状况的梯度提升树建模与预测方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HUAXIN LI 等: "Demographic Information Inference through Meta-Data Analysis of Wi-Fi Traffic", 《IEEE TRANSACTIONS ON MOBILE COMPUTING 》 *
PEI LIU 等: "Optimizing Survival Analysis of XGBoost for Ties to Predict Disease Progression of Breast Cancer", 《IEEE TRANSACTIONS ON BIOMEDICAL ENGINEERING》 *
刘沛: "基于梯度提升树的生存分析优化方法研究及应用", 《中国优秀博硕士论文全文数据库(硕士) 基础科学辑》 *
毕云帆 等: "基于梯度提升决策树的电力短期负荷预测模型", 《青岛大学学报(工程技术版)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110738414A (zh) * 2019-10-15 2020-01-31 北京明略软件系统有限公司 一种风险预测方法和装置及计算机可读存储介质
CN110738414B (zh) * 2019-10-15 2022-07-15 北京明略软件系统有限公司 一种风险预测方法和装置及计算机可读存储介质
CN111429970A (zh) * 2019-12-24 2020-07-17 大连海事大学 基于极端梯度提升方法进行特征选择来获取多基因风险评分的方法及系统
CN111429970B (zh) * 2019-12-24 2024-03-22 大连海事大学 基于极端梯度提升方法进行特征选择来获取多基因风险评分的方法及系统
CN111310931A (zh) * 2020-02-05 2020-06-19 北京三快在线科技有限公司 参数生成方法、装置、计算机设备及存储介质
CN111461350A (zh) * 2020-04-08 2020-07-28 西安交通大学 一种基于非线性集成模型的预测数据错误风险方法
CN113095390A (zh) * 2021-04-02 2021-07-09 东北大学 基于云数据库和改进集成学习的手杖运动分析系统及方法

Also Published As

Publication number Publication date
CN110119540B (zh) 2022-05-03

Similar Documents

Publication Publication Date Title
CN110119540A (zh) 一种用于生存风险分析的多输出梯度提升树建模方法
CN110427654B (zh) 一种基于敏感状态的滑坡预测模型构建方法及系统
CN103714261B (zh) 二阶段混合模型的智能辅助医疗决策支持方法
CN106980899A (zh) 预测血管树血管路径上的血流特征的深度学习模型和系统
CN112257341B (zh) 一种基于异源数据差补融合的定制产品性能预测方法
CN106408423A (zh) 用于风险评估的方法、系统及构建风险评估系统的方法
CN113052333A (zh) 基于联邦学习进行数据分析的方法及系统
CN104504475A (zh) 基于ar*-svm混合建模的雾霾时间序列预测方法
CN108830417B (zh) 一种基于arma和回归分析的生活能源消费预测方法及系统
Zhang et al. A rough set-based multiple criteria linear programming approach for the medical diagnosis and prognosis
CN111178585A (zh) 基于多算法模型融合的故障接报量预测方法
Fu et al. Objective Bayesian analysis of Pareto distribution under progressive Type-II censoring
CN112668822A (zh) 科技成果转化平台共享系统、方法、存储介质、手机app
CN114660497A (zh) 一种针对容量再生现象的锂离子电池寿命预测方法
CN104376078A (zh) 一种基于知识熵的异常数据检测方法
CN104008433A (zh) 基于贝叶斯动态模型的中长期电力负荷预测方法
CN105488598A (zh) 一种基于模糊聚类的中长期电力负荷预测方法
CN107909202B (zh) 一种基于时间序列的油井产液量集成预测方法
CN116598012A (zh) 一种基于联邦学习价值评估的慢性病医疗保健方法和系统
CN111028086A (zh) 基于聚类与lstm网络的增强指数跟踪方法
CN107564588B (zh) 一种生理健康数据预测装置
CN109994211A (zh) 一种基于ehr数据的慢性肾脏病恶化风险的建模方法
CN113393051B (zh) 基于深度迁移学习的配电网投资决策方法
CN112668770A (zh) 一种基于信息与波形总体相似度的电力负荷预测方法
Chang et al. Non‐homogeneous continuous‐time Markov chain with covariates: Applications to ambulatory hypertension monitoring

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20220503