Partimos de datos relativos a tiempos, censurados por la derecha, hasta cierto evento crítico como es el segundo infarto, para pacientes infartados y tratados en dos centros hospitalarios localizados geográficamente distantes (Alicante y A Coruña). El objetivo primario es descubrir qué variables afectan a estos tiempos, con el fin de obtener predicciones confiables de los tiempos hasta el evento.
Utilizamos árboles de clasificación para abordar este objetivo primario y resolver otros objetivos que amplían las posibilidades de predicción al respecto del seguimiento de estos pacientes. Presentamos dos aproximaciones para generar la clasificación en los árboles de decisión basados en algoritmos de partición recursiva, y justificamos la utilización de una de ellas para proporcionar respuestas fundamentadas en base a los objetivos de predicción. Estas dos aproximaciones son los árboles de clasificación condicionales y los árboles de clasificación basados en modelos. Estos últimos serán la opción preferente, como se fundamentará a continuación.
En nuestro estudio, el objetivo base es predecir eficazmente la supervivencia de los pacientes en base a la información recabada sobre su estado de salud en el primer ingreso hospitalario por infarto. Ante la numerosa información recabada para cada paciente, cabe plantear varias cuestiones:
La base de datos recoge todos los pacientes con un un episodio, al menos, de insuficiencia cardiaca, tratados por el Servicio de Cardiología del Hospital Universitario de Sant Joan d’Alacant y por el Hospital ….. de A Coruña, entre noviembre del 2003 y noviembre del 2017 (8798 registros). Se han excluido 453 pacientes que no sobrevivieron al primer ingreso (mortalidad_basal=0) y 450 más que presentan valores negativos o faltantes en la variable principal del estudio (meses_hasta_ICC). Estos últimos representan un 5.39%, una cifra que consideramos lo suficientemente baja para no aplicar una técnica de evaluación de valores ausentes para incorporarlos a la base de datos. Todo esto nos lleva a trabajar con los registros de 7895 pacientes, si bien en cada modelización también serán eliminados aquellos pacientes con algún valor faltante en las variables utilizadas.
Vamos a trabajar los objetivos planteados utilizando como variable respuesta el “tiempo hasta el segundo infarto” (meses_hasta_ICC
), junto con la variable de censura correspondiente (ICCenseguimiento
). Consideraremos entre el set de variables susceptibles de añadir información, la variable de localización “Centro”, que identifica los hospitales/ubicaciones de referencia de los pacientes en el estudio, como una posible fuente de variabilidad en los resultados. Las variables explicativas consideradas en el análisis son:
Utilizaremos para elaborar las particiones, distintos sets de covariables/factores explicativos plausibles en base a la información experta de los clínicos. Estos sets/modelos se muestran en la Tabla 1.
Tabla 1: Modelos propuestos para predecir tiempo hasta evento (siguiente infarto).
Var | M1 | M2 | M3 | M4 | M5 | M6 |
---|---|---|---|---|---|---|
ACVprevio | x | |||||
antiagreg_alta | x | x | x | |||
ArtritisEnf_Inflamat | x | |||||
CIsquemica | x | x | x | x | x | x |
ckd_epi | x | x | x | |||
ckd_epi_60 | x | |||||
Claudicacion | x | x | x | x | x | x |
Creaing | x | x | ||||
cTnIpico | x | |||||
DM | x | x | x | x | x | x |
Edad | x | x | x | x | x | |
EPOC | x | x | x | x | x | x |
FA_antec | x | x | x | x | x | x |
FC | x | |||||
FE_40 | x | |||||
FEVI | x | x | x | x | ||
Fumador | x | x | x | x | x | x |
Hbing | x | x | x | x | x | x |
HDL | x | |||||
HTA | x | x | x | x | x | x |
IC_eningreso | x | x | x | x | x | x |
ICCenseguimiento | ||||||
ICCprev | x | x | x | x | x | x |
LDL | x | |||||
meses_hasta_ICC | ||||||
Primero_IECA_ARA | x | x | x | |||
PrimeroDeBetabloqueantes | x | x | x | |||
PrimeroDeEstatinas | x | x | x | |||
revasc_basal | x | x | x | x | x | x |
SAOS | x | |||||
sexo | x | x | x | x | x | x |
sum_charlson | x | x | x | x | x | x |
sum_grace | x | |||||
TAS | x | |||||
TMO | x | x | x |
Utilizaremos dos procedimientos de segmentación: la basada en árboles de clasificación condicionales y la basada en modelos, cuyos fundamentos exponemos a continuación. Plantearemos ventajas e inconvenientes de ambos procedimientos.
Los árboles de clasificación condicionales son un tipo de árboles de regresión no-paramétricos, aplicables a todos los tipos de problemas de regresión, incluyendo respuestas nominales, ordinales, numéricas, censuradas, así como a variables respuesta multivariante y covariables medidas en escalas arbitrarias.
Los árboles de inferencia condicional (Hothorn et al, 2006) plantean una estrategia de provocar particiones binarias en las variables explicativas (covariables y factores) de forma recursiva, de modo que se van seleccionando como covariables/factores que segmentan aquellas que manifiestan mayor asociación con la respuesta (en términos de ciertos estadísticos condicionales de asociación). Las variables que aparecen antes en el árbol son aquellas que manifiestan una mayor asociación con la respuesta (p-valores significativos más pequeños), y la partición binaria que se propone sobre ella es aquella que genera las máximas diferencias en las respuestas entre los dos grupos resultantes.
Por otro lado, la ventaja de utilizar estos árboles es la flexibilidad que da el hecho de no exigir el compromiso con ningún modelo paramétrico, y por lo tanto con una distribución concreta para los tiempos de supervivencia. La partición se deriva en base a la asociación entre las variables explicativas y la respuesta. El resultado final se plasma en curvas Kaplan-Meier diferentes en cada uno de los nodos terminales. No es preciso modificar los tiempos de supervivencia igual a 0, pues la estimación no-paramétrica no plantea problemas.
El problema que presentan los árboles condicionales es que el ajuste no está basado en ningún modelo paramétrico de supervivencia, por lo que no es posible comparar modelos (particiones) alternativos en términos de verosimilitud u otros criterios basados en ella, y en consecuencia no es viable identificar el mejor modelo/partición.
Para el ajuste de los árboles condicionados imponemos la restricción de una profundidad máxima de 5 niveles en la partición y un mínimo del 15% de registros en cada uno de los nodos terminales, con el fin de asegurar grupos/perfiles de pacientes suficientemente “grandes”.
La partición recursiva basada en modelos, en lugar de ajustar un modelo global a un conjunto de datos, estima modelos locales en subconjuntos de los datos que se generan aprendiendo entre sí a través de particiones recursivas. La partición finalmente proporcionará una estimación del tiempo esperado de supervivencia en cada uno de los nodos terminales, garantizando que dichas estimaciones son significativamente diferentes entre los distintos nodos terminales o perfiles de pacientes que se generan.
El objetivo de una estimación basada en modelos paramétricos parte de un planteamiento genérico basado en minimizar cierta función con la que se cuantifica el error entre la estimación del tiempo esperado de supervivencia y el valor observado, y que depende de un parámetro incluido en la modelización paramétrica de la respuesta (como puede ser la verosimilitud cambiada de signo u otro criterio útil para la comparación de modelos): \[\hat{\theta}= argmin_{\theta} \sum_i \psi(y_i,x_i,\theta)\]
El proceso de generación del árbol sigue los siguientes pasos:
Para calcular la estabilidad de todos los parámetros del modelo en cierta variable de partición se usan los tests propuestos por Zeileis and Hornik (2007), así como una corrección por Bonferroni al testar conjuntamente múltiples variables de partición.
Si realizamos la partición en términos paramétricos, asumiremos una distribución específica para los tiempos de supervivencia, de entre las habituales para estas variables (exponencial, weibull,…). Cualquiera de estas distribuciones exigen tiempos de supervivencia mayores a cero, por lo que al tener en nuestra bd algunos 0s (en concreto 372, que representan un 4.7% del total de registros) identificando pacientes que han sufrido un segundo infarto antes de un mes tras el primero, hemos de transformar las observaciones con tiempos 0, y optamos por convertirlas en tiempos 0.1.
Son cuestiones a resolver al plantear un procedimiento de segmentación basado en modelos:
Estas tres cuestiones se resuelven conjuntamente comparando los modelos resultantes mediante la utilización de algún criterio de selección de modelos. En nuestro caso utilizaremos el criterio BIC, que tiene en cuenta la log-verosimilitud (\(\hat{L}\)) de los datos (se premian modelos más verosímiles a la vista de los datos) y penaliza por la complejidad del modelo (nº parámetros o nodos, \(k\)) algo más de lo que lo hace el AIC, y por el número de datos (\(n\)). Con el BIC podremos comparar modelos entre sí, dando preferencia a los que proporcionan un menor BIC, e incluso dirigir la partición solicitándole detenerse cuando no sean significativas las diferencias entre la supervivencia estimada en perfiles (nodos) distintos. Regirá pues también, el proceso de selección de variables. Asimismo el BIC nos permitirá elegir la mejor distribución para los tiempos de supervivencia. \[BIC=-2 ln(\hat{L}) + k \ ln(n)\]
Asumida una determinada distribución sobre los tiempos de supervivencia \(T\), se plantea segmentar el conjunto de pacientes en grupos “homogéneos” de modo que en todos ellos se proporcione una estimación común del tiempo esperado de supervivencia, esto es, \[ E(T_{ij})=\theta_i\] para todos los sujetos \({ij}, i=1,...,n_j\) clasificados en un mismo grupo o nodo terminal identificado por el subíndice \(j, j=1,\ldots,J\), y que a la vez genere máximas diferencias con otros perfiles/nodos creados previamente. El número de parámetros estimados en cada árbol será pues igual al número de nodos terminales generados.
Al visualizar los árboles, obtenemos para los nodos terminales los coeficientes estimados (identificados como \(x\) en los gráficos) en escala logarítmica. Representan el logaritmo de la estimación obtenida para el tiempo esperado de supervivencia \(\hat{t}\) en cada nodo terminal, \[x=log(\hat{t}),\] de modo que el tiempo esperado de supervivencia \(\hat{t}\) se estimará con la exponencial de este valor: \[\hat{t}=exp(x).\] ### Distribuciones para los tiempos de supervivencia
Las distribuciones que planteamos para los tiempos de supervivencia son la Exponencial, la Lognormal y la Weibull.
Cuando asumimos una distribución exponencial para los tiempos de supervivencia \(T\), estamos formulando el modelo de ajuste según: \[T|\theta \sim Exp(\theta), t>0\] donde \(\theta\) representa el riesgo base dado por la función hazard, que no depende de \(t\) y permanece constante a lo largo del tiempo, \[f(t|\theta)/S(t|\theta)=\theta e^{-\theta t}/e^{-\theta t}=\theta.\] La mediana de supervivencia \(\hat{t}\) se obtiene de resolver \(0.5=exp(\theta \hat{t})\), de lo que resulta \(\hat{t}=log(2)/\theta=0.69/\theta\), que depende de \(\theta\).
La distribución Weibull es una generalización de la exponencial. Cuando asumimos una distribución Weibull para los tiempos de supervivencia \(T\), estamos formulando el modelo de ajuste según: \[ T|\alpha,\lambda \sim Weib(\alpha,\lambda ), t>0, \alpha>0, \lambda >0 \] La mediana de los tiempos de supervivencia es \[\hat{t}=[log(2)/\lambda]^{1/\alpha}.\] La función hazard es creciente para \(\alpha>1\) y decreciente para \(\alpha<1\), y viene dada por: \[h(t|\alpha,\lambda )=\frac{f(t|\alpha,\lambda )}{S(t|\alpha,\lambda )}=\lambda \alpha t^{\alpha-1}.\]
Cuando asumimos una distribución lognormal para los tiempos de supervivencia \(T\), estamos formulando el modelo de ajuste según: \[ T \sim LN(\mu,\sigma^2), t>0\] donde \(\mu\) y \(\sigma^2\) representan respectivamente la media y la varianza de la distribución normal para el logaritmo de los tiempos de supervivencia, \(log(T)\sim N(\mu,\sigma^2)\). La mediana del tiempo de supervivencia es \[\hat{t}=exp(\hat{\mu}).\] La función hazard tiene una forma compleja que no escribimos aquí.
Todos los ajustes basados en árboles de clasificación se pueden ajustar en R con la librería partykit (Hothorn and Zeileis, 2015). La función ctree()
(Hothorn, Hornik, and Zeileis, 2006) se utiliza para obtener los árboles de clasificación condicionados. Para obtener los árboles basados en modelos se utiliza la función mob()
(Zeileis, Hothorn, and Hornik, 2008).
Si bien mostramos una primera aproximación a la clasificación con árboles utilizando los árboles condicionados, el grueso del trabajo lo centramos en la selección del mejor modelo con las particiones basadas en modelos.
Puesto que la utilización de este algoritmo responde exclusivamente a fines ilustrativos para mostrar cómo se cubren los objetivos de estudio planteados, proponemos inicialmente el ajuste de uno de los modelos plateados: el Modelo 1.
Puesto que los árboles que se generan resultan muy profundos, decidimos detener la partición cuando se llega a un máximo de 5 ramificaciones en profundidad; esto evita generar modelos costosos de interpretar y con un número excesivamente grande de perfiles de pacientes. Reiteramos que la finalidad de presentar este ajuste es puramente ilustrativa.
Partimos del Modelo 1, en el que consideramos posibles predictores el conjunto de variables formado por:
El árbol se ajusta finalmente con 7097 registros, omitiendo aquellos con valores faltantes.
Respondemos pues, con el modelo ajustado, a las preguntas vinculadas con los objetivos propuestos:
Adelantándonos a los resultados obtenidos en la segmentación basada en modelos, buscamos el ajuste de árboles condicionados con las variables explicativas propuestas en el Modelo 6. Compararemos posteriormente los resultados obtenidos. De nuevo exigimos como regla de parada, un árbol de profundidad máxima 5.
El modelo es ajustado coen 6598 registros y resulta en un total de 17 nodos o perfiles de pacientes. Las variables explicativas que intervienen para explicar la supervivencia son:
revasc_basal
es significativo en el modelo (nodos 34,35): con revasc_basal=Yes
es menor la probabilidad de sufrir antes un infarto.Para proceder con la partición basada en modelos, se ha considerado, en cada uno de los modelos de la Tabla 1, la utilización y no utilización de la variable “Centro” como ‘cluster’ o agregador de los datos disponibles (para incluir en el ajuste la varianza intrínseca a cada localización hospitalaria).
A pesar de haber modificado los tiempos de supervivencia 0 al asignarles como valor 0.1, la convergencia de los algoritmos de partición no es viable nunca cuando se utiliza la distribución Weibul y tampoco convergen para el modelo lognormal con clúster; la distribución Exponencial es la que da más viabilidad de convergencia en todos los modelos propuestos.
A raíz del ajuste con los árboles basados en modelos, los resultados obtenidos (en los que ha convergido el algoritmo) se presentan en la Tabla 2, diferenciados por la distribución asumida para los tiempos de supervivencia (exponencial o lognormal) y el hecho de utilizar el Centro
como una variable ‘clúster’ (SC=sin clúster, CC=con clúster).
Tabla 2: Resultados de la partición basada en modelos para predecir el tiempo hasta evento (siguiente infarto).
BIC | Exponencial (SC) | Lognormal (SC) | Exponencial(CC) |
---|---|---|---|
M1 | 12290,42 | 11998,28 | 12329,15 |
M2 | 12284,33 | 11998,29 | 12326,42 |
M3 | 12312,08 | 12048,07 | 12343,22 |
M4 | 12326 | 11999,59 | 12351,41 |
M5 | 13466,7 | 13293,64 | 13519,59 |
M6 | 11137,62 | 10887,79 | 11144,88 |
Se identifica pues como mejor modelo el M6 con distribución lognormal (BIC= 10887.79) y sin efecto clúster debido al Centro
, seguido por el modelo M6 con distribución exponencial, también sin clúster (da mejores resultados que el modelo con cluster, con BIC=11137.62). Obviando el modelo M6, los siguientes mejores modelos son el M1, M2 y M4 con distribución log-normal y sin clúster (BIC 11998.28, 11998.29 y 11999.56 respectivamente). De hecho, las particiones obtenidas a partir de los modelos M1 y M2 son idénticas, y muy similares a la obtenida con M4.
Los gráficos de árbol resultantes para los modelos mencionados se presentan a continuación, para ilustrar de un modo más completo las semejanzas y diferencias entre las particiones obtenidas.
Modelo 1-lognormal
Modelo 2-lognormal
Modelo 4-lognormal
Modelo 6-exponencial
Modelo 6-lognormal
Tabla 3: Variables predictoras seleccionadas en los mejores modelos.
Variables | M1/M2-LOG | M4-LOG | M6-LOG | M6-EXP |
---|---|---|---|---|
Nº PERFILES | 14 | 13 | 13 | 20 |
CIsquemica | X | |||
ckd_edpi | 48,6; 67,28 | |||
Creaing | 1,46 | 1,48 | ||
DM | X | X | X | X |
Edad | 64 | 64; 83 | 63; 70 | 63 |
FA_antec | X | X | X | X |
FC | X | |||
FEVI | 45; 52 | 45; 52; 54 | ||
Hbing | 13,5 | 13,4 | 11,2 | 11,5; 11,9 |
HDL | 30 | |||
IC_eningreso | X | X | X | X |
ICCprev | X | X | X | |
revasc_basal | X | X | ||
sum_charlson | 2 | 2 | 2 | 2 |
Las predicciones (Kaplan-Meier) del tiempo hasta el evento (segundo infarto) para cada uno de los perfiles de pacientes identificados en el modelo M6-Lognormal se muestran en los gráficos a continuación.
Por último, el tratamiento revasc_basal
se manifiesta relevante para predecir el tiempo a segundo infarto en el modelo M6-Lognormal. En concreto, da menor probabilidad para el segundo infarto cuando el nivel de creatinina al ingreso de los pacientes está por debajo de 1,46.
Este tratamiento también aparece en el modelo M6-exponencial, pero no lo hace en los otros mejores modelos identificados (M1/M2 y M4).
Hothorn, T., Hornik, K. and Zeileis, A. (2006). Unbiased Recursive Partitioning: A Conditional Inference Framework. Journal of Computational and Graphical Statistics 15,3, pp. 651-674. DOI: https://doi.org/10.1198/106186006X133933.
Hothorn, T. and Zeileis, A. (2015). partykit: A toolkit for recursive partytioning. Journal of Machine Learning Research, 16, pp.3905-3909. URL: http://jmlr.org/papers/v16/hothorn15a.html.
Zeileis, A., Hothorn, T. and Hornik, K. (2008). Model-Based Recursive Partitioning. Journal of Computational and Graphical Statistics 17, 2, pp. 492-514. DOI: https://doi.org/10.1198/106186008X319331
Hothorn, T., Hornik, K. and Zeileis, A. (2015). ctree: Conditional inference trees. The comprehensive R archive network, 8. Retrieved from https://cran.r-project.org/web/packages/partykit/vignettes/ctree.pdf in November 2021.
Hothorn, T., Zeileis, A., & Hothorn, M. T. (2021). partykit: A Toolkit for Recursive Partytioning. The comprehensive R archive network. Retrieved from https://cran.r-project.org/web/packages/partykit/vignettes/partykit.pdf in November 2021.
Zeileis, A., & Hothorn, T. (2015). Parties, Models, Mobsters: A New Implementation of Model-Based Recursive Partitioning in R. The comprehensive R archive network. Retrieved from https://cran.r-project.org/web/packages/partykit/vignettes/mob.pdf in November 2021.