Для просмотра этого контента требуется подписка на JoVE. Войдите или начните свой бесплатный пробный период.

Методическая статья

Создание и визуализация моделей с помощью фреймворка машинного обучения на основе MIME

3.8K просмотров

DOI:

10.3791/68553

22 июля 2025 г.

* These authors contributed equally

В этой статье

Краткое содержание

Mime — это гибкая вычислительная среда для создания интеграционной модели на основе машинного обучения с элегантной производительностью. В этой статье мы представляем подробную пошаговую процедуру разработки прогностических моделей с высокой точностью, используя сложные наборы данных для выявления критически важных генов, связанных с прогрессированием заболевания, исходами пациента и терапевтическим ответом.

Аннотация

Широко распространенная технология высокопроизводительного секвенирования значительно улучшила наше понимание биологии и гетерогенности рака. Алгоритмы машинного обучения на основе транскрипционных данных стали жизненно важными для прогнозирования прогноза пациентов и клинических реакций. Несмотря на достижения в области алгоритмов машинного обучения, платформа с открытым исходным кодом, которая включает в себя самые сложные алгоритмы машинного обучения на транскрипционных данных, по-прежнему отсутствует. Чтобы восполнить этот пробел, мы разработали Mime, универсальную среду машинного обучения, предназначенную для улучшения построения и визуализации прогностических моделей клинических характеристик и сигнатур генов. Интегрируя различные наборы данных и используя самые передовые методы выбора признаков, Mime решает важнейшие проблемы в клиническом прогнозировании. Он выполняет три основные функции, включая построение модели, выбор элементов и визуализацию данных. Построение моделей включает в себя ряд алгоритмов машинного обучения, включая, помимо прочего, деревья решений, методы опорных векторов и ансамблевые методы, что позволяет исследователям выбирать наиболее подходящий подход для своего конкретного анализа. При выборе признаков используются передовые алгоритмы, такие как рекурсивное устранение признаков и регрессия LASSO, чтобы упорядочить набор данных и сосредоточиться на наиболее информативных функциях. Фреймворк поддерживает настраиваемую настройку параметров с помощью методов перекрестной проверки, оптимизируя производительность модели и снижая риски переобучения. Инструменты визуализации, интегрированные в Mime, позволяют исследователям эффективно интерпретировать результаты модели, предоставляя графическое представление важности функций и прогнозные показатели эффективности. В этой рукописи мы предоставляем подробное руководство по пошаговым процедурам этой универсальной платформы машинного обучения.

Введение

Широкое внедрение технологий высокопроизводительного секвенирования существенно повлияло на наше понимание биологии и гетерогенности рака1. Этот революционный прогресс в биотехнологии не только углубил наши научные знания, но и произвел революцию в области медицинских исследований. Позволяя ученым быстро и точно секвенировать большие объемы генетического материала, высокопроизводительное секвенирование ускорило открытие новых генов, мутаций и биологических путей. Растущий объем исследований определил конкретные молекулярные сигнатуры, связанные с прогрессированием заболевания, прогнозом пациента и терапевтической реакцией на основе данных секвенирования 2,3,4. Эти специфические сигнатуры предлагают всеобъемлющий ландшафт для понимания транскрипционной регуляторной сети, лежащей в основе биологии опухоли, включая происхождение опухоли, дифференцировку, миграцию и резистентность к лечению5. Эти особенности часто разнообразны и разнообразны, охватывают множество аспектов, а не ограничиваются одним экспонатом. Это затрудняет скрининг и идентификацию конкретных генов, тесно связанных с заболеванием. Таким образом, существует острая потребность в разумных вычислительных стратегиях для скрининга ключевых генов, участвующих в заболевании.

Машинное обучение (ML) — это отрасль искусственного интеллекта, которая фокусируется на создании систем, которые могут обучаться на сложных наборах данных, выявлять закономерности и разрабатывать прогностическую модель с высокой точностью, чтобы обеспечить основу для принятия решений6. В последнее время разработка моделей на основе машинного обучения на основе данных транскриптома для прогнозирования исходов лечения пациентов или диагностики заболеваний быстро продвигается вперед при различных заболеваниях 7,8,9,10. Производительность этих моделей часто сильно различается из-за различных наборов данных и алгоритмов, используемых для обучения. Выбор оптимальной модели для последующих экспериментов и клинических применений стал насущной проблемой. Жизнеспособный подход заключается в сравнении производительности различных моделей и выборе наиболее перспективной из них для дальнейшего использования 7,11. Кроме того, разнообразие параметров и форматов результатов, поддерживаемых различными вычислительными фреймворками, создает значительные проблемы для сравнительного анализа. Тем не менее, в настоящее время не существует программного обеспечения, которое интегрирует передовые алгоритмы машинного обучения для сравнения сильных и слабых сторон различных моделей и упрощения процесса выбора параметров, облегчая доступ для пользователей. Таким образом, существует потребность в разработке удобного для пользователя программного обеспечения, которое может облегчить интеграцию транскрипционных данных с различными алгоритмами машинного обучения, а также устранить текущие ограничения выбора биомаркеров и интерпретации моделей. Такие достижения значительно расширят наши возможности по предоставлению ценной информации в текущих областях исследований и, в конечном итоге, улучшат результаты лечения пациентов.

В этом исследовании мы разработали пакет R с открытым исходным кодом под названием Mime12, который демонстрирует высокую производительность при работе с наборами данных и направлен на оптимизацию интеграции наборов данных транскриптома с различными алгоритмами машинного обучения, тем самым упрощая связанные с этим процессы. Для выявления потенциальных кандидатов на основе крупномасштабных данных транскриптома и разработки оптимальных моделей Mime предлагает четыре прикладные функции: оптимальную модель прогноза, построенную путем интеграции 10 алгоритмов машинного обучения; модель двоичного отклика, построенная с использованием семи алгоритмов машинного обучения; основные особенности, связанные с прогнозированием, идентифицированные с помощью восьми алгоритмов машинного обучения; и визуализация производительности каждой модели.

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Протокол

ПРИМЕЧАНИЕ: Все учебные пособия для этого исследования выполняются на платформе Linux с использованием программного обеспечения R. Версия пакета R, используемого в этом протоколе, указана в Таблице материалов. Каждый шаг, необходимый для анализа, показан ниже, а подробный протокол также можно получить на GitHub (https://github.com/l-magnificence/Mime). Пользователи, столкнувшиеся с проблемами с Mime, могут посетить страницу проблем GitHub (https://github.com/l-magnificence/Mime/issues), чтобы оставить отзыв.

1. Подготовка мима и примера набора данных

  1. Установите версию Mime для разработки с GitHub, используя код ниже:
    devtools::install_github("l-magnificence/Mime")
  2. Подготовка нескольких когорт, содержащих данные транскрипционного секвенирования с информацией о выживаемости или клиническом ответе на терапию. Здесь для запуска Mime использовались два примера данных (Example.cohort и Example.ici). Example.cohort содержит два набора данных по глиоме; каждый случайным образом выбрал 100 образцов из баз данных TCGA и CGGA соответственно. В то время как Example.ici содержит случайно выбранные 100 образцов предварительной обработки ингибиторами иммунных контрольных точек из предыдущего исследования12. Все данные примера можно получить с GitHub (https://github.com/l-magnificence/Mime/tree/main/External%20data)
    1. Включите несколько наборов данных для создания прогностических моделей для прогнозирования в Example.cohort. Первый идентификатор столбца в каждом наборе данных — это идентификатор образца, второй и третий столбцы OS.time и OS в каждом наборе данных — время выживания и статус пациентов; Другие столбцы в каждом наборе данных представляют собой уровень экспрессии генов, масштабированный с помощью log2(x+1). Dataset1 — это обучающий набор данных, а другие наборы данных — для проверки. Используйте следующий формат для 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. Включите несколько наборов данных для создания прогнозных моделей для ответа в Example.ici. Первый идентификатор столбца в каждом наборе данных — это идентификатор образца, второй столбец Var в каждом наборе данных — это терапевтический ответ пациентов (N: Нет ответа; Y: response), а другие столбцы в каждом наборе данных представляют собой уровень экспрессии генов, масштабированный с помощью log2(x+1). Обучение — это обучающий набор данных, в то время как другие наборы данных предназначены для проверки. Используйте следующий формат для 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. Подготовьте набор генов. Здесь для запуска Mime был использован набор генов (генолог), связанный с передачей сигналов Wnt/β-катенина из MSigDB. Используйте следующий формат для 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. Построение прогностических моделей для прогнозирования

  1. Используйте функцию ML.Dev.Prog.Sig() в Mime на основе Example.cohort и genelist для построения моделей прогнозирования прогноза. Используйте следующие коды:
    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. Используйте функцию cindex_dis_all() в Mime для построения C-индекса каждой модели и выбора оптимальной модели с самым высоким C-индексом. Используйте следующие коды:
    cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
    order =names (list_train_vali_Data ),width = 0.35 )
  3. Рассчитайте кривую выживаемости пациентов в соответствии с оценкой риска, используя конкретную модель среди различных наборов данных, и обработайте ее в MIME. Используйте следующие коды:
    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. Затем используйте функцию cal_AUC_ml_res() в Mime для вычисления зависящей от времени AUC, предсказанной построенными моделями. Используйте следующие коды:
    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. Используйте функцию auc_dis_all() в Mime для построения нестационарной AUC, прогнозируемой каждой моделью. Используйте следующие коды:
    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. Обрабатывайте нестационарную кривую ROC конкретной модели среди различных наборов данных в Mime. Используйте следующие коды:
    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. Построение предиктивных моделей реагирования

  1. Используйте другую функцию ML.Dev.Pred.Category.Sig() в Mime на основе Example.ici и genelist для построения моделей прогнозирования терапевтического ответа. Используйте следующие коды:
    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. Используйте функцию auc_vis_category_all() в Mime для построения графика AUC, прогнозируемой каждой моделью. Используйте следующие коды:
    auc_vis_category_all(res.ici,dataset = c("training","validation"),
    order= c("training","validation"))
  3. Обработка ROC-кривой конкретной модели среди различных наборов данных в MIME. Используйте следующие коды:
    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. Выбор основных функций

  1. Используйте функцию ML.Corefeature.Prog.Screen() в Mime на основе Example.cohort и genelist для определения критических генов. Используйте следующие коды:
    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. Выходные гены тесно связаны с исходом лечения пациента, и более высокая частота скрининга переменных означает, что они являются основными признаками (наиболее часто фильтруемые переменные определяются как основные признаки). Используйте функцию core_feature_rank() в Mime для построения графика ранга генов, отфильтрованных различными методами. Используйте следующие коды:
    core_feature_rank(res.feature.all, top=20)

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Результаты

Генелист и когорта Example.cohort, включающие одну обучающую когорту и одну когорту валидационной проверки, были использованы для построения прогностических моделей путем интеграции 10 алгоритмов машинного обучения в Mime. Среди 117 моделей прогноза, построенных Mime, комбинированная модель StepCox[forward] + plsRcox (SPCOM) имела самый высокий C-индекс среди всех когорт, что указывает на ее выдающуюся производительность (рис. 1A). Пациенты были далее разделены на группы высокого и низкого р...

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Обсуждение

В этом исследовании мы подробно описываем, как использовать пакет Mime для разработки надежных и мощных прогностических моделей машинного обучения для транскриптомных данных. В предыдущих исследованиях исследователи часто испытывали трудности с выбором подходящего алгоритма прогностической модели, основанного на конкретных характеристикахданных секвенирования. Кроме того, для исследователей без образования в области компьютерных...

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Раскрытие информации

Конфликт интересов не декларируется.

Благодарности

Мы благодарим всех участников и исследователей, причастных к производству данных.

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Материалы

Список материалов, использованных в этой статье
ИмяКомпанияКаталожный номерКомментарии
Наименование пакетаВерсияПрограммное обеспечение
Сюжет0.1.10Студия R
БАРТ2.9.4Студия R
Борута8.0.0Студия R
Класс рака1.38.0Студия R
знак вставки6.0-89Студия R
Ckmeans.1d.dp4.3.5Студия R
compareC1.3.2Студия R
ComplexТепловая карта2.15.1Студия R
Композиции2.0-4Студия R
data.table1.14.0Студия R
doParallel1.0.16Студия R
Дплир1.1.3Студия R
Е10711.7-7Студия R
лесоукладчик1.1.0Студия R
будущее1.21.0Студия R
ГБМ2.1.8.1Студия R
ggbreak0.1.1Студия R
ggplot23.4.1Студия R
ggpubr0.4.0Студия R
ГГСЦИ2.9Студия R
glmnet4.1-2Студия R
сетка4.1.3Студия R
сеткаЭкстра2.3Студия R
GSEABase1.54.0Студия R
GSVA1.40.1Студия R
Хмиск5.1-1Студия R
ККНН1.3.1Студия R
Трикотаж1.42Студия R
Магриттр2.7.2Студия R
Матрица1.5-4Студия R
мета5.2-0Студия R
Инструменты miscTools0.6-28Студия R
mixOmics6.18.1Студия R
Mixtools1.2.0Студия R
pbapply1.4-3Студия R
plsRcox1.7.7Студия R
пРПЦ1.18.0Студия R
R4.1.3Студия R
randomForestSRC4.6-14Студия R
Читатель1.4.0Студия R
Рецепты0.1.17Студия R
Изменить форму21.4.4Студия R
Уценить2.8Студия R
ROCit2.1.1Студия R
ROCR1.0-11Студия R
весы1.2.1Студия R
воробей1.0.3Студия R
Стрингер1.5.0Студия R
Суперпк1.12Студия R
выживание3.3-1Студия R
выживаниеROC1.0.3Студия R
ВыживаниеВМ0.0.5Студия R
SVA3.40.0Студия R
Testthat3.1.0Студия R
тиббл3.2.1Студия R
Тидыр1.3.0Студия R
Аккуратная вселенная1.3.1Студия R
UpSetR1.4.0Студия R
Виридис0.6.1Студия R

Ссылки

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

Доступ ограничен. Войдите в систему или начните пробный период, чтобы просмотреть этот контент.

Перепечатки и разрешения

Теги

Построение прогностической моделиотбор признаковвизуализация данныхтранскрипционное секвенированиемоделирование прогнозапредсказание терапевтического ответаанализ выживаемостиидентификация ключевых геновметрики эффективности модели