È richiesta un abbonamento a JoVE per visualizzare questo contenuto. Accedi o inizia la tua prova gratuita.

Articolo metodologico

Costruzione e visualizzazione di modelli utilizzando il framework di apprendimento automatico basato su MIME

3.8K visualizzazioni

DOI:

10.3791/68553

22 luglio 2025

* These authors contributed equally

In questo articolo

Sommario

Mime è un framework computazionale flessibile per costruire un modello di integrazione basato sull'apprendimento automatico con prestazioni eleganti. In questo articolo, forniamo una procedura dettagliata passo dopo passo per lo sviluppo di modelli predittivi con elevata precisione, sfruttando set di dati complessi per identificare i geni critici associati alla progressione della malattia, agli esiti dei pazienti e alla risposta terapeutica.

Abstract

La diffusa tecnologia di sequenziamento ad alto rendimento ha migliorato significativamente la nostra comprensione della biologia e dell'eterogeneità del cancro. Gli algoritmi di apprendimento automatico sui dati trascrizionali sono diventati fondamentali per prevedere la prognosi dei pazienti e le risposte cliniche. Nonostante i progressi negli algoritmi di apprendimento automatico, rimane assente una piattaforma open source che incorpori i più sofisticati algoritmi di apprendimento automatico sui dati trascrizionali. Per colmare questa lacuna, abbiamo sviluppato Mime, un versatile framework di apprendimento automatico per migliorare la costruzione e la visualizzazione di modelli predittivi per le caratteristiche cliniche e le firme geniche. Integrando diversi set di dati e impiegando le tecniche di selezione delle caratteristiche più avanzate, Mime affronta le sfide critiche nelle previsioni cliniche. Fornisce tre funzioni principali, tra cui la costruzione del modello, la selezione delle caratteristiche e la visualizzazione dei dati. La costruzione del modello comprende una gamma di algoritmi di apprendimento automatico, tra cui, a titolo esemplificativo ma non esaustivo, alberi decisionali, macchine a vettori di supporto e metodi di insieme, consentendo ai ricercatori di selezionare l'approccio più adatto per la loro analisi specifica. La selezione delle funzionalità utilizza algoritmi avanzati come l'eliminazione ricorsiva delle funzionalità e la regressione LASSO per semplificare il set di dati e concentrarsi sulle funzionalità più informative. Il framework supporta l'ottimizzazione dei parametri personalizzabili attraverso metodi di convalida incrociata, ottimizzando le prestazioni del modello e mitigando i rischi di overfitting. Gli strumenti di visualizzazione integrati in Mime consentono ai ricercatori di interpretare efficacemente i risultati del modello, fornendo rappresentazioni grafiche dell'importanza delle caratteristiche e metriche predittive delle prestazioni. In questo manoscritto, forniamo un tutorial dettagliato sulle procedure passo-passo di questo versatile framework di apprendimento automatico.

Introduzione

L'adozione diffusa di tecnologie di sequenziamento ad alto rendimento ha influenzato in modo significativo la nostra comprensione della biologia e dell'eterogeneità del cancro1. Questo progresso rivoluzionario nel campo della biotecnologia non solo ha approfondito le nostre conoscenze scientifiche, ma ha anche rivoluzionato il campo della ricerca medica. Consentendo agli scienziati di sequenziare grandi quantità di materiale genetico in modo rapido e accurato, il sequenziamento ad alto rendimento ha accelerato la scoperta di nuovi geni, mutazioni e percorsi biologici. Un numero crescente di ricerche ha delineato specifiche firme molecolari associate alla progressione della malattia, alla prognosi dei pazienti e alla risposta terapeutica dai dati di sequenziamento 2,3,4. Queste firme specifiche offrono un panorama completo per comprendere la rete regolatoria trascrizionale alla base della biologia tumorale, tra cui l'origine, la differenziazione, la migrazione e la resistenza al trattamento del tumore5. Queste caratteristiche sono spesso diverse e variegate, comprendono molteplici sfaccettature piuttosto che essere confinate a una singola mostra. Ciò rende difficile lo screening e l'identificazione di geni specifici altamente associati alla malattia. Pertanto, c'è un urgente bisogno di strategie computazionali sensate per lo screening di geni cruciali implicati nella malattia.

L'apprendimento automatico (ML) è una branca dell'intelligenza artificiale che si concentra sulla creazione di sistemi in grado di apprendere da set di dati complessi, identificare modelli e sviluppare un modello predittivo con elevata precisione per fornire un riferimento per prendere decisioni6. Recentemente, lo sviluppo di modelli basati sull'apprendimento automatico dai dati del trascrittoma per prevedere gli esiti dei pazienti o diagnosticare malattie è avanzato rapidamente in una varietà di malattie 7,8,9,10. Le prestazioni di questi modelli spesso variano notevolmente a causa dei diversi set di dati e algoritmi utilizzati per l'addestramento. La selezione del modello ottimale per gli esperimenti successivi e le applicazioni cliniche è emersa come una sfida urgente. Un approccio praticabile comporta il confronto delle prestazioni di vari modelli e la selezione di quello più promettente per un ulteriore utilizzo 7,11. Inoltre, la diversità dei parametri e dei formati dei risultati supportati nei vari framework di calcolo pone sfide significative per l'analisi comparativa. Tuttavia, al momento non esiste un software che integri algoritmi di apprendimento automatico all'avanguardia per confrontare i punti di forza e di debolezza dei diversi modelli e semplificare il processo di selezione dei parametri, facilitando l'accesso da parte degli utenti. Pertanto, è necessario lo sviluppo di un software di facile utilizzo in grado di facilitare l'integrazione dei dati trascrizionali con diversi algoritmi di apprendimento automatico, affrontando al contempo gli attuali limiti della selezione dei biomarcatori e dell'interpretazione dei modelli. Tali progressi amplieranno notevolmente la nostra capacità di fornire preziose informazioni sugli attuali campi di ricerca e, in ultima analisi, miglioreranno i risultati dei pazienti.

In questo studio, abbiamo sviluppato un pacchetto R open source denominato Mime12, che dimostra prestazioni solide in tutti i set di dati e mira a semplificare l'integrazione dei set di dati del trascrittoma con vari algoritmi di apprendimento automatico, semplificando così i processi associati. Per identificare potenziali candidati da dati di trascrittoma su larga scala e sviluppare modelli ottimali, Mime offre quattro funzioni applicative: un modello di prognosi ottimale costruito integrando 10 algoritmi di apprendimento automatico; un modello di risposta binario costruito utilizzando sette algoritmi di apprendimento automatico; caratteristiche principali relative alla prognosi identificate utilizzando otto algoritmi di apprendimento automatico; e visualizzazione delle prestazioni di ciascun modello.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Protocollo

NOTA: le esercitazioni per questo studio vengono tutte eseguite sulla piattaforma Linux utilizzando il software R. La versione del pacchetto R utilizzata in questo protocollo è elencata nella tabella dei materiali. Ogni passaggio necessario per l'analisi è mostrato di seguito e il protocollo dettagliato può essere acquisito anche su GitHub (https://github.com/l-magnificence/Mime). Gli utenti che riscontrano problemi con Mime possono visitare la pagina del problema di GitHub (https://github.com/l-magnificence/Mime/issues) per fornire un feedback.

1. Preparazione del Mime e del dataset di esempio

  1. Installa la versione di sviluppo di Mime da GitHub utilizzando il codice seguente:
    devtools::install_github("l-magnificence/Mime")
  2. Preparare più coorti contenenti dati di sequenziamento trascrizionale con informazioni sulla sopravvivenza o sulla risposta clinica alla terapia. In questo caso, sono stati utilizzati due dati di esempio (Example.cohort e Example.ici) per l'esecuzione di Mime. Example.cohort contiene due set di dati sui gliomi; ciascuno ha selezionato casualmente 100 campioni rispettivamente dal database TCGA e CGGA. Mentre Example.ici contiene 100 campioni pre-trattamento selezionati casualmente con inibitori del checkpoint immunitario dal precedente studio12. Tutti i dati di esempio possono essere acquisiti da GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Includi più set di dati per costruire modelli predittivi per la prognosi in Example.cohort. La prima colonna ID in ogni set di dati è l'ID del campione, la seconda e la terza colonna OS.time e OS in ogni set di dati sono il tempo di sopravvivenza e lo stato dei pazienti; Altre colonne in ogni set di dati sono il livello di espressione genica scalato con log2(x+1). Dataset1 è il set di dati di training, mentre gli altri set di dati sono per la convalida. Utilizza il seguente formato per 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. Includi più set di dati per costruire modelli predittivi per la risposta in Example.ici. L'ID della prima colonna in ogni set di dati è l'ID del campione, la seconda colonna Var in ogni set di dati è la risposta terapeutica dei pazienti (N: Nessuna risposta; Y:), e le altre colonne in ciascun set di dati sono il livello di espressione genica scalato con log2(x+1). L'addestramento è il set di dati di addestramento, mentre altri set di dati sono per la convalida. Utilizzare il seguente formato per 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 set genetico. Qui, un set di geni (genelist) associato alla segnalazione Wnt/β-catenina da MSigDB è stato utilizzato per l'esecuzione di Mime. Utilizzare il seguente formato per 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. Costruzione di modelli predittivi per la prognosi

  1. Utilizza la funzione ML.Dev.Prog.Sig() in Mime basata su Example.cohort e genelist per costruire modelli di previsione per la prognosi. Utilizzare i seguenti codici:
    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. Utilizzare la funzione cindex_dis_all() in Mime per tracciare il C-index di ciascun modello e selezionare il modello ottimale con il C-index più alto. Utilizzare i seguenti codici:
    cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
    order =names (list_train_vali_Data ),width = 0.35 )
  3. Calcolare la curva di sopravvivenza dei pazienti in base al punteggio di rischio utilizzando un modello specifico tra diversi set di dati ed elaborarlo in Mime. Utilizzare i seguenti codici:
    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. Usare quindi la funzione cal_AUC_ml_res() in Mime per calcolare l'AUC dipendente dal tempo prevista dai modelli costruiti. Utilizzare i seguenti codici:
    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. Utilizzare la funzione auc_dis_all() in Mime per tracciare l'AUC dipendente dal tempo prevista da ogni modello. Utilizzare i seguenti codici:
    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. Elabora la curva ROC dipendente dal tempo di un modello specifico tra diversi set di dati in Mime. Utilizzare i seguenti codici:
    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. Costruzione di modelli predittivi per la risposta

  1. Usa un'altra funzione ML.Dev.Pred.Category.Sig() in Mime basata su Example.ici e genelist per costruire modelli di previsione per la risposta terapeutica. Utilizzare i seguenti codici:
    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. Utilizzare la funzione auc_vis_category_all() in Mime per tracciare l'AUC prevista da ogni modello. Utilizzare i seguenti codici:
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Elabora la curva ROC di un modello specifico tra diversi set di dati in Mime. Utilizzare i seguenti codici:
    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. Selezione delle funzioni principali

  1. Utilizza la funzione ML.Corefeature.Prog.Screen() in Mime basato su Example.cohort e genelist per identificare i geni critici. Utilizzare i seguenti codici:
    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. I geni di output sono strettamente associati all'esito del paziente e una maggiore frequenza di variabili sottoposte a screening significa che questi sono elementi fondamentali (le variabili filtrate più frequentemente sono definite come elementi fondamentali). Usa la funzione core_feature_rank() in Mime per tracciare il rango dei geni filtrati con metodi diversi. Utilizzare i seguenti codici:
    core_feature_rank(res.feature.all, top=20)

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Risultati

La genelist e la coorte Example.cohort, che includono una coorte di addestramento e una coorte di convalida, sono state utilizzate per costruire modelli prognostici, integrando 10 algoritmi di apprendimento automatico in Mime. Tra i 117 modelli di prognosi costruiti da Mime, il modello combinato StepCox [forward] + plsRcox (SPCOM) ha avuto il C-index più alto tra tutte le coorti, indicando la sua eccezionale performance (Figura 1A). I pazienti sono stati ulteriormente separati in gruppi ad a...

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Discussione

In questo studio, forniamo una descrizione dettagliata di come utilizzare il pacchetto Mime per sviluppare modelli predittivi di apprendimento automatico robusti e potenti per i dati trascrittomici. Negli studi precedenti, i ricercatori hanno spesso avuto difficoltà a selezionare l'algoritmo del modello predittivo appropriato in base alle caratteristiche specifiche dei loro dati di sequenziamento13,14. Inoltre, per i ricercatori ...

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Dichiarazioni

Nessun conflitto di interessi dichiarato.

Ringraziamenti

Ringraziamo tutti i partecipanti e gli investigatori coinvolti nella produzione dei dati.

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Materiali

Elenco dei materiali utilizzati in questo articolo
NomeAziendaNumero di catalogoCommenti
Nome del pacchettoVersioneSoftware
una trama0.1.10R studio
BART2.9.4R studio
Boruta8.0.0R studio
cancrodi classe1.38.0R studio
Cursore6.0-89R studio
Ckmeans.1d.dp4.3.5R studio
confrontaC1.3.2R studio
Mappa di calore complessa2.15.1R studio
Composizioni2.0-4R studio
data.table1.14.0R studio
doParallelo1.0.16R studio
dplyr1.1.3R studio
E10711.7-7R studio
forestale1.1.0R studio
futuro1.21.0R studio
Gbm2.1.8.1R studio
ggbreak0.1.1R studio
ggplot23.4.1R studio
ggpubr0.4.0R studio
ggsci2.9R studio
glmnet4.1-2R studio
griglia4.1.3R studio
grigliaExtra2.3R studio
GSEABase1.54.0R studio
GSVA1.40.1R studio
Hmisc5.1-1R studio
kknn1.3.1R studio
maglia1.42R studio
magrittr2.7.2R studio
Matrice1.5-4R studio
meta5.2-0R studio
Strumenti vari0.6-28R studio
mixOmics6.18.1R studio
Strumenti di miscelazione1.2.0R studio
pbapply1.4-3R studio
plsRcox1.7.7R studio
Proc1.18.0R studio
R4.1.3R studio
casualeForestaSRC4.6-14R studio
lettore1.4.0R studio
Ricette0.1.17R studio
rimodellare21.4.4R studio
rmarkdown2.8R studio
ROCit2.1.1R studio
ROCR1.0-11R studio
bilancia1.2.1R studio
passero1.0.3R studio
stringer1.5.0R studio
SuperPC1.12R studio
sopravvivenza3.3-1R studio
sopravvivenzaROC1.0.3R studio
SopravvivenzaSVM0.0.5R studio
SVA3.40.0R studio
testche3.1.0R studio
tibble3.2.1R studio
tidyr1.3.0R studio
Tidyverse1.3.1R studio
UpSetR1.4.0R studio
Viridis0.6.1R studio

Riferimenti

  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).

Accesso limitato. Accedi o avvia una prova gratuita per visualizzare questo contenuto.

Ristampe e permessi

Tag

Costruzione di modelli predittiviSelezione delle caratteristicheVisualizzazione dei datiSequenziamento trascrizionaleModellazione prognosticaPredizione della risposta terapeuticaAnalisi della sopravvivenzaIdentificazione dei geni coreMetriche di performance del modello