生存分析:修订间差异

统计学分支
(创建页面,内容为“{{Multiple|{{Cleanup|reason=纯文本(内容和表格)的图片,包括文字处理器校对标记。应转换为wikitext.|date=2019年9月}}<!-- 然后将其转移到ru:Участник:Ailbeve/Survival analysis,如果需要,该网站上的某人可以将其翻译 --> {{refimprove|date=2021年4月}} }} {{short description|统计学分支}} '''生存分析'''是统计学的一个分支,用于分析直到某一事件发生的预期时间长…”)
 
无编辑摘要
第231行: 第231行:
===危险函数和累积危险函数===
===危险函数和累积危险函数===


'''[[hazard function|危险函数]]''',通常表示为</math>\lambda</math></math>h</math>,定义为时间</math>t</math>的条件事件率,在时间</math>t</math>或之后生存(即</math>T\geq t</math>)。假设一个项目已经生存了</math>t</math>时间,我们想知道它在额外的</math>dt</math>时间内不会生存的概率:
'''[[hazard function|危险函数]]''',通常表示为[math]\lambda[math][math]h[/math],定义为时间[math]t[/math]的条件事件率,在时间[math]t[/math]或之后生存(即[math]T\geq t[/math])。假设一个项目已经生存了[math]t[/math]时间,我们想知道它在额外的[math]dt[/math]时间内不会生存的概率:


[math]h(t) = \lim_{dt \rightarrow 0} \frac{\Pr(t \leq T < t+dt)}{dt\cdot S(t)} = \frac{f(t)}{S(t)} = - \frac{S'(t)}{S(t)}.[/math]
[math]h(t) = \lim_{dt \rightarrow 0} \frac{\Pr(t \leq T < t+dt)}{dt\cdot S(t)} = \frac{f(t)}{S(t)} = - \frac{S'(t)}{S(t)}.[/math]
[[Force of mortality|死亡力]]是''危险函数''的同义词,尤其用于[[demography|人口学]]和[[actuarial science|精算科学]],其中它表示为</math>\mu</math>。术语''危险率''是另一个同义词。
[[Force of mortality|死亡力]]是''危险函数''的同义词,尤其用于[[demography|人口学]]和[[actuarial science|精算科学]],其中它表示为[math]\mu[/math]。术语''危险率''是另一个同义词。


生存函数的死亡力定义为</math>\mu(x)=-{d \over dx}\ln(S(x))=\frac{f(x)}{S(x)}[/math]
生存函数的死亡力定义为[math]\mu(x)=-{d \over dx}\ln(S(x))=\frac{f(x)}{S(x)}[/math]


死亡力也被称为失败力。它是死亡分布的概率密度函数。
死亡力也被称为失败力。它是死亡分布的概率密度函数。


在精算科学中,危险率是年龄</math>x</math>的生命的死亡率。对于年龄</math>x</math>的生命,</math>t</math>年后的死亡力是</math>(x + t)</math>岁的死亡力。危险率也被称为失败率。危险率和失败率是可靠性理论中使用的名称。
在精算科学中,危险率是年龄[math]x[/math]的生命的死亡率。对于年龄[math]x[/math]的生命,[math]t[/math]年后的死亡力是[math](x + t)[/math]岁的死亡力。危险率也被称为失败率。危险率和失败率是可靠性理论中使用的名称。


任何函数</math>h</math>是危险函数当且仅当它满足以下属性:
任何函数[math]h[/math]是危险函数当且仅当它满足以下属性:


1. </math>\forall x\geq0\left(h(x)\geq0\right)</math> ,
1. [math]\forall x\geq0\left(h(x)\geq0\right)[/math] ,
2. </math>\int_{0}^{\infty} h(x)dx=\infty[/math] .
2. [math]\int_{0}^{\infty} h(x)dx=\infty[/math] .


事实上,危险率通常比寿命分布的其他表示形式更能说明失败的潜在机制。
事实上,危险率通常比寿命分布的其他表示形式更能说明失败的潜在机制。


危险函数必须是非负的,</math>\lambda(t)\geq0[/math>,其在</math>[0, \infty]</math>上的积分必须是无限的,但不受其他约束;它可能是增加或减少的,非单调的,或不连续的。一个例子是[[bathtub curve|浴缸曲线]]危险函数,对于小的</math>t</math>值很大,降低到某个最小值,然后再次增加;这可以模拟一些机械系统在操作后不久或随着系统老化后很久才失败的性质。
危险函数必须是非负的,[math]\lambda(t)\geq0[/math>,其在[math][0, \infty][/math]上的积分必须是无限的,但不受其他约束;它可能是增加或减少的,非单调的,或不连续的。一个例子是[[bathtub curve|浴缸曲线]]危险函数,对于小的[math]t[/math]值很大,降低到某个最小值,然后再次增加;这可以模拟一些机械系统在操作后不久或随着系统老化后很久才失败的性质。


危险函数可以另外用'''累积危险函数'''表示,通常表示为</math>\Lambda</math></math>H</math>
危险函数可以另外用'''累积危险函数'''表示,通常表示为[math]\Lambda[/math][math]H[/math]


[math]\,\Lambda(t) = -\log S(t)[/math]
[math]\,\Lambda(t) = -\log S(t)[/math]
第265行: 第265行:
这是随时间累积的危险。
这是随时间累积的危险。


</math>\Lambda(t)</math>的定义中,我们看到当''t''趋于无限时,它无限增加(假设</math>S(t)</math>趋于零)。这意味着</math>\lambda(t)</math>不能太快减少,因为根据定义,累积危险必须发散。例如,</math>\exp(-t)</math>不是任何生存分布的危险函数,因为其积分收敛到1。
[math]\Lambda(t)[/math]的定义中,我们看到当''t''趋于无限时,它无限增加(假设[math]S(t)[/math]趋于零)。这意味着[math]\lambda(t)[/math]不能太快减少,因为根据定义,累积危险必须发散。例如,[/math]\exp(-t)[/math]不是任何生存分布的危险函数,因为其积分收敛到1。


生存函数</math>S(t)</math>、累积危险函数</math>\Lambda(t)</math>、密度</math>f(t)</math>、危险函数</math>\lambda(t)</math>和寿命分布函数</math>F(t)</math>通过
生存函数[math]S(t)[/math]、累积危险函数[math]\Lambda(t)[/math]、密度[math]f(t)[/math]、危险函数[math]\lambda(t)[/math]和寿命分布函数[math]F(t)[/math]通过
[math]S(t) = \exp [ -\Lambda(t) ] = \frac{f(t)}{\lambda(t)} = 1-F(t), \quad t > 0.[/math]
[math]S(t) = \exp [ -\Lambda(t) ] = \frac{f(t)}{\lambda(t)} = 1-F(t), \quad t > 0.[/math]
相互关联。
相互关联。
第273行: 第273行:
===从生存分布派生的量===
===从生存分布派生的量===


特定时间</math>t_0</math>的'''未来寿命'''是在存活到年龄</math>t_0</math>的情况下,直到死亡的剩余时间。因此,在当前标记中,它是</math>T - t_0[/math]。'''预期未来寿命'''是未来寿命的[[expected value|期望值]]。在年龄</math>t_0</math>存活并在或在</math>t_0+t[/math>之前死亡的概率只是
特定时间[math]t_0[/math]的'''未来寿命'''是在存活到年龄[math]t_0[/math]的情况下,直到死亡的剩余时间。因此,在当前标记中,它是[math]T - t_0[math]。'''预期未来寿命'''是未来寿命的[[expected value|期望值]]。在年龄[math]t_0[/math]存活并在或在[math]t_0+t[/math]之前死亡的概率只是


[math]P(T \le t_0 + t \mid T > t_0) = \frac{P(t_0 < T \le t_0 + t)}{P(T > t_0)} = \frac{F(t_0 + t) - F(t_0)}{S(t_0)}.[/math]
[math]P(T \le t_0 + t \mid T > t_0) = \frac{P(t_0 < T \le t_0 + t)}{P(T > t_0)} = \frac{F(t_0 + t) - F(t_0)}{S(t_0)}.[/math]
第284行: 第284行:
其中第二个表达式是通过[[integration by parts|部分积分]]得到的。
其中第二个表达式是通过[[integration by parts|部分积分]]得到的。


对于</math>t_0 = 0</math>,即出生时,这就简化为预期寿命。
对于[math]t_0 = 0[/math],即出生时,这就简化为预期寿命。


在可靠性问题中,预期寿命被称为“平均故障时间(mean time to failure)”,而预期的未来寿命被称为“剩余平均寿命(mean residual lifetime)”。
在可靠性问题中,预期寿命被称为“平均故障时间(mean time to failure)”,而预期的未来寿命被称为“剩余平均寿命(mean residual lifetime)”。
第311行: 第311行:
通常假设在给定参数的情况下数据是独立的。然后,似然函数是每个数据的似然的乘积。将数据划分为四类:未割裂、左割裂、右割裂和区间割裂是方便的。这些在下面的方程中分别表示为“unc.”、“l.c.”、“r.c.”和“i.c.”。
通常假设在给定参数的情况下数据是独立的。然后,似然函数是每个数据的似然的乘积。将数据划分为四类:未割裂、左割裂、右割裂和区间割裂是方便的。这些在下面的方程中分别表示为“unc.”、“l.c.”、“r.c.”和“i.c.”。


对于未审查的数据,其中</math>T_i</math>等于死亡时的年龄,我们有:
对于未审查的数据,其中[math]T_i[/math]等于死亡时的年龄,我们有:


[math] \Pr(T = T_i\mid\theta) = f(T_i\mid\theta) .[/math]
[math] \Pr(T = T_i\mid\theta) = f(T_i\mid\theta) .[/math]


对于左审查数据,即已知死亡年龄小于</math>T_i</math>,我们有:
对于左审查数据,即已知死亡年龄小于[math]T_i[/math],我们有:


[math] \Pr(T < T_i\mid\theta) = F(T_i\mid\theta) = 1 - S(T_i\mid\theta) .[/math]
[math] \Pr(T < T_i\mid\theta) = F(T_i\mid\theta) = 1 - S(T_i\mid\theta) .[/math]


对于右审查数据,即已知死亡年龄大于</math>T_i</math>,我们有:
对于右审查数据,即已知死亡年龄大于[math]T_i[/math],我们有:


[math] \Pr(T > T_i\mid\theta) = 1 - F(T_i\mid\theta) = S(T_i\mid\theta) .[/math]
[math] \Pr(T > T_i\mid\theta) = 1 - F(T_i\mid\theta) = S(T_i\mid\theta) .[/math]


对于间隔审查的数据,即已知死亡年龄小于</math>T_{i,r}</math>且大于</math>T_{i,l}</math>,我们有:
对于间隔审查的数据,即已知死亡年龄小于[math]T_{i,r}[/math]且大于[math]T_{i,l}[/math],我们有:


[math] \Pr(T_{i,l} < T < T_{i,r}\mid\theta) = S(T_{i,l}\mid\theta) - S(T_{i,r}\mid\theta) .[/math]
[math] \Pr(T_{i,l} < T < T_{i,r}\mid\theta) = S(T_{i,l}\mid\theta) - S(T_{i,r}\mid\theta) .[/math]


一个重要的间隔审查数据应用场景是当前状态数据,其中事件</math> T_i</math>已知在观察时间前未发生,并且在下一个观察时间前已发生。
一个重要的间隔审查数据应用场景是当前状态数据,其中事件[math] T_i[/math]已知在观察时间前未发生,并且在下一个观察时间前已发生。


==非参数估计==
==非参数估计==

2024年1月23日 (二) 15:18的版本

生存分析统计学的一个分支,用于分析直到某一事件发生的预期时间长度,如生物有机体的死亡和机械系统的故障。在工程学中,这一主题被称为可靠性理论可靠性分析,在经济学中被称为持续时间分析持续时间建模,在社会学中被称为事件历史分析。生存分析试图回答诸如:一个人群中有多少比例能够存活超过一定时间?在那些存活下来的人中,他们的死亡或失败率是多少?是否可以考虑多种死亡或失败的原因?特定环境或特征如何增加或减少存活的概率?

为了回答这些问题,有必要定义“生命期”。在生物生存的情况下,死亡是明确的,但对于机械可靠性,失败可能没有明确定义,因为可能存在部分失败、程度问题或在时间上不明确定位的机械系统。即使在生物问题中,一些事件(例如,心脏病发作或其他器官衰竭)也可能存在相同的模糊性。下面概述的理论假设在特定时间有明确定义的事件;其他情况可能更适合由明确考虑模糊事件的模型处理。

更广泛地说,生存分析涉及对时间到事件数据的建模;在这种情境中,死亡或失败被视为生存分析文献中的“事件”——传统上,每个受试者只发生一次事件,之后生物体或机制就死亡或损坏。反复事件重复事件模型放宽了这一假设。在系统可靠性以及社会科学和医学研究的许多领域中,反复事件的研究是相关的。

生存分析简介

生存分析有几种用途:

生存分析中常用术语的定义

以下术语在生存分析中常用:

  • 事件:死亡、疾病发生、疾病复发、康复或其他感兴趣的经历
  • 时间:从观察期开始(如手术或开始治疗)到(i)事件发生,或(ii)研究结束,或(iii)失去联系或退出研究的时间。
  • 截尾/截尾观察:当我们对个体生存时间有一些信息,但不确切知道生存时间时,就会发生截尾。在截尾的意义上,该受试者在截尾时间之后的情况没有观察到或已知。一个截尾受试者在观察时间结束后可能发生也可能不发生事件。
  • 生存函数 S(t):一个受试者比时间t生存更长的概率。

示例:急性髓系白血病生存数据

此示例使用R中的“survival”包中的急性髓系白血病生存数据集“aml”。该数据集来自Miller (1997)[1],问题是标准化疗课程是否应该延长('维持')额外的周期。

按生存时间排序的aml数据集显示在框中。

按生存时间排序的aml数据集
  • 时间由变量"time"表示,即生存时间或截尾时间
  • 事件(aml癌症复发)由变量"status"表示。0 = 无事件(截尾),1 = 事件(复发)
  • 治疗组:变量"x"指示是否给予维持化疗

最后一次观察(11号),在161周时被截尾。截尾表明患者未发生事件(未复发aml癌症)。另一位受试者,3号观察,在13周被截尾(状态为0)。这位受试者只在研究中呆了13周,并且在这13周内未复发aml癌症。这位患者可能是在研究接近结束时入组,因此只能观察13周。也有可能这位患者是研究初期入组,但在研究中失踪或退出。表格显示,其他受试者分别在16周、28周和45周(观察17、6和 9,状态为0)被截尾。其余受试者在研究中都经历了事件(aml癌症复发)。感兴趣的问题是,维持患者的复发是否比非维持患者晚。

Kaplan–Meier图用于aml数据

存活函数S(t),是指一个受试者存活时间超过时间t的概率。理论上S(t)是一条平滑的曲线,但通常使用Kaplan–Meier(KM)曲线来估计。下图显示了aml数据的KM图,并可如下解释:

  • x轴是时间,从零开始(观察开始时)到最后观察到的时间点。
  • y轴是存活的受试者比例。在时间零点,100%的受试者在没有事件发生的情况下存活。
  • 实线(类似于楼梯)显示了事件发生的进展。
  • 垂直下降表示发生了一个事件。在上面显示的aml表中,有两名受试者在第五周发生事件,两名在第八周,一名在第九周,依此类推。这些在第五周、第八周等时间点发生的事件,通过KM图中的垂直下降来表示。
  • KM图的最右端在161周有一个刻度标记。这个垂直刻度标记表示在此时间点有一个病人被剔除。在aml数据表中,有五名受试者被剔除,分别在13、16、28、45和161周。KM图中有五个刻度标记,对应于这些被剔除的观察。

aml数据的生命表

生命表以事件发生次数和每个事件时间点的存活比例总结存活数据。使用R 软件创建的aml数据的生命表如下所示。

aml数据的生命表

生命表总结了每个事件时间点的事件和存活比例。生命表中的列有以下解释:

  • time表示发生事件的时间点。
  • n.risk是在时间点t之前立即面临风险的受试者数量。"面临风险"意味着受试者在时间t之前没有发生事件,并且在时间t或之前没有被剔除。
  • n.event是在时间t发生事件的受试者数量。
  • survival是使用Kaplan–Meier乘积极限估计确定的存活比例。
  • std.err是估计存活的标准误差。Kaplan–Meier乘积极限估计的标准误差是使用Greenwood公式计算的,取决于面临风险的数量(表中的n.risk),死亡数量(表中的n.event)和存活比例(表中的survival)。
  • 下95% CI和上95% CI是存活比例的下限和上限95%置信区间。

对数秩检验:测试aml数据中的存活差异

对数秩检验比较两个或多个组的存活时间。这个例子使用对数秩检验来检验aml数据中维持治疗组与非维持治疗组的存活差异。图表显示了按治疗组分开的aml数据的KM图,数据中的变量"x"表示治疗组。

aml中按治疗组的Kaplan–Meier图

对数秩检验的零假设是各组的存活相同。每个时间点每组存活的预期数量根据每个事件时间点各组面临的风险数量进行调整。对数秩检验确定每组观察到的事件数量是否与预期数量显著不同。正式检验基于卡方统计量。当对数秩统计量很大时,这是组间存活时间差异的证据。对数秩统计量大致遵循自由度为一的卡方分布,p值是使用卡方检验计算的。

对于示例数据,存活差异的对数秩检验给出的p值为p=0.0653,表明在0.05的α水平下,治疗组在存活上没有显著差异。样本大小为23名受试者,因此检测治疗组间差异的能力较小。卡方检验基于渐近近似,因此对于小样本大小,p值应谨慎对待。

Cox比例风险(PH)回归分析

当预测变量是分类的(例如,药物与安慰剂),或取少量值(例如,药物剂量0、20、50和100mg/天)且可以视为分类时,Kaplan–Meier曲线和对数秩检验最有用。对数秩检验和KM曲线不易与基因表达、白细胞计数或年龄等定量预测因子一起使用。对于定量预测变量,一种替代方法是Cox比例风险回归分析。Cox PH模型也适用于分类预测变量,这些变量编码为{0,1}指示符或虚拟变量。对数秩检验是Cox PH分析的一个特例,可以使用Cox PH软件进行。

示例:黑色素瘤的Cox比例风险回归分析

此示例使用Dalgaard第14章中的黑色素瘤数据集。 [2]

数据位于R包ISwR中。使用 R进行的Cox比例风险回归分析给出了下面框中所示的结果。

黑色素瘤数据集的Cox比例风险回归输出。预测变量是性别1:女性,2:男性。

Cox回归结果的解释如下。

  • 性别编码为数字向量(1:女性,2:男性)。R 对Cox模型的总结给出了第二组相对于第一组的风险比(HR),即男性与女性。
  • coef = 0.662是男性相对于女性的风险比对数的估计值。
  • exp(coef) = 1.94 = exp(0.662) - 风险比的对数(coef= 0.662)通过exp(coef)转换为风险比。Cox模型的总结为第二组相对于第一组给出了风险比。估计的风险比为1.94,表明在这些数据中,男性的死亡风险(存活率更低)高于女性。
  • se(coef) = 0.265是对数风险比的标准误差。
  • z = 2.5 = coef/se(coef) = 0.662/0.265。将coef除以其标准误差得到z分数。
  • p=0.013。对于性别的z=2.5,p值是p=0.013,表明存活与性别的功能有显著差异。

摘要输出还给出了危险比率的上下95%置信区间:下界95% = 1.15;上界95% = 3.26。

最后,输出给出了对模型整体显著性的三种替代测试的p值:

  • 似然比测试 = 6.15在1自由度上,p=0.0131
  • 瓦尔德测试 = 6.24在1自由度上,p=0.0125
  • 评分(对数秩)测试 = 6.47在1自由度上,p=0.0110

这三种测试在渐近上是等价的。对于足够大的N,它们会给出类似的结果。对于小的N,它们可能有所不同。最后一行,“评分(对数秩)测试”是对数秩测试的结果,p=0.011,与对数秩测试的结果相同,因为对数秩测试是Cox PH回归的一个特例。似然比测试对小样本尺寸的表现更好,因此通常更受青睐。

使用协变量的Cox模型在黑色素瘤数据中的应用

Cox模型通过允许添加额外的协变量来扩展对数秩测试。这个例子使用了黑色素瘤数据集,其中预测变量包括一个连续的协变量,即肿瘤的厚度(变量名 = "thick")。

黑色素瘤肿瘤厚度的直方图

在直方图中,厚度值呈正偏态,并没有高斯型的对称概率分布。包括Cox模型在内的回归模型,通常在变量呈正态分布时给出更可靠的结果。, February 2023 {{citation}}: Cite has empty unknown parameters: |cat2=, |cat-date2=, |cat3=, and |cat-date3= (help); Missing or empty |title= (help); Unknown parameter |cat-date= ignored (help); Unknown parameter |cat= ignored (help)[citation needed] 对于这个例子,我们可能使用对数变换。肿瘤厚度的对数看起来更接近正态分布,因此Cox模型将使用对数厚度。Cox PH分析在框中给出了结果。

带有协变量对数肿瘤厚度的黑色素瘤数据集的Cox PH输出

所有三个总体测试(似然、瓦尔德和评分)的p值都是显著的,表明模型是显著的。对数(thick)的p值为6.9e-07,危险比率HR = exp(coef) = 2.18,表明肿瘤的厚度与死亡风险增加之间有强烈的关系。

相比之下,性别的p值现在为p=0.088。危险比率HR = exp(coef) = 1.58,95%置信区间为0.934到2.68。因为HR的置信区间包括1,这些结果表明,在控制肿瘤厚度之后,性别对HR差异的贡献较小,仅趋向于显著性。对性别的对数(厚度)图表和对数(厚度)的t检验都表明,在首次就诊时,男性和女性肿瘤的厚度存在显著差异。

Cox模型假设危险是成比例的。可以使用R 函数cox.zph()来检验比例危险假设。p值小于0.05表明危险不成比例。对于黑色素瘤数据,我们得到p=0.222。因此,我们不能拒绝危险成比例的零假设。在所引用的教科书中描述了用于检查Cox模型的其他测试和图表。

Cox模型的扩展

Cox模型可以扩展以处理简单分析的变化。

  • 分层。可以将受试者划分为不同的层,其中每个层中的受试者相对于从其他层随机选择的受试者来说,彼此之间更为相似。假设回归参数在各层中是相同的,但每个层可能存在不同的基线危险。分层对于使用匹配受试者的分析、处理患者子集(如不同的诊所)以及处理比例危险假设的违反都很有用。
  • 随时间变化的协变量。在临床试验中,某些变量(如性别和治疗组)通常保持不变。其他临床变量,如血清蛋白水平或伴随药物剂量可能在研究过程中发生变化。Cox模型可以扩展以适应此类随时间变化的协变量。

树状结构的生存模型

Cox PH回归模型是一个线性模型。它类似于线性回归和逻辑回归。具体来说,这些方法假设一条线、曲线、平面或表面足以将组别(存活、死亡)分开或估计量化响应(生存时间)。

在某些情况下,替代分区可以提供更准确的分类或量化估计。一组替代方法是树状结构的生存模型,[3][4][5] including survival random forests.[6]树状结构的生存模型可能比Cox模型提供更准确的预测。对于给定的数据集,检查这两种模型是合理的策略。

生存树分析示例

本例中的生存树分析使用了R 包“rpart”。[7] 该示例基于rpart数据集中的146名C期前列腺癌患者。Rpart及其stagec示例在Atkinson和Therneau (1997)中描述,[8] 同时也作为rpart包的一个小册子分发。[7]

stagec中的变量包括:

  • pgtime: 进展到时间或最后一次随访未进展
  • pgstat: 最后一次随访的状态(1=进展,0=被审查)
  • age: 诊断时的年龄
  • eet: 早期内分泌治疗(1=无,0=有)
  • ploidy: 二倍体/四倍体/非整倍体DNA模式
  • g2: G2期细胞的百分比
  • grade: 肿瘤等级(1-4)
  • gleason: Gleason等级(3-10)

分析产生的生存树如图所示。

前列腺癌数据集的生存树

树中的每个分支表示对一个变量值的分割。例如,树的根部将等级小于2.5的受试者与等级2.5或更高的受试者分开。终端节点指示该节点中的受试者数量、发生事件的受试者数量以及与根相比的相对事件率。最左侧节点的值1/33表示该节点中33名受试者中有一人发生了事件,相对事件率为0.122。在最右下方的节点中,值11/15表示该节点中15名受试者中有11人发生了事件,相对事件率为2.7。

生存随机森林

构建单一生存树的替代方法是构建许多生存树,其中每棵树都是使用数据的样本构建的,并平均这些树来预测生存。[6] 这是生存随机森林模型背后的方法。生存随机森林分析可在R 包“randomForestSRC”中进行。[9]

randomForestSRC包括使用pbc数据集的生存随机森林分析示例。该数据来自1974至1984年间进行的梅奥诊所原发性胆汁性肝硬化(PBC)试验。在这个示例中,随机森林生存模型比Cox PH模型提供了更准确的生存预测。预测误差是通过bootstrap re-sampling估计的。

深度学习生存模型

深度表示学习的最新进展已扩展到生存估计。DeepSurv[10]模型提出用多层感知器替换CoxPH模型的对数线性参数化。像Deep Survival Machines[11]和Deep Cox Mixtures[12]等进一步扩展涉及使用潜在变量混合模型来将时至事件分布建模为参数或半参数分布的混合,同时共同学习输入协变量的表示。深度学习方法尤其在复杂输入数据模式(如图像和临床时间序列)上表现出色。

一般公式

生存函数

主要关注的对象是生存函数,通常表示为S,定义为

[math]S(t) = \Pr(T > t)[/math] 其中t是某个时间,T是表示死亡时间的随机变量,而"Pr"代表概率。即生存函数是死亡时间晚于某个指定时间t的概率。 生存函数在生物生存问题中也称为survivor functionsurvivorship function,在机械生存问题中称为reliability function。在后一种情况下,可靠性函数表示为R(t)。

通常假设S(0) = 1,尽管如果存在立即死亡或失败的可能性,它可能小于1 

生存函数必须是非增的:如果ut,则S(u) ≤ S(t)。这个性质直接因为T>u意味着T>t而成立。这反映了只有当达到所有较小的年龄时,才可能生存到更晚的年龄的概念。鉴于此属性,生命期分布函数和事件密度(下文的Ff)是良定义的。

生存函数通常假定随着年龄的增长而趋于零(即,S(t) → 0 当 t → ∞),尽管如果永生是可能的,极限可能大于零。例如,我们可以将生存分析应用于稳定和不稳定的碳同位素混合;不稳定同位素迟早会衰减,但稳定同位素将无限期持续。

寿命分布函数和事件密度

相关量是基于生存函数定义的。

寿命分布函数,通常表示为F,定义为生存函数的补函数,

[math]F(t) = \Pr(T \le t) = 1 - S(t).[/math] 如果F可微分的,那么其导数,即寿命分布的密度函数,通常表示为f,

[math]f(t) = F'(t) = \frac{d}{dt} F(t).[/math] 函数f有时称为事件密度; 它是单位时间内死亡或失败事件的速率。

生存函数可以用概率分布概率密度函数表示

[math]S(t) = \Pr(T > t) = \int_t^{\infty} f(u)\,du = 1-F(t).[/math] 类似地,可以定义生存事件密度函数

[math]s(t) = S'(t) = \frac{d}{dt} S(t) = \frac{d}{dt} \int_t^{\infty} f(u)\,du = \frac{d}{dt} [1-F(t)] = -f(t).[/math] 在其他领域,如统计物理学中,生存事件密度函数被称为首次通过时间密度。

危险函数和累积危险函数

危险函数,通常表示为[math]\lambda[math]或[math]h[/math],定义为时间[math]t[/math]的条件事件率,在时间[math]t[/math]或之后生存(即[math]T\geq t[/math])。假设一个项目已经生存了[math]t[/math]时间,我们想知道它在额外的[math]dt[/math]时间内不会生存的概率:

[math]h(t) = \lim_{dt \rightarrow 0} \frac{\Pr(t \leq T < t+dt)}{dt\cdot S(t)} = \frac{f(t)}{S(t)} = - \frac{S'(t)}{S(t)}.[/math] 死亡力危险函数的同义词,尤其用于人口学精算科学,其中它表示为[math]\mu[/math]。术语危险率是另一个同义词。

生存函数的死亡力定义为[math]\mu(x)=-{d \over dx}\ln(S(x))=\frac{f(x)}{S(x)}[/math]

死亡力也被称为失败力。它是死亡分布的概率密度函数。

在精算科学中,危险率是年龄[math]x[/math]的生命的死亡率。对于年龄[math]x[/math]的生命,[math]t[/math]年后的死亡力是[math](x + t)[/math]岁的死亡力。危险率也被称为失败率。危险率和失败率是可靠性理论中使用的名称。

任何函数[math]h[/math]是危险函数当且仅当它满足以下属性:

1. [math]\forall x\geq0\left(h(x)\geq0\right)[/math] , 2. [math]\int_{0}^{\infty} h(x)dx=\infty[/math] .

事实上,危险率通常比寿命分布的其他表示形式更能说明失败的潜在机制。

危险函数必须是非负的,[math]\lambda(t)\geq0[/math>,其在[math][0, \infty][/math]上的积分必须是无限的,但不受其他约束;它可能是增加或减少的,非单调的,或不连续的。一个例子是浴缸曲线危险函数,对于小的[math]t[/math]值很大,降低到某个最小值,然后再次增加;这可以模拟一些机械系统在操作后不久或随着系统老化后很久才失败的性质。

危险函数可以另外用累积危险函数表示,通常表示为[math]\Lambda[/math]或[math]H[/math]:

[math]\,\Lambda(t) = -\log S(t)[/math] 因此转置符号并指数化

[math]\,S(t) = \exp(-\Lambda(t))[/math] 或微分(使用链式法则)

[math]\frac{d}{dt} \Lambda(t) = -\frac{S'(t)}{S(t)} = \lambda(t).[/math] “累积危险函数”这个名字来自于

[math] \Lambda(t) = \int_0^{t} \lambda(u)\,du[/math] 这是随时间累积的危险。

从[math]\Lambda(t)[/math]的定义中,我们看到当t趋于无限时,它无限增加(假设[math]S(t)[/math]趋于零)。这意味着[math]\lambda(t)[/math]不能太快减少,因为根据定义,累积危险必须发散。例如,[/math]\exp(-t)[/math]不是任何生存分布的危险函数,因为其积分收敛到1。

生存函数[math]S(t)[/math]、累积危险函数[math]\Lambda(t)[/math]、密度[math]f(t)[/math]、危险函数[math]\lambda(t)[/math]和寿命分布函数[math]F(t)[/math]通过 [math]S(t) = \exp [ -\Lambda(t) ] = \frac{f(t)}{\lambda(t)} = 1-F(t), \quad t > 0.[/math] 相互关联。

从生存分布派生的量

特定时间[math]t_0[/math]的未来寿命是在存活到年龄[math]t_0[/math]的情况下,直到死亡的剩余时间。因此,在当前标记中,它是[math]T - t_0[math]。预期未来寿命是未来寿命的期望值。在年龄[math]t_0[/math]存活并在或在[math]t_0+t[/math]之前死亡的概率只是

[math]P(T \le t_0 + t \mid T > t_0) = \frac{P(t_0 < T \le t_0 + t)}{P(T > t_0)} = \frac{F(t_0 + t) - F(t_0)}{S(t_0)}.[/math] 因此,未来寿命的概率密度是

[math]\frac{d}{dt}\frac{F(t_0 + t) - F(t_0)}{S(t_0)} = \frac{f(t_0 + t)}{S(t_0)}[/math] 预期未来寿命是

[math]\frac{1}{S(t_0)} \int_0^{\infty} t\,f(t_0+t)\,dt = \frac{1}{S(t_0)} \int_{t_0}^{\infty} S(t)\,dt,[/math] 其中第二个表达式是通过部分积分得到的。

对于[math]t_0 = 0[/math],即出生时,这就简化为预期寿命。

在可靠性问题中,预期寿命被称为“平均故障时间(mean time to failure)”,而预期的未来寿命被称为“剩余平均寿命(mean residual lifetime)”。

由于个体存活到年龄t或更晚的概率为S(t),根据定义,初始人口n个新生儿在年龄t时的预期存活数为n × S(t),假设所有个体的存活函数相同。因此,存活者的预期比例为S(t)。如果不同个体的存活是独立的,那么年龄t时的存活者数量具有参数为nS(t)的二项分布,存活者比例的方差S(t) × (1-S(t))/n

通过解方程S(t) = q求解t,可以找到特定比例的存活者所在的年龄,其中q是所讨论的分位数。通常人们感兴趣的是中位数寿命,对于此q = 1/2,或其他分位数,如q = 0.90 或 q = 0.99。

割裂(Censoring)

割裂是一种缺失数据问题,其中事件到达时间因诸如研究终止之前并非所有招募对象都表现出感兴趣的事件或对象在经历事件之前离开研究等原因而未被观察到。割裂在生存分析中很常见。

如果只知道真实事件时间T的下限l,使得T > l,这被称为“右割裂(right censoring)”。例如,右割裂会发生在那些出生日期已知但在被失访或研究结束时仍然存活的对象身上。我们通常会遇到右割裂数据。

如果感兴趣的事件在对象被纳入研究之前已经发生,但不知道何时发生,则数据被称为“左割裂(left-censored)”。[13] 当只能说事件发生在两次观察或检查之间时,这是“区间割裂(interval censoring)”。

例如,当一个永久性牙齿在牙科研究开始前已经出现时,就会发生左割裂。在同一研究中,如果永久牙在当前检查时已在口腔中,但在之前的检查中尚未出现,则出现时间是区间割裂的。区间割裂在HIV/AIDS研究中经常发生。事实上,HIV血清转换的时间只能通过实验室评估来确定,通常在访问医生后才开始。然后人们只能得出结论,HIV血清转换发生在两次检查之间。对于艾滋病的诊断也是如此,它基于临床症状,需要通过医学检查来确认。

也可能发生这样的情况:寿命小于某个阈值的对象根本不被观察到:这被称为“截断”(truncation)。注意,截断与左割裂不同,因为对于左割裂数据,我们知道对象存在,但对于截断数据,我们可能完全不知道对象。截断也很常见。在所谓的“延迟进入(delayed entry)”研究中,对象直到达到一定年龄时才被观察到。例如,人们可能直到达到上学年龄才被观察到。学龄前年龄组中的任何已故对象都是未知的。左截断数据在精算工作中很常见,用于寿险养老金[14]

左割裂数据可能发生在个人的生存时间在其随访期左侧不完整的情况下。例如,在流行病学例子中,我们可能从某人对感染检测呈阳性的时间开始监测其传染病。虽然我们可能知道感兴趣持续时间的右侧,但我们可能永远不会知道暴露于传染源的确切时间。[15]

拟合数据参数

生存模型可以有用地视为普通回归模型,其中响应变量是时间。然而,由于割裂的原因,计算似然函数(用于拟合参数或进行其他类型的推断)变得复杂。在割裂数据的情况下,生存模型的似然函数按以下方式制定。根据定义,似然函数是给定模型参数的数据的条件概率。 通常假设在给定参数的情况下数据是独立的。然后,似然函数是每个数据的似然的乘积。将数据划分为四类:未割裂、左割裂、右割裂和区间割裂是方便的。这些在下面的方程中分别表示为“unc.”、“l.c.”、“r.c.”和“i.c.”。

对于未审查的数据,其中[math]T_i[/math]等于死亡时的年龄,我们有:

[math] \Pr(T = T_i\mid\theta) = f(T_i\mid\theta) .[/math]

对于左审查数据,即已知死亡年龄小于[math]T_i[/math],我们有:

[math] \Pr(T < T_i\mid\theta) = F(T_i\mid\theta) = 1 - S(T_i\mid\theta) .[/math]

对于右审查数据,即已知死亡年龄大于[math]T_i[/math],我们有:

[math] \Pr(T > T_i\mid\theta) = 1 - F(T_i\mid\theta) = S(T_i\mid\theta) .[/math]

对于间隔审查的数据,即已知死亡年龄小于[math]T_{i,r}[/math]且大于[math]T_{i,l}[/math],我们有:

[math] \Pr(T_{i,l} < T < T_{i,r}\mid\theta) = S(T_{i,l}\mid\theta) - S(T_{i,r}\mid\theta) .[/math]

一个重要的间隔审查数据应用场景是当前状态数据,其中事件[math] T_i[/math]已知在观察时间前未发生,并且在下一个观察时间前已发生。

非参数估计

Kaplan–Meier estimator可用于估计生存函数。Nelson–Aalen estimator可用于提供非参数累积危险率函数估计。这些估计器需要寿命数据。周期性案例(队列)和死亡(及恢复)计数在统计上足以进行非参数最大似然和最小二乘估计生存函数,无需寿命数据。

拟合优度

可以使用scoring rules评估生存模型的拟合优度。[16]

生存分析的计算机软件

Kleinbaum的教科书提供了使用SAS、R和其他软件进行生存分析的示例。[17] Brostrom,[18] Dalgaard[2] 和Tableman与Kim[19]的教科书提供了使用R(或使用S,且可在R中运行)进行生存分析的示例。

生存分析中使用的分布

应用案例

另行参见

引用

  1. Miller, Rupert G. (1997), 生存分析, John Wiley & Sons, ISBN 0-471-25218-2
  2. 2.0 2.1 Dalgaard, Peter (2008), Introductory Statistics with R (Second ed.), Springer, ISBN 978-0387790534
  3. Segal, Mark Robert (1988). "Regression Trees for Censored Data". Biometrics. 44 (1): 35–47. doi:10.2307/2531894. JSTOR 2531894. S2CID 60974957.
  4. Leblanc, Michael; Crowley, John (1993). "Survival Trees by Goodness of Split". Journal of the American Statistical Association (in English). 88 (422): 457–467. doi:10.1080/01621459.1993.10476296. ISSN 0162-1459.
  5. Ritschard, Gilbert; Gabadinho, Alexis; Muller, Nicolas S.; Studer, Matthias (2008). "Mining event histories: a social science perspective". International Journal of Data Mining, Modelling and Management (in English). 1 (1): 68. doi:10.1504/IJDMMM.2008.022538. ISSN 1759-1163.
  6. 6.0 6.1 Ishwaran, Hemant; Kogalur, Udaya B.; Blackstone, Eugene H.; Lauer, Michael S. (2008-09-01). "Random survival forests". The Annals of Applied Statistics. 2 (3). arXiv:0811.1645. doi:10.1214/08-AOAS169. ISSN 1932-6157. S2CID 2003897.
  7. 7.0 7.1 Therneau, Terry J.; Atkinson, Elizabeth J. "rpart: Recursive Partitioning and Regression Trees". CRAN. Retrieved November 12, 2021.
  8. Atkinson, Elizabeth J.; Therneau, Terry J. (1997). An introduction to recursive partitioning using the RPART routines. Mayo Foundation.
  9. Ishwaran, Hemant; Kogalur, Udaya B. "randomForestSRC: Fast Unified Random Forests for Survival, Regression, and Classification (RF-SRC)". CRAN. Retrieved November 12, 2021.
  10. Singh, Jared; Katzman, L. (2018). "DeepSurv: personalized treatment recommender system using a Cox proportional hazards deep neural network". BMC Medical Research Methodology.
  11. Nagpal, Chirag (2021). "Deep survival machines: Fully parametric survival regression and representation learning for censored data with competing risks". IEEE Journal of Biomedical and Health Informatics. 25 (8): 3163–3175. arXiv:2003.01176. doi:10.1109/JBHI.2021.3052441. PMID 33460387. S2CID 211817982.
  12. Nagpal, Chirag (2021). "Deep Cox mixtures for survival regression". Machine Learning for Healthcare Conference. arXiv:2101.06536.
  13. Darity, William A. Jr., ed. (2008). "Censoring, Left and Right". International Encyclopedia of the Social Sciences. Vol. 1 (2nd ed.). Macmillan. pp. 473–474. Retrieved 6 November 2016.
  14. Richards, S. J. (2012). "A handbook of parametric survival models for actuarial use". Scandinavian Actuarial Journal. 2012 (4): 233–257. doi:10.1080/03461238.2010.506688. S2CID 119577304.
  15. Singh, R.; Mukhopadhyay, K. (2011). "Survival analysis in clinical trials: Basics and must know areas". Perspect Clin Res. 2 (4): 145–148. doi:10.4103/2229-3485.86872. PMC 3227332. PMID 22145125.
  16. Proper Scoring Rules for Survival Analysis, Hiroki Yanagisawa, https://arxiv.org/abs/2305.00621v3
  17. Kleinbaum, David G.; Klein, Mitchel (2012), Survival analysis: A Self-learning text (Third ed.), Springer, ISBN 978-1441966452
  18. Brostrom, Göran (2012), Event History Analysis with R (First ed.), Chapman & Hall/CRC, ISBN 978-1439831649
  19. Tableman, Mara; Kim, Jong Sung (2003), Survival Analysis Using S (First ed.), Chapman and Hall/CRC, ISBN 978-1584884088
  20. Stepanova, Maria; Thomas, Lyn (2002-04-01). "Survival Analysis Methods for Personal Loan Data". Operations Research. 50 (2): 277–289. doi:10.1287/opre.50.2.277.426. ISSN 0030-364X.
  21. Glennon, Dennis; Nigro, Peter (2005). "Measuring the Default Risk of Small Business Loans: A Survival Analysis Approach". Journal of Money, Credit and Banking. 37 (5): 923–947. doi:10.1353/mcb.2005.0051. ISSN 0022-2879. JSTOR 3839153. S2CID 154615623.
  22. Kennedy, Edward H.; Hu, Chen; O’Brien, Barbara; Gross, Samuel R. (2014-05-20). "Rate of false conviction of criminal defendants who are sentenced to death". Proceedings of the National Academy of Sciences (in English). 111 (20): 7230–7235. Bibcode:2014PNAS..111.7230G. doi:10.1073/pnas.1306417111. ISSN 0027-8424. PMC 4034186. PMID 24778209.
  23. de Cos Juez, F. J.; García Nieto, P. J.; Martínez Torres, J.; Taboada Castro, J. (2010-10-01). "Analysis of lead times of metallic components in the aerospace industry through a supported vector machine model". Mathematical and Computer Modelling. Mathematical Models in Medicine, Business & Engineering 2009. 52 (7): 1177–1184. doi:10.1016/j.mcm.2010.03.017. ISSN 0895-7177.
  24. Spivak, Andrew L.; Damphousse, Kelly R. (2006). "Who Returns to Prison? A Survival Analysis of Recidivism among Adult Offenders Released in Oklahoma, 1985 – 2004". Justice Research and Policy (in English). 8 (2): 57–88. doi:10.3818/jrp.8.2.2006.57. ISSN 1525-1071. S2CID 144566819.
  25. Pollock, Kenneth H.; Winterstein, Scott R.; Bunck, Christine M.; Curtis, Paul D. (1989). "Survival Analysis in Telemetry Studies: The Staggered Entry Design". The Journal of Wildlife Management. 53 (1): 7–15. doi:10.2307/3801296. ISSN 0022-541X. JSTOR 3801296.
  26. Saleh, Joseph Homer (2019-12-23). "Statistical reliability analysis for a most dangerous occupation: Roman emperor". Palgrave Communications (in English). 5 (1): 1–7. doi:10.1057/s41599-019-0366-y. ISSN 2055-1045.
  27. Kreer, Markus; Kizilersu, Ayse; Thomas, Anthony W. (2022). "Censored expectation maximization algorithm for mixtures: Application to intertrade waiting times". Physica A: Statistical Mechanics and Its Applications. 587 (1): 126456. Bibcode:2022PhyA..58726456K. doi:10.1016/j.physa.2021.126456. ISSN 0378-4371. S2CID 244198364.

延伸阅读

  • Collett, David (2003). Modelling Survival Data in Medical Research (Second ed.). Boca Raton: Chapman & Hall/CRC. ISBN 1584883251.
  • Elandt-Johnson, Regina; Johnson, Norman (1999). Survival Models and Data Analysis. New York: John Wiley & Sons. ISBN 0471349925.
  • Kalbfleisch, J. D.; Prentice, Ross L. (2002). The statistical analysis of failure time data. New York: John Wiley & Sons. ISBN 047136357X.
  • Lawless, Jerald F. (2003). Statistical Models and Methods for Lifetime Data (2nd ed.). Hoboken: John Wiley and Sons. ISBN 0471372153.
  • Rausand, M.; Hoyland, A. (2004). System Reliability Theory: Models, Statistical Methods, and Applications. Hoboken: John Wiley & Sons. ISBN 047147133X.

外部链接