Subskrypcja JoVE jest wymagana do oglądania tego materiału. Zaloguj się lub rozpocznij bezpłatny okres próbny.

Artykuł metodologiczny

Konstruowanie i wizualizacja modeli przy użyciu struktury uczenia maszynowego opartej na MIME

3.8K wyświetleń

DOI:

10.3791/68553

22 lipca 2025

* These authors contributed equally

W tym artykule

Podsumowanie

Mime to elastyczna platforma obliczeniowa do konstruowania modelu integracji opartego na uczeniu maszynowym o eleganckiej wydajności. W tym miejscu przedstawiamy szczegółową procedurę krok po kroku dotyczącą opracowywania modeli predykcyjnych z dużą dokładnością, wykorzystując złożone zestawy danych do identyfikacji krytycznych genów związanych z postępem choroby, wynikami pacjentów i reakcją terapeutyczną.

Streszczenie

Szeroko rozpowszechniona technologia sekwencjonowania o wysokiej przepustowości znacznie poszerzyła naszą wiedzę na temat biologii i heterogeniczności nowotworów. Algorytmy uczenia maszynowego na danych transkrypcyjnych stały się niezbędne do przewidywania rokowań pacjentów i odpowiedzi klinicznych. Pomimo postępów w algorytmach uczenia maszynowego nadal brakuje platformy typu open source, która obejmuje najbardziej wyrafinowane algorytmy uczenia maszynowego na danych transkrypcyjnych. Aby wypełnić tę lukę, opracowaliśmy Mime, wszechstronną platformę uczenia maszynowego, która usprawnia konstrukcję i wizualizację modeli predykcyjnych dla cech klinicznych i sygnatur genów. Integrując różnorodne zestawy danych i stosując najbardziej zaawansowane techniki wyboru cech, Mime odpowiada na krytyczne wyzwania związane z prognozowaniem klinicznym. Zapewnia trzy główne funkcje, w tym budowę modelu, wybór funkcji i wizualizację danych. Konstrukcja modelu obejmuje szereg algorytmów uczenia maszynowego, w tym między innymi drzewa decyzyjne, maszyny wektorów nośnych i metody zespołowe, co pozwala badaczom wybrać najlepiej dopasowane podejście do ich konkretnej analizy. Wybór funkcji wykorzystuje zaawansowane algorytmy, takie jak rekurencyjna eliminacja cech i regresja LASSO, aby usprawnić zestaw danych i skupić się na najbardziej pouczających funkcjach. Struktura obsługuje dostosowywalne dostrajanie parametrów za pomocą metod krzyżowej walidacji, optymalizując wydajność modelu przy jednoczesnym ograniczaniu ryzyka nadmiernego dopasowania. Narzędzia do wizualizacji zintegrowane z Mime umożliwiają badaczom efektywną interpretację wyników modelu, zapewniając graficzne reprezentacje znaczenia funkcji i predykcyjne wskaźniki wydajności. W tym manuskrypcie przedstawiamy szczegółowy samouczek dotyczący procedur krokowych tej wszechstronnej struktury uczenia maszynowego.

Wprowadzenie

Powszechne zastosowanie wysokoprzepustowych technologii sekwencjonowania znacząco wpłynęło na nasze zrozumienie biologii i heterogeniczności nowotworów1. Ten przełomowy postęp w biotechnologii nie tylko pogłębił naszą wiedzę naukową, ale także zrewolucjonizował dziedzinę badań medycznych. Umożliwiając naukowcom szybkie i dokładne sekwencjonowanie dużych ilości materiału genetycznego, sekwencjonowanie o wysokiej przepustowości przyspieszyło odkrywanie nowych genów, mutacji i szlaków biologicznych. Coraz więcej badań wskazuje na specyficzne sygnatury molekularne związane z postępem choroby, rokowaniem pacjenta i reakcją terapeutyczną na podstawie danych sekwencjonowania 2,3,4. Te specyficzne sygnatury oferują kompleksowy krajobraz zrozumienia transkrypcyjnej sieci regulacyjnej leżącej u podstaw biologii nowotworu, w tym pochodzenia guza, różnicowania, migracji i oporności na leczenie5. Cechy te są często zróżnicowane i zróżnicowane, obejmują wiele aspektów, a nie ograniczają się do jednego eksponatu. Utrudnia to badania przesiewowe i identyfikację konkretnych genów silnie związanych z chorobą. W związku z tym istnieje pilna potrzeba opracowania rozsądnych strategii obliczeniowych w celu zbadania kluczowych genów związanych z chorobą.

Uczenie maszynowe (ML) to gałąź sztucznej inteligencji, która koncentruje się na budowaniu systemów, które mogą uczyć się na podstawie złożonych zestawów danych, identyfikować wzorce i opracowywać model predykcyjny z dużą dokładnością, aby zapewnić odniesienie do podejmowania decyzji6. Ostatnio nastąpił szybki postęp w rozwoju modeli opartych na uczeniu maszynowym na podstawie danych transkryptomu w celu przewidywania wyników leczenia pacjentów lub diagnozowania chorób 7,8,9,10. Wydajność tych modeli często różni się znacznie ze względu na różne zestawy danych i algorytmy używane do trenowania. Wybór optymalnego modelu do kolejnych eksperymentów i zastosowań klinicznych okazał się pilnym wyzwaniem. Opłacalne podejście polega na porównaniu wydajności różnych modeli i wybraniu najbardziej obiecującego z nich do dalszego wykorzystania 7,11. Co więcej, różnorodność parametrów i formatów wyników obsługiwanych w różnych strukturach obliczeniowych stanowi poważne wyzwanie dla analizy porównawczej. Jednak obecnie nie ma oprogramowania, które integrowałoby najnowocześniejsze algorytmy uczenia maszynowego w celu porównania mocnych i słabych stron różnych modeli oraz uproszczenia procesu wyboru parametrów, ułatwiając użytkownikom dostęp. W związku z tym istnieje potrzeba opracowania przyjaznego dla użytkownika oprogramowania, które może ułatwić integrację danych transkrypcyjnych z różnymi algorytmami uczenia maszynowego, a jednocześnie rozwiązać obecne ograniczenia w doborze biomarkerów i interpretacji modelu. Takie postępy znacznie poszerzą naszą zdolność do dostarczania cennych informacji na temat obecnych dziedzin badań i ostatecznie poprawią wyniki leczenia pacjentów.

W tym badaniu opracowaliśmy pakiet R o otwartym kodzie źródłowym o nazwie Mime12, który wykazuje solidną wydajność w zestawach danych i ma na celu usprawnienie integracji zestawów danych transkryptomu z różnymi algorytmami uczenia maszynowego, upraszczając w ten sposób powiązane procesy. Aby zidentyfikować potencjalnych kandydatów na podstawie danych transkryptomu na dużą skalę i opracować optymalne modele, Mime oferuje cztery funkcje aplikacji: optymalny model prognostyczny skonstruowany przez integrację 10 algorytmów uczenia maszynowego; binarny model odpowiedzi skonstruowany przy użyciu siedmiu algorytmów uczenia maszynowego; podstawowe cechy związane z prognozowaniem zidentyfikowane za pomocą ośmiu algorytmów uczenia maszynowego; i wizualizacja wydajności każdego modelu.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Protokół

UWAGA: Wszystkie samouczki do tego badania są uruchamiane na platformie Linux przy użyciu oprogramowania R. Wersja pakietu R używana w tym protokole jest wymieniona w Tabeli materiałów. Każdy krok niezbędny do analizy jest pokazany poniżej, a szczegółowy protokół można również pobrać na GitHub (https://github.com/l-magnificence/Mime). Użytkownicy, którzy napotkają problemy z Mime, mogą odwiedzić stronę problemu z usługą GitHub (https://github.com/l-magnificence/Mime/issues), aby przekazać opinię.

1. Przygotowanie Mime i przykładowego zestawu danych

  1. Zainstaluj wersję rozwojową Mime z GitHub przy użyciu poniższego kodu:
    devtools::install_github("l-magnificence/Mime")
  2. Przygotowanie wielu kohort zawierających dane sekwencjonowania transkrypcji z informacjami na temat przeżycia lub odpowiedzi klinicznej na terapię. W tym przypadku do uruchomienia Mime użyto dwóch przykładowych danych (Example.cohort i Example.ici). Example.cohort zawiera dwa zestawy danych dotyczące glejaka; każdy losowo wybrał 100 próbek odpowiednio z bazy danych TCGA i CGGA. Podczas gdy Example.ici zawiera losowo wybrane 100 próbek przed leczeniem z inhibitorami immunologicznych punktów kontrolnych z poprzedniego badania12. Wszystkie przykładowe dane można pobrać z usługi GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Uwzględnij wiele zestawów danych, aby skonstruować modele predykcyjne na potrzeby prognozowania w Example.cohort. Identyfikator pierwszej kolumny w każdym zbiorze danych to identyfikator próby, druga i trzecia kolumna OS.time i OS w każdym zestawie danych to czas przeżycia i stan pacjentów; Inne kolumny w każdym zestawie danych to poziom ekspresji genów skalowany za pomocą log2(x+1). Dataset1 to zestaw danych treningowych, podczas gdy inne zestawy danych służą do walidacji. W przypadku example.cohort użyj tego formatu:
      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. Dołącz wiele zestawów danych, aby skonstruować modele predykcyjne dla odpowiedzi w Example.ici. Pierwsza kolumna ID w każdym zbiorze danych to identyfikator próby, druga kolumna Var w każdym zbiorze danych to odpowiedź terapeutyczna pacjentów (N: Brak odpowiedzi; Y: odpowiedź), a pozostałe kolumny w każdym zestawie danych to poziom ekspresji genów skalowany za pomocą log2(x+1). Trenowanie to zestaw danych treningowych, podczas gdy inne zestawy danych służą do walidacji. W przypadku pliku Example.ci użyj następującego formatu:
      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. Przygotuj zestaw genów. W tym przypadku zestaw genów (genetyka) związany z sygnalizacją Wnt / β-kateniny z MSigDB został wykorzystany do uruchomienia Mime. Użyj następującego formatu dla listy genów:
    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. Konstruowanie modeli predykcyjnych dla prognozowania

  1. Użyj funkcji ML.Dev.Prog.Sig() w Mime na podstawie Example.cohort i genelist, aby skonstruować modele predykcyjne dla prognozy. Użyj następujących kodów:
    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. Użyj funkcji cindex_dis_all() w Mime, aby wykreślić indeks C każdego modelu i wybrać optymalny model o najwyższym indeksie C. Użyj następujących kodów:
    cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
    order =names (list_train_vali_Data ),width = 0.35 )
  3. Oblicz krzywą przeżycia pacjentów zgodnie z oceną ryzyka przy użyciu określonego modelu spośród różnych zestawów danych i przetwarzaj go w Mime. Użyj następujących kodów:
    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. Następnie użyj funkcji cal_AUC_ml_res() w Mime, aby obliczyć zależne od czasu AUC przewidywane przez skonstruowane modele. Użyj następujących kodów:
    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. Użyj funkcji auc_dis_all() w Mime, aby wykreślić zależne od czasu AUC przewidywane przez każdy model. Użyj następujących kodów:
    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. Przetwarzanie zależnej od czasu krzywej ROC określonego modelu wśród różnych zestawów danych w programie Mime. Użyj następujących kodów:
    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. Konstruowanie modeli predykcyjnych na potrzeby reagowania

  1. Użyj innej funkcji ML.Dev.Pred.Category.Sig() w Mime opartej na Example.ici i genelist, aby skonstruować modele predykcyjne dla odpowiedzi terapeutycznej. Użyj następujących kodów:
    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. Użyj funkcji auc_vis_category_all() w Mime, aby wykreślić AUC przewidywane przez każdy model. Użyj następujących kodów:
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Przetwarzanie krzywej ROC określonego modelu wśród różnych zestawów danych w programie Mime. Użyj następujących kodów:
    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. Wybór podstawowych funkcji

  1. Użyj funkcji ML.Corefeature.Prog.Screen() w Mime na podstawie Example.cohort i genelist, aby zidentyfikować krytyczne geny. Użyj następujących kodów:
    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. Geny wyjściowe są ściśle związane z wynikami pacjenta, a wyższa częstotliwość zmiennych badań przesiewowych oznacza, że są to cechy podstawowe (najczęściej filtrowane zmienne są definiowane jako cechy podstawowe). Użyj funkcji core_feature_rank() w Mime, aby wykreślić rangę genów przefiltrowanych różnymi metodami. Użyj następujących kodów:
    core_feature_rank(res.feature.all, top=20)

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Wyniki

Lista genów oraz Example.cohort, obejmująca jedną kohortę treningową i jedną kohortę walidacyjną, zostały wykorzystane do zbudowania modeli prognostycznych poprzez integrację 10 algorytmów uczenia maszynowego w Mime. spośród 117 modeli prognostycznych zbudowanych przez Mime, model łączony StepCox[forward] + plsRcox (SPCOM) uzyskał najwyższy wskaźnik C-index we wszystkich kohortach, co wskazuje na jego wyjątkową wydajność (Rysunek 1A). Pacjentów podzielono następnie na grupy wysokiego i niski...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Dyskusja

W tym badaniu przedstawiamy szczegółowy opis sposobu wykorzystania pakietu Mime do tworzenia solidnych i wydajnych modeli predykcyjnych uczenia maszynowego dla danych transkryptomicznych. W poprzednich badaniach badacze często zmagali się z wyborem odpowiedniego algorytmu modelu predykcyjnego w oparciu o specyficzne cechy danych sekwencjonowania13,14. Dodatkowo, dla badaczy bez wykształcenia informatycznego, istnieje pewna trudność w ustabilizowaniu środowiska uc...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Oświadczenia

Nie stwierdzono konfliktu interesów.

Podziękowania

Dziękujemy wszystkim uczestnikom i badaczom zaangażowanym w tworzenie danych.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
Nazwa pakietuWersjaOprogramowanie
aplot0.1.10R studio
BART2.9.4R studio
Boruta8.0.0R studio
Klasa raka1.38.0R studio
Daszek6.0-89R studio
Ckmeans.1d.dp4.3.5R studio
porównaj C1.3.2R studio
ZłożonaMapa ciepła2.15.1R studio
Kompozycje2.0-4R studio
data.table (tabela)1.14.0R studio
doParallel (doRównoległy)1.0.16R studio
dplyr (dplyr)1.1.3R studio
E1071 powiedział:1.7-7R studio
Ploter leśny1.1.0R studio
przyszłość1.21.0R studio
Gbm2.1.8.1R studio
Przerwa w grze ggbreak0.1.1R studio
ggplot2 powiedział:3.4.1R studio
ggpubr powiedział:0.4.0R studio
GGSCI2.9R studio
glmnet (glmnet)4.1-2R studio
siatka4.1.3R studio
gridExtra (siatka dodatkowa)2.3R studio
GASEABase (Biblioteka Główna)1.54.0R studio
Jednostka GSVA (GSVA)1.40.1R studio
Hmisc (Język Hmisc)5.1-1R studio
kknn powiedział:1.3.1R studio
Dziewiarstwo1.42R studio
magrittr powiedział:2.7.2R studio
Matryca1.5-4R studio
Meta5.2-0R studio
miscTools (Narzędzia różne)0.6-28R studio
mixOmika6.18.1R studio
Narzędzia do mieszania1.2.0R studio
PBAapply (Certyfikat PBA)1.4-3R studio
plsRcox powiedział:1.7.7R studio
Proc1.18.0R studio
R4.1.3R studio
randomForestSRC (LasKlucz losowy)4.6-14R studio
Odczyt1.4.0R studio
Przepisy0.1.17R studio
Przekształcanie 21.4.4R studio
rmarkdown (język rmarkdown)2.8R studio
ROCit (Język angielski)2.1.1R studio
Rejon Morza Śródziemnego (1.0-11R studio
waga1.2.1R studio
wróbel1.0.3R studio
podłużnica1.5.0R studio
Komputer superPC1.12R studio
przetrwanie3.3-1R studio
przetrwanieROC1.0.3R studio
PrzetrwanieSVM0.0.5R studio
SVA (SVA)3.40.0R studio
Przetestuj, że3.1.0R studio
Sztuczka3.2.1R studio
tidyr powiedział:1.3.0R studio
tidyverse (Świat Tidy)1.3.1R studio
UpSetR1.4.0R studio
Viridis0.6.1R studio

Bibliografia

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

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Przedruki i uprawnienia

Tagi

Budowa modelu predykcyjnegoselekcja cechwizualizacja danychsekwencjonowanie transkrypcyjnemodelowanie rokowańprzewidywanie odpowiedzi terapeutycznejanaliza przeżywalnościidentyfikacja genów kluczowychmetryki wydajności modelu