Un abonnement JoVE est requis pour visualiser ce contenu. Connectez-vous ou commencez votre période d'essai gratuite.

Article de méthode

Construction et visualisation de modèles à l’aide d’un cadre d’apprentissage automatique basé sur MIME

3.8K vues

DOI :

10.3791/68553

22 juillet 2025

* These authors contributed equally

Dans cet article

Résumé

Mime est un cadre de calcul flexible permettant de construire un modèle d’intégration basé sur l’apprentissage automatique avec des performances élégantes. Nous présentons ici une procédure détaillée, étape par étape, pour développer des modèles prédictifs de haute précision, en exploitant des ensembles de données complexes pour identifier les gènes critiques associés à la progression de la maladie, aux résultats pour les patients et à la réponse thérapeutique.

Résumé

La technologie de séquençage à haut débit répandue a considérablement amélioré notre compréhension de la biologie et de l’hétérogénéité du cancer. Les algorithmes d’apprentissage automatique sur les données transcriptionnelles sont devenus essentiels pour prédire le pronostic et les réponses cliniques des patients. Malgré les progrès des algorithmes d’apprentissage automatique, il n’existe toujours pas de plateforme open source intégrant les algorithmes d’apprentissage automatique les plus sophistiqués sur les données transcriptionnelles. Pour combler cette lacune, nous avons développé Mime, un cadre d’apprentissage automatique polyvalent pour améliorer la construction et la visualisation de modèles prédictifs des caractéristiques cliniques et des signatures génétiques. En intégrant divers ensembles de données et en utilisant les techniques de sélection de caractéristiques les plus avancées, Mime relève des défis critiques en matière de prédictions cliniques. Il fournit trois fonctions principales, notamment la construction de modèles, la sélection de fonctionnalités et la visualisation des données. La construction de modèles englobe une gamme d’algorithmes d’apprentissage automatique, y compris, mais sans s’y limiter, des arbres de décision, des machines à vecteurs de support et des méthodes d’ensemble, ce qui permet aux chercheurs de sélectionner l’approche la mieux adaptée à leur analyse spécifique. La sélection de caractéristiques utilise des algorithmes avancés tels que l’élimination récursive des caractéristiques et la régression LASSO pour rationaliser l’ensemble de données et se concentrer sur les caractéristiques les plus informatives. Le cadre prend en charge le réglage des paramètres personnalisables grâce à des méthodes de validation croisée, optimisant ainsi les performances du modèle tout en atténuant les risques de surapprentissage. Les outils de visualisation intégrés à Mime permettent aux chercheurs d’interpréter efficacement les résultats du modèle, en fournissant des représentations graphiques de l’importance des caractéristiques et des mesures de performance prédictives. Dans ce manuscrit, nous fournissons un tutoriel détaillé sur les procédures par étapes de ce cadre d’apprentissage automatique polyvalent.

Introduction

L’adoption généralisée des technologies de séquençage à haut débit a considérablement influencé notre compréhension de la biologie et de l’hétérogénéité du cancer1. Cette avancée révolutionnaire en biotechnologie a non seulement approfondi nos connaissances scientifiques, mais a également révolutionné le domaine de la recherche médicale. En permettant aux scientifiques de séquencer rapidement et avec précision de grandes quantités de matériel génétique, le séquençage à haut débit a accéléré la découverte de nouveaux gènes, mutations et voies biologiques. De plus en plus de recherches ont permis de délimiter des signatures moléculaires spécifiques associées à la progression de la maladie, au pronostic des patients et à la réponse thérapeutique à partir des données de séquençage 2,3,4. Ces signatures spécifiques offrent un paysage complet de compréhension du réseau de régulation transcriptionnelle sous-jacent à la biologie tumorale, y compris l’origine, la différenciation, la migration et la résistance au traitementdes tumeurs 5. Ces caractéristiques sont souvent diverses et variées, englobant de multiples facettes plutôt que d’être confinées à une seule exposition. Il est donc difficile de dépister et d’identifier des gènes spécifiques fortement associés à la maladie. Il est donc urgent de mettre au point des stratégies informatiques sensées pour dépister les gènes cruciaux impliqués dans la maladie.

L’apprentissage automatique (ML) est une branche de l’intelligence artificielle qui se concentre sur la création de systèmes capables d’apprendre à partir d’ensembles de données complexes, d’identifier des modèles et de développer un modèle prédictif de haute précision pour fournir une référence pour la prise de décisions6. Récemment, le développement de modèles basés sur l’apprentissage automatique à partir de données de transcriptome pour prédire les résultats des patients ou diagnostiquer des maladies a progressé rapidement dans une variété de maladies 7,8,9,10. Les performances de ces modèles varient souvent considérablement en raison des différents ensembles de données et algorithmes utilisés pour l’entraînement. La sélection du modèle optimal pour les expériences ultérieures et les applications cliniques est apparue comme un défi pressant. Une approche viable consiste à comparer les performances de différents modèles et à sélectionner le plus prometteur pour une utilisation ultérieure 7,11. De plus, la diversité des paramètres et des formats de résultats pris en charge dans divers cadres de calcul pose des défis importants pour l’analyse comparative. Cependant, il n’existe actuellement aucun logiciel qui intègre des algorithmes d’apprentissage automatique de pointe pour comparer les forces et les faiblesses de différents modèles et simplifier le processus de sélection des paramètres, ce qui facilite l’accès des utilisateurs. Il est donc nécessaire de développer des logiciels conviviaux capables de faciliter l’intégration des données transcriptionnelles avec divers algorithmes d’apprentissage automatique, tout en s’attaquant aux limites actuelles de la sélection des biomarqueurs et de l’interprétation des modèles. De telles avancées élargiront considérablement notre capacité à fournir des informations précieuses sur les domaines de recherche actuels et, en fin de compte, à améliorer les résultats pour les patients.

Dans cette étude, nous avons développé un package R open source nommé Mime12, qui démontre des performances robustes sur l’ensemble des ensembles de données et vise à rationaliser l’intégration des ensembles de données de transcriptome avec divers algorithmes d’apprentissage automatique, simplifiant ainsi les processus associés. Pour identifier des candidats potentiels à partir de données de transcriptome à grande échelle et développer des modèles optimaux, Mime propose quatre fonctions applicatives : un modèle de pronostic optimal construit en intégrant 10 algorithmes d’apprentissage automatique ; un modèle de réponse binaire construit à l’aide de sept algorithmes d’apprentissage automatique ; les principales caractéristiques liées au pronostic identifiées à l’aide de huit algorithmes d’apprentissage automatique ; et visualisation des performances de chaque modèle.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Protocole

REMARQUE : Les tutoriels de cette étude sont tous exécutés sur la plate-forme Linux à l’aide du logiciel R. La version du package R utilisée dans ce protocole est répertoriée dans la Table des matériaux. Chaque étape nécessaire à l’analyse est illustrée ci-dessous et le protocole détaillé peut également être acquis sur GitHub (https://github.com/l-magnificence/Mime). Les utilisateurs qui rencontrent des problèmes avec Mime peuvent visiter la page Problème GitHub (https://github.com/l-magnificence/Mime/issues) pour fournir des commentaires.

1. Préparation de Mime et d’un exemple de jeu de données

  1. Installez la version de développement de Mime à partir de GitHub à l’aide du code ci-dessous :
    devtools::install_github("l-magnificence/Mime")
  2. Préparez plusieurs cohortes contenant des données de séquençage transcriptionnel avec des informations sur la survie ou la réponse clinique au traitement. Ici, deux exemples de données (Example.cohort et Example.ici) ont été utilisés pour exécuter Mime. Example.cohort contient deux ensembles de données sur les gliomes ; chacun a sélectionné au hasard 100 échantillons dans les bases de données TCGA et CGGA, respectivement. Alors que Example.ici contient 100 échantillons de prétraitement sélectionnés au hasard avec des inhibiteurs de point de contrôle immunitaire de l’étude précédente12. Toutes les données d’exemple peuvent être acquises à partir de GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Incluez plusieurs ensembles de données pour construire des modèles prédictifs de pronostic dans Example.cohort. L’ID de la première colonne de chaque ensemble de données est l’ID de l’échantillon, les deuxième et troisième colonnes OS.time et OS de chaque ensemble de données sont la durée de survie et l’état des patients ; Les autres colonnes de chaque ensemble de données sont le niveau d’expression génique mis à l’échelle avec log2(x+1). Dataset1 est le jeu de données d’entraînement, tandis que les autres jeux de données sont destinés à la validation. Utilisez le format suivant pour 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. Incluez plusieurs ensembles de données pour construire des modèles prédictifs pour la réponse dans Example.ici. L’ID de la première colonne de chaque ensemble de données est l’ID de l’échantillon, la deuxième colonne Var de chaque ensemble de données est la réponse thérapeutique des patients (N : Aucune réponse ; Y : réponse), et les autres colonnes de chaque ensemble de données sont le niveau d’expression génique mis à l’échelle avec log2(x+1). L’entraînement est l’ensemble de données d’entraînement, tandis que les autres ensembles de données sont destinés à la validation. Utilisez le format suivant pour 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. Préparez un ensemble de gènes. Ici, un ensemble de gènes (genelist) associé à la signalisation Wnt/β-caténine de MSigDB a été utilisé pour exécuter Mime. Utilisez le format suivant pour la liste génétique :
    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. Construire des modèles prédictifs pour le pronostic

  1. Utilisez la fonction ML.Dev.Prog.Sig() dans Mime basée sur Example.cohort et genelist pour construire des modèles de prédiction du pronostic. Utilisez les codes suivants :
    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. Utilisez la fonction cindex_dis_all() dans Mime pour tracer l’indice C de chaque modèle et sélectionner le modèle optimal avec l’indice C le plus élevé. Utilisez les codes suivants :
    cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
    order =names (list_train_vali_Data ),width = 0.35 )
  3. Calculez la courbe de survie des patients en fonction du score de risque à l’aide d’un modèle spécifique parmi différents ensembles de données et traitez-le dans Mime. Utilisez les codes suivants :
    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. Ensuite, utilisez la fonction cal_AUC_ml_res() dans Mime pour calculer l’AUC dépendante du temps prédite par les modèles construits. Utilisez les codes suivants :
    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. Utilisez la fonction auc_dis_all() dans Mime pour tracer l’AUC dépendante du temps prédite par chaque modèle. Utilisez les codes suivants :
    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. Traitez la courbe ROC dépendante du temps d’un modèle spécifique parmi différents ensembles de données dans Mime. Utilisez les codes suivants :
    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. Construire des modèles prédictifs pour la réponse

  1. Utilisez une autre fonction ML.Dev.Pred.Category.Sig() dans Mime basée sur Example.ici et genelist pour construire des modèles de prédiction de la réponse thérapeutique. Utilisez les codes suivants :
    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. Utilisez la fonction auc_vis_category_all() dans Mime pour tracer l’AUC prédite par chaque modèle. Utilisez les codes suivants :
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Traitez la courbe ROC d’un modèle spécifique parmi différents ensembles de données dans Mime. Utilisez les codes suivants :
    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. Sélection des fonctionnalités de base

  1. Utilisez la fonction ML.Corefeature.Prog.Screen() dans Mime basée sur Example.cohort et genelist pour identifier les gènes critiques. Utilisez les codes suivants :
    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. Les gènes de sortie sont étroitement associés aux résultats du patient et une fréquence plus élevée de variables criblées signifie qu’il s’agit de caractéristiques essentielles (les variables les plus fréquemment filtrées sont définies comme des caractéristiques principales). Utilisez la fonction core_feature_rank() dans Mime pour tracer le rang des gènes filtrés par différentes méthodes. Utilisez les codes suivants :
    core_feature_rank(res.feature.all, top=20)

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Résultats

Le genelist et Example.cohort, y compris une cohorte d’entraînement et une cohorte de validation, ont été utilisés pour construire des modèles pronostiques en intégrant 10 algorithmes d’apprentissage automatique dans Mime. Parmi les 117 modèles de pronostic construits par Mime, le modèle combiné StepCox[forward] + plsRcox (SPCOM) avait l’indice C le plus élevé parmi toutes les cohortes, ce qui indique sa performance exceptionnelle (Figure 1A). Les patients ont ensuite été séparés en groupes ...

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Discussion

Dans cette étude, nous fournissons une description détaillée de la façon d’utiliser le package Mime pour développer des modèles prédictifs d’apprentissage automatique robustes et puissants pour les données transcriptomiques. Dans des études précédentes, les chercheurs avaient souvent du mal à sélectionner l’algorithme de modèle prédictif approprié en fonction des caractéristiques spécifiques de leurs données de séquençage13,14. D...

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Déclarations de divulgation

Aucun conflit d’intérêts n’a été déclaré.

Remerciements

Nous remercions tous les participants et les enquêteurs impliqués dans la production des données.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Matériaux

Liste des matériaux utilisés dans cet article
NomEntrepriseNuméro de catalogueCommentaires
Nom du packageVersionLogiciel
aplot0.1.10R studio
BART2.9.4R studio
Boruta8.0.0R studio
Classe de cancer1.38.0R studio
caret6.0-89R studio
ckmeans.1d.dp4.3.5R studio
comparerC1.3.2R studio
ComplexHeatmap2.15.1R studio
Compositions2.0-4R studio
données.table1.14.0R studio
doParallel1.0.16R studio
dplyr1.1.3R studio
E10711.7-7R studio
traceur forestier1.1.0R studio
futur1.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
grille4.1.3R studio
gridExtra2.3R studio
GSEABase1.54.0R studio
La1.40.1R studio
Hmisc5.1-1R studio
kknn1.3.1R studio
tricoteuse1.42R studio
Magrittr2.7.2R studio
Matrice1.5-4R studio
méta5.2-0R studio
miscTools0.6-28R studio
mixOmics6.18.1R studio
Mixtools1.2.0R studio
pbapply1.4-3R studio
plsRcox1.7.7R studio
Proc1.18.0R studio
R4.1.3R studio
randomForestSRC4.6-14R studio
Lecteur1.4.0R studio
Recettes0.1.17R studio
Remodel21.4.4R studio
rmarkdown2.8R studio
ROCit2.1.1R studio
ROCR1.0-11R studio
balance1.2.1R studio
moineau1.0.3R studio
Longeron1.5.0R studio
SuperPC1.12R studio
survie3.3-1R studio
survivalROC1.0.3R studio
surviesVM0.0.5R studio
SVA3.40.0R studio
testthat3.1.0R studio
Tibble3.2.1R studio
tidyr1.3.0R studio
Tidyverse1.3.1R studio
UpSetR1.4.0R studio
Viridis0.6.1R studio

Références

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

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Réimpressions et autorisations

Étiquettes

Construction de modèles prédictifsSélection de caractéristiquesVisualisation de donnéesSéquençage transcriptionnelModélisation du pronosticPrédiction de la réponse thérapeutiqueAnalyse de survieIdentification de gènes pivotsMétriques de performance du modèle