É necessária uma assinatura do JoVE para visualizar este conteúdo. Faça login ou inicie seu teste gratuito.

Artigo de método

Construindo e visualizando modelos usando a estrutura de aprendizado de máquina baseada em mime

3.8K visualizações

DOI:

10.3791/68553

22 de julho de 2025

* These authors contributed equally

Neste artigo

Resumo

O Mime é uma estrutura computacional flexível para construir um modelo de integração baseado em aprendizado de máquina com desempenho elegante. Aqui, fornecemos um procedimento passo a passo detalhado para o desenvolvimento de modelos preditivos com alta precisão, aproveitando conjuntos de dados complexos para identificar genes críticos associados à progressão da doença, resultados do paciente e resposta terapêutica.

Resumo

A tecnologia de sequenciamento de alto rendimento generalizada melhorou significativamente nossa compreensão da biologia e da heterogeneidade do câncer. Algoritmos de aprendizado de máquina em dados transcricionais tornaram-se vitais para prever o prognóstico do paciente e as respostas clínicas. Apesar dos avanços nos algoritmos de aprendizado de máquina, uma plataforma de código aberto que incorpora os algoritmos de aprendizado de máquina mais sofisticados em dados transcricionais permanece ausente. Para resolver essa lacuna, desenvolvemos o Mime, uma estrutura versátil de aprendizado de máquina para aprimorar a construção e visualização de modelos preditivos para características clínicas e assinaturas genéticas. Ao integrar diversos conjuntos de dados e empregar as técnicas de seleção de recursos mais avançadas, o Mime aborda desafios críticos em previsões clínicas. Ele fornece três funções principais, incluindo construção de modelo, seleção de recursos e visualização de dados. A construção do modelo abrange uma variedade de algoritmos de aprendizado de máquina, incluindo, entre outros, árvores de decisão, máquinas de vetores de suporte e métodos de conjunto, permitindo que os pesquisadores selecionem a abordagem mais adequada para sua análise específica. A seleção de recursos utiliza algoritmos avançados, como eliminação de recursos recursivos e regressão LASSO, para otimizar o conjunto de dados e focar nos recursos mais informativos. A estrutura oferece suporte ao ajuste de parâmetros personalizável por meio de métodos de validação cruzada, otimizando o desempenho do modelo e mitigando os riscos de sobreajuste. As ferramentas de visualização integradas ao Mime permitem que os pesquisadores interpretem os resultados do modelo de forma eficaz, fornecendo representações gráficas da importância do recurso e métricas de desempenho preditivo. Neste manuscrito, fornecemos um tutorial detalhado sobre os procedimentos passo a passo dessa estrutura versátil de aprendizado de máquina.

Introdução

A adoção generalizada de tecnologias de sequenciamento de alto rendimento influenciou significativamente nossa compreensão da biologia e da heterogeneidade do câncer1. Este avanço inovador na biotecnologia não apenas aprofundou nosso conhecimento científico, mas também revolucionou o campo da pesquisa médica. Ao permitir que os cientistas sequenciem grandes quantidades de material genético com rapidez e precisão, o sequenciamento de alto rendimento acelerou a descoberta de novos genes, mutações e vias biológicas. Um crescente corpo de pesquisa delineou assinaturas moleculares específicas associadas à progressão da doença, prognóstico do paciente e capacidade de resposta terapêutica a partir de dados de sequenciamento 2,3,4. Essas assinaturas específicas oferecem um cenário abrangente de compreensão da rede regulatória transcricional subjacente à biologia do tumor, incluindo origem do tumor, diferenciação, migração e resistência ao tratamento5. Essas características são frequentemente diversas e variadas, abrangendo múltiplas facetas, em vez de se limitarem a uma única exposição. Isso dificulta a triagem e a identificação de genes específicos altamente associados à doença. Assim, há uma necessidade urgente de estratégias computacionais sensatas para rastrear genes cruciais implicados na doença.

O aprendizado de máquina (ML) é um ramo da inteligência artificial que se concentra na construção de sistemas que podem aprender com conjuntos de dados complexos, identificar padrões e desenvolver um modelo preditivo com alta precisão para fornecer uma referência para a tomada de decisões6. Recentemente, o desenvolvimento de modelos baseados em aprendizado de máquina a partir de dados de transcriptoma para prever resultados de pacientes ou diagnosticar doenças avançou rapidamente em uma variedade de doenças 7,8,9,10. O desempenho desses modelos geralmente varia muito devido aos diferentes conjuntos de dados e algoritmos usados para treinamento. Selecionar o modelo ideal para experimentos subsequentes e aplicações clínicas surgiu como um desafio urgente. Uma abordagem viável envolve comparar o desempenho de vários modelos e selecionar o mais promissor para posterior utilização 7,11. Além disso, a diversidade de parâmetros e formatos de resultados suportados em várias estruturas de computação apresenta desafios significativos para a análise comparativa. No entanto, atualmente não existe um software que integre algoritmos de aprendizado de máquina de ponta para comparar os pontos fortes e fracos de diferentes modelos e simplificar o processo de seleção de parâmetros, facilitando o acesso dos usuários. Assim, há uma necessidade de desenvolvimento de software amigável que possa facilitar a integração de dados transcricionais com diversos algoritmos de aprendizado de máquina, ao mesmo tempo em que aborda as limitações atuais de seleção de biomarcadores e interpretação de modelos. Esses avanços expandirão muito nossa capacidade de fornecer informações valiosas sobre os campos de pesquisa atuais e, em última análise, melhorar os resultados dos pacientes.

Neste estudo, desenvolvemos um pacote R de código aberto chamado Mime12, que demonstra desempenho robusto em conjuntos de dados e visa agilizar a integração de conjuntos de dados de transcriptoma com vários algoritmos de aprendizado de máquina, simplificando assim os processos associados. Para identificar potenciais candidatos a partir de dados de transcriptoma em larga escala e desenvolver modelos ideais, o Mime oferece quatro funções de aplicação: um modelo de prognóstico ideal construído pela integração de 10 algoritmos de aprendizado de máquina; um modelo de resposta binária construído usando sete algoritmos de aprendizado de máquina; principais recursos relacionados ao prognóstico identificados usando oito algoritmos de aprendizado de máquina; e visualização do desempenho de cada modelo.

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Protocolo

NOTA: Os tutoriais para este estudo são todos executados na plataforma Linux usando o software R. A versão do pacote R usada neste protocolo está listada na Tabela de Materiais. Cada etapa necessária para análise é mostrada abaixo e o protocolo detalhado também pode ser adquirido no GitHub (https://github.com/l-magnificence/Mime). Os usuários que encontrarem problemas com o Mime podem visitar a página de problemas do GitHub (https://github.com/l-magnificence/Mime/issues) para fornecer comentários.

1. Preparação de Mime e conjunto de dados de exemplo

  1. Instale a versão de desenvolvimento do Mime do GitHub usando o código abaixo:
    devtools::install_github("l-magnificence/Mime")
  2. Prepare várias coortes contendo dados de sequenciamento transcricional com informações sobre sobrevida ou resposta clínica à terapia. Aqui, dois dados de exemplo (Example.cohort e Example.ici) foram usados para executar o Mime. Example.cohort contém dois conjuntos de dados de glioma; cada um selecionou aleatoriamente 100 amostras do banco de dados TCGA e CGGA, respectivamente. Enquanto o Example.ici contém 100 amostras de pré-tratamento selecionadas aleatoriamente com inibidores de checkpoint imunológico do estudo anterior12. Todos os dados de exemplo podem ser adquiridos do GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Inclua vários conjuntos de dados para construir modelos preditivos de prognóstico em Example.cohort. O ID da primeira coluna em cada conjunto de dados é o ID da amostra, a segunda e a terceira colunas OS.time e OS em cada conjunto de dados são o tempo de sobrevivência e o status dos pacientes; Outras colunas em cada conjunto de dados são o nível de expressão gênica dimensionado com log2(x+1). Dataset1 é o conjunto de dados de treinamento, enquanto outros conjuntos de dados são para validação. Use o seguinte 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. Inclua vários conjuntos de dados para construir modelos preditivos para a resposta em Example.ici. O ID da primeira coluna em cada conjunto de dados é o ID da amostra, a segunda coluna Var em cada conjunto de dados é a resposta terapêutica dos pacientes (N: Sem resposta; Y: resposta) e as outras colunas em cada conjunto de dados são o nível de expressão gênica dimensionado com log2(x+1). Treinamento é o conjunto de dados de treinamento, enquanto outros conjuntos de dados são para validação. Use o seguinte 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. Prepare um conjunto de genes. Aqui, um conjunto de genes (genelista) associado à sinalização Wnt / β-catenina do MSigDB foi usado para executar o Mime. Use o seguinte 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. Construção de modelos preditivos de prognóstico

  1. Use a função ML.Dev.Prog.Sig() em Mime com base em Example.cohort e genelist para construir modelos de previsão de prognóstico. Use os seguintes 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. Use a função cindex_dis_all() no Mime para plotar o índice C de cada modelo e selecionar o modelo ideal com o índice C mais alto. Use os seguintes 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 a curva de sobrevida dos pacientes de acordo com a pontuação de risco usando um modelo específico entre diferentes conjuntos de dados e processe-o no Mime. Use os seguintes 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. Em seguida, use a função cal_AUC_ml_res() no Mime para calcular a AUC dependente do tempo prevista pelos modelos construídos. Use os seguintes 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. Use a função auc_dis_all() no Mime para plotar a AUC dependente do tempo prevista por cada modelo. Use os seguintes 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. Processe a curva ROC dependente do tempo de um modelo específico entre diferentes conjuntos de dados no Mime. Use os seguintes 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. Construção de modelos preditivos de resposta

  1. Use outra função ML.Dev.Pred.Category.Sig() em Mime com base em Example.ici e genelist para construir modelos de previsão para resposta terapêutica. Use os seguintes 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. Use a função auc_vis_category_all() no Mime para plotar a AUC prevista por cada modelo. Use os seguintes códigos:
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Processe a curva ROC do modelo específico entre diferentes conjuntos de dados no Mime. Use os seguintes 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. Seleção de recursos principais

  1. Use a função ML.Corefeature.Prog.Screen() em Mime com base em Example.cohort e genelist para identificar genes críticos. Use os seguintes 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. Os genes de saída estão intimamente associados ao resultado do paciente e uma frequência mais alta de variáveis rastreadas significa que essas são características centrais (as variáveis filtradas com mais frequência são definidas como características principais). Use a função core_feature_rank() em Mime para traçar a classificação de genes filtrados por diferentes métodos. Use os seguintes códigos:
    core_feature_rank(res.feature.all, top=20)

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Resultados

O genelist e o Example.cohort, incluindo uma coorte de treinamento e uma coorte de validação, foram usados para construir modelos prognósticos integrando 10 algoritmos de aprendizado de máquina no Mime. Entre os 117 modelos de prognóstico construídos por Mime, o modelo combinado StepCox [forward] + plsRcox (SPCOM) teve o maior índice C entre todas as coortes, indicando seu excelente desempenho (Figura 1A). Os pacientes foram separados em grupos de alto e baixo risco de acordo com a mediana d...

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Discussão

Neste estudo, fornecemos uma descrição detalhada de como usar o pacote Mime para desenvolver modelos preditivos de aprendizado de máquina robustos e poderosos para dados transcriptômicos. Em estudos anteriores, os pesquisadores muitas vezes lutaram para selecionar o algoritmo de modelo preditivo apropriado com base nas características específicas de seus dados de sequenciamento13,14. Além disso, para pesquisadores sem formação em...

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Divulgações

Não há conflitos de interesse declarados.

Agradecimentos

Agradecemos a todos os participantes e pesquisadores envolvidos na produção dos dados.

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Materiais

Lista de materiais utilizados neste artigo
NomeEmpresaNúmero de catálogoComentários
Nome do pacoteVersãoSoftware
enredo0.1.10Estúdio R
BART2.9.4Estúdio R
Boruta8.0.0Estúdio R
classe de câncer1.38.0Estúdio R
acento circunflexo6.0-89Estúdio R
Ckmeans.1d.dp4.3.5Estúdio R
compararC1.3.2Estúdio R
Mapa de calor complexo2.15.1Estúdio R
Composições2.0-4Estúdio R
data.table1.14.0Estúdio R
doParallel1.0.16Estúdio R
dplyr1.1.3Estúdio R
e10711.7-7Estúdio R
plotador florestal1.1.0Estúdio R
futuro1.21.0Estúdio R
Gbm2.1.8.1Estúdio R
bom jogo quebrado0.1.1Estúdio R
ggplot23.4.1Estúdio R
bom jogo pubr0.4.0Estúdio R
bom jogo2.9Estúdio R
boa sorte na rede4.1-2Estúdio R
grade4.1.3Estúdio R
gradeExtra2.3Estúdio R
GSEABase1.54.0Estúdio R
GSVA1.40.1Estúdio R
Hmisc5.1-1Estúdio R
kknn1.3.1Estúdio R
knitr1.42Estúdio R
magrittr2.7.2Estúdio R
Matriz1.5-4Estúdio R
meta5.2-0Estúdio R
Ferramentas Diversas0.6-28Estúdio R
mixOmics6.18.1Estúdio R
ferramentas de mistura1.2.0Estúdio R
pbapply1.4-3Estúdio R
por favorRcox1.7.7Estúdio R
Proc1.18.0Estúdio R
R4.1.3Estúdio R
randomForestSRC4.6-14Estúdio R
leitor1.4.0Estúdio R
Receitas0.1.17Estúdio R
remodelar 21.4.4Estúdio R
rmarkdown2.8Estúdio R
ROCit2.1.1Estúdio R
ROCR1.0-11Estúdio R
balança1.2.1Estúdio R
pardal1.0.3Estúdio R
longarina1.5.0Estúdio R
superpc1.12Estúdio R
sobrevivência3.3-1Estúdio R
survivalROC1.0.3Estúdio R
sobrevivênciasvm0.0.5Estúdio R
SVA3.40.0Estúdio R
teste isso3.1.0Estúdio R
Tibble3.2.1Estúdio R
Tirão1.3.0Estúdio R
arrumado1.3.1Estúdio R
UpSetR1.4.0Estúdio R
Viridis0.6.1Estúdio R

Referências

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

Acesso restrito. Inicie sessão ou comece um teste para visualizar este conteúdo.

Reimpressões e permissões

Etiquetas

Construção de Modelo PreditivoSeleção de CaracterísticasVisualização de DadosSequenciamento TranscricionalModelagem de PrognósticoPredição de Resposta TerapêuticaAnálise de SobrevivênciaIdentificação de Genes CentraisMétricas de Desempenho do Modelo