Se requiere una suscripción a JoVE para ver este contenido. Inicie sesión o comience su prueba gratuita.

Artículo de método

Construcción y visualización de modelos mediante un marco de aprendizaje automático basado en MIME

3.8K visualizaciones

DOI:

10.3791/68553

22 de julio de 2025

* These authors contributed equally

En este artículo

Resumen

Mime es un marco computacional flexible para construir un modelo de integración basado en el aprendizaje automático con un rendimiento elegante. Aquí, proporcionamos un procedimiento detallado paso a paso para desarrollar modelos predictivos con alta precisión, aprovechando conjuntos de datos complejos para identificar genes críticos asociados con la progresión de la enfermedad, los resultados de los pacientes y la respuesta terapéutica.

Resumen

La tecnología de secuenciación de alto rendimiento ha mejorado significativamente nuestra comprensión de la biología y la heterogeneidad del cáncer. Los algoritmos de aprendizaje automático de datos transcripcionales se han vuelto vitales para predecir el pronóstico de los pacientes y las respuestas clínicas. A pesar de los avances en los algoritmos de aprendizaje automático, sigue sin existir una plataforma de código abierto que incorpore los algoritmos de aprendizaje automático más sofisticados en datos transcripcionales. Para abordar esta brecha, desarrollamos Mime, un marco de aprendizaje automático versátil para mejorar la construcción y visualización de modelos predictivos de características clínicas y firmas genéticas. Mediante la integración de diversos conjuntos de datos y el empleo de las técnicas de selección de características más avanzadas, Mime aborda los desafíos críticos en las predicciones clínicas. Proporciona tres funciones principales, incluida la construcción de modelos, la selección de características y la visualización de datos. La construcción del modelo abarca una variedad de algoritmos de aprendizaje automático, que incluyen, entre otros, árboles de decisión, máquinas de vectores de soporte y métodos de conjuntos, lo que permite a los investigadores seleccionar el enfoque más adecuado para su análisis específico. La selección de características utiliza algoritmos avanzados, como la eliminación recursiva de características y la regresión LASSO, para optimizar el conjunto de datos y centrarse en las características más informativas. El marco admite el ajuste de parámetros personalizables a través de métodos de validación cruzada, lo que optimiza el rendimiento del modelo y mitiga los riesgos de sobreajuste. Las herramientas de visualización integradas en Mime permiten a los investigadores interpretar los resultados del modelo de manera efectiva, proporcionando representaciones gráficas de la importancia de las características y métricas de rendimiento predictivas. En este manuscrito, proporcionamos un tutorial detallado sobre los procedimientos paso a paso de este versátil marco de aprendizaje automático.

Introducción

La adopción generalizada de tecnologías de secuenciación de alto rendimiento ha influido significativamente en nuestra comprensión de la biología y la heterogeneidad del cáncer1. Este avance revolucionario en biotecnología no solo ha profundizado nuestro conocimiento científico, sino que también ha revolucionado el campo de la investigación médica. Al permitir a los científicos secuenciar grandes cantidades de material genético de forma rápida y precisa, la secuenciación de alto rendimiento ha acelerado el descubrimiento de nuevos genes, mutaciones y vías biológicas. Un creciente cuerpo de investigación ha delineado firmas moleculares específicas asociadas con la progresión de la enfermedad, el pronóstico del paciente y la capacidad de respuesta terapéutica a partir de los datos de secuenciación 2,3,4. Estas firmas específicas ofrecen un panorama completo de la comprensión de la red reguladora transcripcional subyacente a la biología tumoral, incluido el origen tumoral, la diferenciación, la migración y la resistencia al tratamiento5. Estas características son a menudo diversas y variadas, abarcando múltiples facetas en lugar de limitarse a una sola exhibición. Esto dificulta el cribado y la identificación de genes específicos altamente asociados con la enfermedad. Por lo tanto, existe una necesidad urgente de estrategias computacionales sensatas para detectar genes cruciales implicados en la enfermedad.

El aprendizaje automático (ML) es una rama de la inteligencia artificial que se centra en la construcción de sistemas que puedan aprender de conjuntos de datos complejos, identificar patrones y desarrollar un modelo predictivo con alta precisión para proporcionar una referencia para la toma de decisiones6. Recientemente, el desarrollo de modelos basados en el aprendizaje automático a partir de datos de transcriptoma para predecir los resultados de los pacientes o diagnosticar enfermedades ha avanzado rápidamente en una variedad de enfermedades 7,8,9,10. El rendimiento de estos modelos a menudo varía mucho debido a los diferentes conjuntos de datos y algoritmos utilizados para el entrenamiento. La selección del modelo óptimo para experimentos y aplicaciones clínicas posteriores se ha convertido en un desafío apremiante. Un enfoque viable implica comparar el rendimiento de varios modelos y seleccionar el más prometedor para su posterior utilización 7,11. Además, la diversidad de parámetros y formatos de resultados admitidos en varios marcos informáticos plantea desafíos significativos para el análisis comparativo. Sin embargo, actualmente no existe ningún software que integre algoritmos de aprendizaje automático de última generación para comparar las fortalezas y debilidades de diferentes modelos y simplificar el proceso de selección de parámetros, lo que facilita el acceso de los usuarios. Por lo tanto, existe la necesidad de desarrollar un software fácil de usar que pueda facilitar la integración de los datos transcripcionales con diversos algoritmos de aprendizaje automático, al tiempo que aborda las limitaciones actuales de la selección de biomarcadores y la interpretación de modelos. Estos avances ampliarán en gran medida nuestra capacidad para proporcionar información valiosa sobre los campos de investigación actuales y, en última instancia, mejorar los resultados de los pacientes.

En este estudio, desarrollamos un paquete de R de código abierto llamado Mime12, que demuestra un rendimiento sólido en conjuntos de datos y tiene como objetivo agilizar la integración de conjuntos de datos de transcriptomas con varios algoritmos de aprendizaje automático, simplificando así los procesos asociados. Para identificar candidatos potenciales a partir de datos de transcriptoma a gran escala y desarrollar modelos óptimos, Mime ofrece cuatro funciones de aplicación: un modelo de pronóstico óptimo construido mediante la integración de 10 algoritmos de aprendizaje automático; un modelo de respuesta binaria construido utilizando siete algoritmos de aprendizaje automático; características principales relacionadas con el pronóstico identificadas mediante ocho algoritmos de aprendizaje automático; y visualización del rendimiento de cada modelo.

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Protocolo

NOTA: Todos los tutoriales de este estudio se ejecutan en la plataforma Linux utilizando el software R. La versión del paquete R utilizada en este protocolo se muestra en la Tabla de materiales. Cada paso necesario para el análisis se muestra a continuación y el protocolo detallado también se puede adquirir en GitHub (https://github.com/l-magnificence/Mime). Los usuarios que tengan problemas con Mime pueden visitar la página de problemas de GitHub (https://github.com/l-magnificence/Mime/issues) para proporcionar comentarios.

1. Preparación de Mime y conjunto de datos de ejemplo

  1. Instale la versión de desarrollo de Mime desde GitHub usando el siguiente código:
    devtools::install_github("l-magnificence/Mime")
  2. Preparar múltiples cohortes que contengan datos de secuenciación transcripcional con información sobre la supervivencia o la respuesta clínica al tratamiento. Aquí, se utilizaron dos datos de ejemplo (Example.cohort y Example.ici) para ejecutar Mime. Example.cohort contiene dos conjuntos de datos de glioma; cada uno seleccionó al azar 100 muestras de las bases de datos TCGA y CGGA, respectivamente. Mientras que Example.ici contiene 100 muestras de pretratamiento seleccionadas al azar con inhibidores de puntos de control inmunitarios de estudios anteriores12. Todos los datos de ejemplo se pueden adquirir de GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Incluya varios conjuntos de datos para construir modelos predictivos para el pronóstico en Example.cohort. El primer ID de columna de cada conjunto de datos es el ID de la muestra, la segunda y tercera columnas OS.time y OS de cada conjunto de datos son el tiempo de supervivencia y el estado de los pacientes; Otras columnas de cada conjunto de datos son el nivel de expresión génica escalado con log2(x+1). Dataset1 es el conjunto de datos de entrenamiento, mientras que otros conjuntos de datos son para validación. Utilice el siguiente formato para Example.cohort:
      load ("./Example.cohort.Rdata" )
      list_train_vali_Data [["Dataset1" ]][1:5,1:5]
      #> ID OS.time OS MT-CO1 MT-CO3
      #> TCGA.DH.A66B.01 1281.65322 0 13.77340 13.67931
      #> TCGA.HT.7607.01 96.19915 1 14.96535 14.31857
      #> TCGA.DB.A64Q.01 182.37755 0 13.90659 13.65321
      #> TCGA.DU.8167.01 471.97707 0 14.90695 14.59776
      #> TCGA.HT.7610.01 1709.53901 0 15.22784 14.62756
    2. Incluya varios conjuntos de datos para construir modelos predictivos para la respuesta en Example.ici. El primer ID de columna en cada conjunto de datos es el ID de la muestra, la segunda columna Var en cada conjunto de datos es la respuesta terapéutica de los pacientes (N: Sin respuesta; Y: respuesta), y las otras columnas de cada conjunto de datos son el nivel de expresión génica escalado con log2(x+1). Training es el conjunto de datos de entrenamiento, mientras que otros conjuntos de datos son para validación. Utilice el siguiente formato para Example.ici:
      load("./Example.ici.Rdata")
      list_train_vali_Data[["training"]][1:5,1:5]

      #> ID Var FTH1 EEF1A1 ACTB
      #> SAMf2ce197162ce N 10.114846 4.817746 11.230180
      #> ERR2208915 Y 2.044180 5.038854 3.977902
      #> G138701_RCCBMS Y 5.406008 5.341635 5.366668
      #> SAMe41b1e773582 N 9.215794 4.707360 11.412721
      #> SAM5ffd7e4cd794 N 9.003710 3.908884 10.440559
  3. Prepara un conjunto de genes. Aquí, se utilizó un conjunto de genes (genelista) asociado con la señalización de Wnt/β-catenina de MSigDB para ejecutar Mime. Utilice el siguiente formato para genelist:
    load ("./genelist.Rdata" )
    #> [1] "MYC" "CTNNB1" "JAG2" "NOTCH1" "DLL1" "AXIN2" "PSEN2" "FZD1" "NOTCH4" "LEF1" "AXIN1" "NKD1" "WNT5B"
    #>[14] "CUL1" "JAG1" "MAML1" "KAT2A" "GNAI1" "WNT6" "PTCH1" "NCOR2" "DKK4" "HDAC2" "DKK1" "TCF7" "WNT1"
    #>[27] "NUMB" "ADAM17" "DVL2" "PPARD" "NCSTN" "HDAC5" "CCND2" "FRAT1" "CSNK1E" "RBPJ" "FZD8" "TP53" "SKP2"
    #>[40] "HEY2" "HEY1" "HDAC11"

2. Construcción de modelos predictivos para el pronóstico

  1. Utilice la función ML.Dev.Prog.Sig() en Mime basado en Example.cohort y genelist para construir modelos de predicción para el pronóstico. Utilice los siguientes códigos:
    library (Mime1)
    load ("./Example.cohort.Rdata" )
    load ("./genelist.Rdata" )
    res <- ML.Dev.Prog.Sig (train_data = list_train_vali_Data $Dataset1,
    list_train_vali_Data = list_train_vali_Data,
    unicox.filter.for.candi = T,
    unicox_p_cutoff = 0.05,
    candidate_genes = genelist,
    mode = 'all',nodesize =5,seed = 5201314 )
  2. Utilice la función cindex_dis_all() en Mime para trazar el índice C de cada modelo y seleccionar el modelo óptimo con el índice C más alto. Utilice los siguientes códigos:
    cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
    order =names (list_train_vali_Data ),width = 0.35 )
  3. Calcule la curva de supervivencia de los pacientes según la puntuación de riesgo utilizando un modelo específico entre diferentes conjuntos de datos y procéselo en Mime. Utilice los siguientes códigos:
    survplot <- vector ("list",2 )
    for (i in c (1:2)) {
    print (survplot [[i ]]<-rs_sur (res,
    model_name = "StepCox[forward] + plsRcox",
    dataset = names (list_train_vali_Data )[i ],
    median.line = "hv",
    cutoff = 0.5,
    conf.int = T,
    xlab ="Day",pval.coord =c (1000,0.9 )))
    }
    aplot ::plot_list (gglist =survplot,ncol =2 )
  4. A continuación, utilice la función cal_AUC_ml_res() en Mime para calcular el AUC dependiente del tiempo predicho por los modelos construidos. Utilice los siguientes códigos:
    all.auc.1y <- cal_AUC_ml_res (res.by.ML.Dev.Prog.Sig =res,
    train_data = list_train_vali_Data [["Dataset1" ]],
    inputmatrix.list =list_train_vali_Data,
    mode = 'all',AUC_time = 1,
    auc_cal_method ="KM" )
  5. Utilice la función auc_dis_all() en Mime para trazar el AUC dependiente del tiempo predicho por cada modelo. Utilice los siguientes códigos:
    auc_dis_all(all.auc.1y,
    dataset = names(list_train_vali_Data),
    validate_set=names(list_train_vali_Data)[-1],
    order= names(list_train_vali_Data),
    width = 0.35,
    year=1)
  6. Procese la curva ROC dependiente del tiempo de un modelo específico entre diferentes conjuntos de datos en Mime. Utilice los siguientes códigos:
    roc_vis(all.auc.1y,
    model_name = "StepCox[forward] + plsRcox",
    dataset = names(list_train_vali_Data),
    order= names(list_train_vali_Data),
    anno_position=c(0.65,0.55),
    year=1)

3. Construcción de modelos predictivos de respuesta

  1. Utilice otra función ML.Dev.Pred.Category.Sig() en Mime basada en Example.ici y genelist para construir modelos de predicción de la respuesta terapéutica. Utilice los siguientes códigos:
    load("./Example.ici.Rdata")
    load("./genelist.Rdata")
    res.ici <- ML.Dev.Pred.Category.Sig(
    train_data = list_train_vali_Data$training,
    list_train_vali_Data = list_train_vali_Data,
    candidate_genes = genelist,
    methods = c('nb','svmRadialWeights','rf',
    'kknn','adaboost','LogitBoost',
    'cancerclass'),
    seed = 5201314,
    cores_for_parallel = 60
    )
  2. Utilice la función auc_vis_category_all() en Mime para trazar el AUC predicho por cada modelo. Utilice los siguientes códigos:
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Procese la curva ROC de un modelo específico entre diferentes conjuntos de datos en Mime. Utilice los siguientes códigos:
    plot_list<-list()
    methods <- c('nb','svmRadialWeights','rf','kknn', 'adaboost','LogitBoost','cancerclass')
    for (i in methods) {
    plot_list[[i]]<-roc_vis_category(res.ici,model_name = i,
    dataset = c("training","validation"),
    order= c("training","validation"),
    anno_position=c(0.4,0.25))
    }
    aplot::plot_list(gglist=plot_list,ncol=3)

4. Selección de características principales

  1. Utilice la función ML.Corefeature.Prog.Screen() en Mime basada en Example.cohort y genelist para identificar genes críticos. Utilice los siguientes códigos:
    load("./Example.cohort.Rdata")
    load("./genelist.Rdata")
    res.feature.all <- ML.Corefeature.Prog.Screen(
    InputMatrix = list_train_vali_Data$Dataset1,
    candidate_genes = genelist,
    mode = "all",nodesize =5,seed = 5201314 )
  2. Los genes de salida están estrechamente asociados con el resultado del paciente y una mayor frecuencia de variables cribadas significa que estas son características centrales (las variables filtradas con mayor frecuencia se definen como características principales). Utilice la función core_feature_rank() en Mime para trazar el rango de los genes filtrados por diferentes métodos. Utilice los siguientes códigos:
    core_feature_rank(res.feature.all, top=20)

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Resultados

El genelist y Example.cohort, incluyendo una cohorte de entrenamiento y una cohorte de validación, se utilizaron para construir modelos pronósticos mediante la integración de 10 algoritmos de aprendizaje automático en Mime. Entre los 117 modelos de pronóstico construidos por Mime, el modelo combinado StepCox + plsRcox (SPCOM) tuvo el índice C más alto entre todas las cohortes, lo que indica su rendimiento sobresaliente (Figura 1A). Los pacientes se separaron en grupos de alto y bajo riesgo d...

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Discusión

En este estudio, proporcionamos una descripción detallada de cómo utilizar el paquete Mime para desarrollar modelos predictivos de aprendizaje automático robustos y potentes para datos transcriptómicos. En estudios anteriores, los investigadores a menudo tenían dificultades para seleccionar el algoritmo de modelo predictivo adecuado en función de las características específicas de sus datos de secuenciación13,14. Además, para los...

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Divulgaciones

No se han declarado conflictos de interés.

Agradecimientos

Agradecemos a todos los participantes e investigadores involucrados en la producción de datos.

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Materiales

Lista de materiales utilizados en este artículo
NombreEmpresaNúmero de catálogoComentarios
Nombre del paqueteVersiónSoftware
trama0.1.10Estudio R
BART2.9.4Estudio R
Boruta8.0.0Estudio R
clase de cáncer1.38.0Estudio R
signo de intercalación6.0-89Estudio R
Ckmeans.1d.dp4.3.5Estudio R
comparar1.3.2Estudio R
Mapa de calor complejo2.15.1Estudio R
Composiciones2.0-4Estudio R
data.tabla1.14.0Estudio R
doParalelo1.0.16Estudio R
dplyr1.1.3Estudio R
E10711.7-7Estudio R
Trazador forestal1.1.0Estudio R
futuro1.21.0Estudio R
Gbm2.1.8.1Estudio R
buen juego, rompe0.1.1Estudio R
ggplot23.4.1Estudio R
buen juego pubr0.4.0Estudio R
ggsci2.9Estudio R
buena suerte4.1-2Estudio R
rejilla4.1.3Estudio R
gridExtra2.3Estudio R
GSEABase1.54.0Estudio R
GSVA1.40.1Estudio R
Hmisc5.1-1Estudio R
kknn1.3.1Estudio R
tejer1.42Estudio R
magrittr2.7.2Estudio R
Matriz1.5-4Estudio R
meta5.2-0Estudio R
miscHerramientas0.6-28Estudio R
mixÓmica6.18.1Estudio R
herramientas mixtas1.2.0Estudio R
pbapply1.4-3Estudio R
por favorRcox1.7.7Estudio R
Proc1.18.0Estudio R
R4.1.3Estudio R
randomForestSRC4.6-14Estudio R
lector1.4.0Estudio R
Recetas0.1.17Estudio R
remodelar21.4.4Estudio R
rebaja2.8Estudio R
ROCit2.1.1Estudio R
ROCR1.0-11Estudio R
balanza1.2.1Estudio R
gorrión1.0.3Estudio R
larguero1.5.0Estudio R
supercomputadora1.12Estudio R
supervivencia3.3-1Estudio R
supervivenciaROC1.0.3Estudio R
supervivenciasvm0.0.5Estudio R
SVA3.40.0Estudio R
prueba eso3.1.0Estudio R
Tibble3.2.1Estudio R
Ordena1.3.0Estudio R
tidyverse1.3.1Estudio R
UpSetR1.4.0Estudio R
Viridis0.6.1Estudio R

Referencias

  1. Reuter, J. A., Spacek, D. V., Snyder, M. P. High-throughput sequencing technologies. Mol Cell. 58 (4), 586-597 (2015).
  2. Adam, G., et al. Machine learning approaches to drug response prediction: challenges and recent progress. NPJ Precision Oncol. 4, 19(2020).
  3. Ding, L., et al. Perspective on Oncogenic Processes at the End of the Beginning of Cancer Genomics. Cell. 173 (2), 305-320.e10 (2018).
  4. Liu, H., et al. A potassium-chloride co-transporter with altered genome architecture functions as a suppressor in glioma. J Cell Mol Med. 28 (9), e18352(2024).
  5. Hanahan, D. Hallmarks of Cancer: New Dimensions. Cancer Disc. 12 (1), 31-46 (2022).
  6. Kourou, K., et al. Machine learning applications in cancer prognosis and prediction. Comp Str Biotechnol J. 13, 8-17 (2015).
  7. Liu, Z., et al. Machine learning-based integration develops an immune-derived lncRNA signature for improving outcomes in colorectal cancer. Nat Comm. 13 (1), 816(2022).
  8. Sundar, R., et al. Machine-learning model derived gene signature predictive of paclitaxel survival benefit in gastric cancer: results from the randomised phase III SAMIT trial. Gut. 71 (4), 676-685 (2022).
  9. Zhang, W., et al. Machine learning-based investigation of regulated cell death for predicting prognosis and immunotherapy response in glioma patients. Sci Rep. 14 (1), 4173(2024).
  10. Zhang, W., et al. Pan-cancer evaluation of regulated cell death to predict overall survival and immune checkpoint inhibitor response. NPJ Precision Oncol. 8 (1), 77(2024).
  11. Hindocha, S., et al. A comparison of machine learning methods for predicting recurrence and death after curative-intent radiotherapy for non-small cell lung cancer: Development and validation of multivariable clinical prediction models. EBioMedicine. 77, 103911(2022).
  12. Liu, H., et al. Mime: A flexible machine-learning framework to construct and visualize models for clinical characteristics prediction and feature selection. Comput Str Biotechnol J. 23, 2798-2810 (2024).
  13. Hwang, H., et al. Big data and deep learning for RNA biology. Exp Mol Med. 56 (6), 1293-1321 (2024).
  14. Sharma, A., et al. Advances in AI and machine learning for predictive medicine. J Hum Genet. 69 (10), 487-497 (2024).
  15. Greener, J. G., et al. A guide to machine learning for biologists. Nat Rev Mol Cell Biol. 23 (1), 40-55 (2022).

Acceso restringido. Inicie sesión o comience una prueba gratuita para ver este contenido.

Reimpresiones y permisos

Etiquetas

Construcción de modelos predictivosselección de característicasvisualización de datossecuenciación transcripcionalmodelado del pronósticopredicción de la respuesta terapéuticaanálisis de supervivenciaidentificación de genes centralesmétricas de rendimiento del modelo