Mime は、機械学習ベースの統合モデルをエレガントなパフォーマンスで構築するための柔軟な計算フレームワークです。ここでは、複雑なデータセットを活用して、疾患の進行、患者の転帰、治療反応に関連する重要な遺伝子を特定し、高精度の予測モデルを開発するための詳細なステップバイステップの手順を提供します。
このコンテンツを表示するには、JoVEへの購読が必要です。 または、無料トライアルをお申し込みください。
方法論記事
* These authors contributed equally
Mime は、機械学習ベースの統合モデルをエレガントなパフォーマンスで構築するための柔軟な計算フレームワークです。ここでは、複雑なデータセットを活用して、疾患の進行、患者の転帰、治療反応に関連する重要な遺伝子を特定し、高精度の予測モデルを開発するための詳細なステップバイステップの手順を提供します。
広く普及したハイスループットシーケンシング技術により、生物学とがんの不均一性に関する理解が大幅に向上しました。転写データに対する機械学習アルゴリズムは、患者の予後と臨床反応を予測するために不可欠になっています。機械学習アルゴリズムの進歩にもかかわらず、文字起こしデータに最も洗練された機械学習アルゴリズムを組み込んだオープンソースのプラットフォームは、まだ存在していません。このギャップに対処するために、私たちは、臨床的特徴と遺伝子シグネチャーの予測モデルの構築と視覚化を強化するための汎用性の高い機械学習フレームワークであるMimeを開発しました。Mime は、多様なデータセットを統合し、最先端の特徴選択技術を採用することで、臨床予測における重要な課題に対処します。モデルの構築、特徴の選択、データの視覚化など、3つの主要な機能を提供します。モデル構築には、決定木、サポートベクターマシン、アンサンブル法など、さまざまな機械学習アルゴリズムが含まれており、研究者は特定の分析に最適なアプローチを選択できます。特徴選択では、再帰的特徴消去やLASSO回帰などの高度なアルゴリズムを利用して、データセットを合理化し、最も有益な特徴に焦点を当てます。このフレームワークは、クロスバリデーション手法によるカスタマイズ可能なパラメーター調整をサポートし、モデルのパフォーマンスを最適化しながら、オーバーフィットのリスクを軽減します。Mimeに統合された可視化ツールにより、研究者はモデルの結果を効率的に解釈し、特徴の重要度と予測パフォーマンスメトリクスをグラフィカルに表現することができます。この原稿では、この汎用性の高い機械学習フレームワークの段階的な手順に関する詳細なチュートリアルを提供します。
ハイスループットシーケンシング技術の広範な採用は、生物学とがんの不均一性1に対する私たちの理解に大きな影響を与えています。このバイオテクノロジーの画期的な進歩は、私たちの科学的知識を深めただけでなく、医学研究の分野にも革命をもたらしました。科学者が大量の遺伝物質のシーケンシングを迅速かつ正確に行えるようになったことで、ハイスループットシーケンシングは新しい遺伝子、突然変異、生物学的経路の発見を加速させました。シーケンシングデータ2,3,4から、疾患の進行、患者の予後、および治療反応性に関連する特定の分子シグネチャーが明らかになる研究が増えています。これらの特異的なシグネチャーは、腫瘍の起源、分化、遊走、治療抵抗性など、腫瘍生物学の根底にある転写制御ネットワークを理解するための包括的な展望を提供します5。これらの特徴は、多くの場合、多様で多様であり、単一の展示に限定されるのではなく、複数の側面を包含しています。これにより、疾患に強く関連する特定の遺伝子をスクリーニングして特定することが困難になります。したがって、疾患に関与する重要な遺伝子をスクリーニングするための賢明な計算戦略が緊急に必要とされています。
機械学習(ML)は、複雑なデータセットから学習し、パターンを特定し、高精度の予測モデルを開発して意思決定の参考となるシステムの構築に焦点を当てた人工知能の一分野です6。近年、トランスクリプトームデータから患者の転帰を予測したり、疾患を診断したりするための機械学習ベースのモデルの開発が、さまざまな疾患で急速に進んでいます7,8,9,10。これらのモデルのパフォーマンスは、多くの場合、トレーニングに使用されるデータセットとアルゴリズムが異なるため、大きく異なります。その後の実験や臨床応用に最適なモデルを選択することは、喫緊の課題として浮上しています。実行可能なアプローチには、さまざまなモデルのパフォーマンスを比較し、さらに利用するために最も有望なモデルを選択することが含まれます7,11。さらに、さまざまなコンピューティングフレームワークでサポートされているパラメータと結果形式の多様性は、比較分析に大きな課題をもたらします。しかし、現在のところ、最先端の機械学習アルゴリズムを統合して、異なるモデルの長所と短所を比較し、パラメータ選択プロセスを簡素化することで、ユーザーがアクセスしやすくするソフトウェアはありません。したがって、転写データと多様な機械学習アルゴリズムの統合を容易にすると同時に、バイオマーカーの選択とモデル解釈の現在の制限にも対処できるユーザーフレンドリーなソフトウェアの開発が必要です。このような進歩により、現在の研究分野に貴重な洞察を提供する能力が大幅に拡大し、最終的には患者の転帰が改善されます。
この研究では、Mime12という名前のオープンソースのRパッケージを開発しました。これは、データセット間で堅牢なパフォーマンスを示し、トランスクリプトームデータセットとさまざまな機械学習アルゴリズムとの統合を合理化し、それによって関連するプロセスを簡素化することを目的としています。大規模なトランスクリプトームデータから潜在的な候補を特定し、最適なモデルを開発するために、Mimeは4つのアプリケーション機能を提供します。7つの機械学習アルゴリズムを使用して構築されたバイナリ応答モデル。8つの機械学習アルゴリズムを使用して特定された予後に関連する主要な特徴。各モデルのパフォーマンスの視覚化。
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
注:このスタディのチュートリアルはすべて、Rソフトウェアを使用してLinuxプラットフォームで実行されます。このプロトコルで使用される R パッケージのバージョンは、 資料の表に記載されています。解析に必要な各ステップを以下に示し、詳細なプロトコールはGitHub(https://github.com/l-magnificence/Mime)でも入手できます。Mime で問題が発生した場合は、GitHub の問題ページ (https://github.com/l-magnificence/Mime/issues) にアクセスしてフィードバックを提供できます。
1. MIMEとサンプルデータセットの準備
devtools::install_github("l-magnificence/Mime")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 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 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. 予後予測モデルの構築
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 ) cindex_dis_all (res,validate_set = names (list_train_vali_Data )[-1 ],
order =names (list_train_vali_Data ),width = 0.35 ) 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 ) 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" ) 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) 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. 応答の予測モデルの構築
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
) auc_vis_category_all(res.ici,dataset = c("training","validation"),
order= c("training","validation")) 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. コア機能の選択
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 ) core_feature_rank(res.feature.all, top=20)アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
genelistとExample.cohort(1つのトレーニングコホートと1つの検証コホートを含む)を使用して、Mimeに10の機械学習アルゴリズムを統合して予後モデルを構築しました。Mimeが構築した117の予後モデルのうち、StepCox[forward] + plsRcox combined model(SPCOM)は、全コホートの中で最も高いC指数を示し、優れた性能を示しました(図1A)。患者はさらに、SPCOMによって計算されたリスクスコアの中央値に従って、高リスクグループと低リスクグループに分けられました。興味深いことに、高リスクスコアの患者は、すべてのコホートで転帰が有意に悪かった(図1B)。注目すべきは、SPCOMが予測した1年間のAUCが、すべてのコホートでAUCの平均が最も高い1位にランクされたことです(図1C、D)。これらの結果から、MIMEベースの機械学習フレームワークにより、提供された遺伝子セットと...
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
この研究では、Mime パッケージを使用して、トランスクリプトーム データの堅牢で強力な機械学習予測モデルを開発する方法について詳しく説明します。以前の研究では、研究者は、シーケンシングデータの特定の特性に基づいて適切な予測モデルアルゴリズムを選択するのに苦労することがよくありました13,14。さらに、コンピュータサイエンスのバックグラウンドを持たない研究者にとって、機械学習環境を安定させ、適切なパラメータを選択し、モデルを同時にデプロイすることはある程度の困難があります15。この問題に対処するために、10 個の機械学習予後モデル アルゴリズム、7 個のバイナリ応答機械学習アルゴリズム、および予後に関連する 8 個のコア特徴選択アルゴリズムを MIME パッケージに統合しました。同じ学習セットで異なる機械学習アルゴリズムの予測パフォーマンスを包括的に比較することで、研究者は最もパフォーマンスの高いモデルを選...
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
利益相反は宣言されていません。
データ作成に携わったすべての参加者と研究者に感謝します。
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。
| 名前 | 会社 | カタログ番号 | コメント |
|---|---|---|---|
| パッケージ名 | バージョン | ソフトウェア | |
| アプロット | 0.1.10 | Rスタジオ | |
| バート | 2.9.4 | Rスタジオ | |
| ボルタ | 8.0.0 | Rスタジオ | |
| がんクラス | 1.38.0 | Rスタジオ | |
| キャレット | 6.0-89 | Rスタジオ | |
| Ckmeans.1d.dp | 4.3.5 | Rスタジオ | |
| 比較C | 1.3.2 | Rスタジオ | |
| コンプレックスヒートマップ | 2.15.1 | Rスタジオ | |
| 組成 | 2.0-4 | Rスタジオ | |
| データ.テーブル | 1.14.0 | Rスタジオ | |
| doパラレル | 1.0.16 | Rスタジオ | |
| dplyr | 1.1.3 | Rスタジオ | |
| 1071年末 | 1.7-7 | Rスタジオ | |
| フォレストプロータ | 1.1.0 | Rスタジオ | |
| 未来 | 1.21.0 | Rスタジオ | |
| GBMの | 2.1.8.1 | Rスタジオ | |
| グブレイク | 0.1.1 | Rスタジオ | |
| ggplot2 | 3.4.1 | Rスタジオ | |
| ggpubr | 0.4.0 | Rスタジオ | |
| ggsci | 2.9 | Rスタジオ | |
| GLMNET | 4.1-2 | Rスタジオ | |
| グリッド | 4.1.3 | Rスタジオ | |
| グリッドエクストラ | 2.3 | Rスタジオ | |
| GSEAベーゼ | 1.54.0 | Rスタジオ | |
| GSVAの | 1.40.1 | Rスタジオ | |
| ヒミスク | 5.1-1 | Rスタジオ | |
| kknn | 1.3.1 | Rスタジオ | |
| ニットル | 1.42 | Rスタジオ | |
| マグリットル | 2.7.2 | Rスタジオ | |
| 行列 | 1.5-4 | Rスタジオ | |
| メタ | 5.2-0 | Rスタジオ | |
| その他のツール | 0.6-28 | Rスタジオ | |
| ミックスオミクス | 6.18.1 | Rスタジオ | |
| ミックスツール | 1.2.0 | Rスタジオ | |
| pbapply | 1.4-3 | Rスタジオ | |
| plsRcox | 1.7.7 | Rスタジオ | |
| pROCの | 1.18.0 | Rスタジオ | |
| R | 4.1.3 | Rスタジオ | |
| ランダムフォレストSRC | 4.6-14 | Rスタジオ | |
| リーダー | 1.4.0 | Rスタジオ | |
| レシピ | 0.1.17 | Rスタジオ | |
| 形状変更2 | 1.4.4 | Rスタジオ | |
| rマークダウン | 2.8 | Rスタジオ | |
| ROCit | 2.1.1 | Rスタジオ | |
| ROCRの | 1.0-11 | Rスタジオ | |
| 秤 | 1.2.1 | Rスタジオ | |
| 雀 | 1.0.3 | Rスタジオ | |
| ストリンガー | 1.5.0 | Rスタジオ | |
| スーパーPC | 1.12 | Rスタジオ | |
| 生存 | 3.3-1 | Rスタジオ | |
| 生存ROC | 1.0.3 | Rスタジオ | |
| サバイバルSVM | 0.0.5 | Rスタジオ | |
| SVA | 3.40.0 | Rスタジオ | |
| testを | 3.1.0 | Rスタジオ | |
| ティブル | 3.2.1 | Rスタジオ | |
| ティディル | 1.3.0 | Rスタジオ | |
| ティディバース | 1.3.1 | Rスタジオ | |
| アップセットR | 1.4.0 | Rスタジオ | |
| ビリディス | 0.6.1 | Rスタジオ |
アクセスが制限されています。このコンテンツを表示するにはログインするか、トライアルを開始してください。