机器学习在癌症分子亚型分类中的应用
学习笔记:机器学习在癌症分子亚型分类中的应用——Cancer Cell 研究解析
1. 文章基本信息
- 标题:Classification of non-TCGA cancer samples to TCGA molecular subtypes using machine learning
- 发表期刊:Cancer Cell
- 发表时间:2025 年,第 53 卷,第 2 期
- 研究目标:
- 开发机器学习分类器,用于将非 TCGA 样本映射到TCGA 定义的分子亚型。
- 支持多组学数据整合(mRNA、DNA 甲基化、CNV、突变、miRNA),提高分类准确度。
- 提供标准化工具(Docker 容器化),使研究和临床应用更便捷。
2. 文章的主要行文思路
(1) 引言(Introduction)
- 介绍癌症传统分类方法(基于组织学和解剖学分类)的局限性。
- 介绍 TCGA 数据集在癌症亚型研究中的重要性。
- 说明当前分子亚型分类方法在非 TCGA 样本上的应用挑战。
- 提出研究目标:使用机器学习方法开发分类器,将非 TCGA 样本归类到 TCGA 定义的亚型。
(2) 方法(Methods)
- 数据来源:使用 TCGA 的多组学数据,包括 mRNA、DNA 甲基化、CNV、miRNA、突变数据。
- 机器学习方法:
- 使用五种 ML 方法(AKLIMATE、CloudForest、SKGrid、JADBio、subSCOPE)。
- 训练 8,791 个 TCGA 样本,涵盖 26 种癌症队列和 106 个分子亚型。
- 使用交叉验证评估模型性能,最终选出 737 个最优分类器。
- 外部验证:
- 采用 METABRIC 和 AURORA 乳腺癌数据集,测试模型的泛化能力。
(3) 结果(Results)
-
分类模型构建与性能评估:
- 统计不同数据类型对分类的贡献。
- 发现 mRNA 在大多数癌症亚型分类中起主导作用。
-
外部数据集验证:
- 评估不同 ML 方法在不同测序平台(RNA-seq vs. 微阵列)上的稳健性。
-
模型泛化能力:
- 发现 70 个样本足以预测分类器的最终性能。
- 研究不同癌症亚型对单一数据类型的依赖程度。
(4) 讨论(Discussion)
- TCGA 亚型分类的临床应用潜力:
- 预测新样本时,可提供标准化的癌症分子亚型信息。
- 未来可用于开发简化的癌症检测面板。
- 研究局限性:
- TCGA 数据可能未涵盖所有癌症亚型。
- 不同测序平台可能影响模型泛化能力。
(5) 结论(Conclusion)
- 研究提供了一个通用的分类框架,可用于非 TCGA 样本的 TCGA 亚型分类。
- 公开 737 个高性能分类器,可用于癌症检测和精准医学研究。
3. 文章的主要贡献
(1) 机器学习驱动的癌症分型
- 使用 5 种机器学习方法 训练 TCGA 数据:
- AKLIMATE
- CloudForest
- SKGrid
- JADBio
- subSCOPE
- 训练 412,585 个分类模型,最终筛选出 737 个最优模型。
- 提供 Docker 版本,保证可复现性和易用性。
(2) 多组学数据整合
- 研究分析了不同数据类型的贡献:
- mRNA 对大多数癌症亚型分类最关键。
- DNA 甲基化 在 LGG、GBM 等脑肿瘤分类中尤为重要。
- 突变数据(Mutations) 适用于黑色素瘤(SKCM)。
- 整合多种组学数据可提高分类准确度。
(3) 临床应用价值
- 提供 TCGA 亚型分类,提高癌症精准医学能力:
- 不同 TCGA 亚型的患者具有不同的预后和治疗策略。
- 例如:CMS1 结直肠癌(高 MSI-H)对 PD-1 免疫治疗敏感,而 CMS4 免疫排斥明显。
- 帮助医生和研究人员在新数据集中分类样本,指导精准治疗。
(4) 公开可用的工具
- 提供 Docker 容器,简化安装和使用。
- GitHub 代码公开,提高可复现性。
https://github.com/NCICCGPO/gdan-tmp-models
3. 作者的主要单位
单位 | 机构类型 | 研究重点 | 是否与临床相关 |
---|---|---|---|
Oregon Health & Science University (OHSU) | 医学中心 | 癌症基因组学、精准医学 | ✅ 高度相关 |
University of California, San Francisco (UCSF) | 医学中心 | 肿瘤学、精准医学 | ✅ 高度相关 |
Dana-Farber Cancer Institute (DFCI) | 癌症中心 | 肿瘤学、临床研究 | ✅ 高度相关 |
MD Anderson Cancer Center (UTMDACC) | 癌症医院 | 癌症治疗、精准医学 | ✅ 高度相关 |
National Cancer Institute (NCI) | 政府研究机构 | 癌症基因组、精准医学 | ✅ 高度相关 |
The Broad Institute (MIT & Harvard) | 研究机构 | 癌症基因组、药物开发 | ✅ 高度相关 |
University of California, Santa Cruz (UCSC) | 大学 | 计算生物学、生物信息学 | ❌ 主要是计算研究 |
King Abdullah University of Science and Technology (KAUST) | 大学 | 计算机科学、机器学习 | ❌ 主要是算法,不直接涉及临床 |
📌 结论:
- 该研究团队涵盖了癌症精准医学、基因组学、计算生物学、机器学习等多个领域,保证了该研究的高临床相关性和计算分析的前沿性。
4. 如何使用 Docker 进行数据处理
(1) 安装 Docker
首先,确保服务器已安装 Docker:
docker --version # 确认安装
如果未安装,可以运行以下命令安装:
sudo apt update
sudo apt install docker.io -y
sudo systemctl start docker
sudo systemctl enable docker
(2) 克隆 GitHub 仓库
git clone https://github.com/NCICCGPO/gdan-tmp-models.git
cd gdan-tmp-models
(3) 拉取 Docker 镜像
docker pull nciccpo/gdan-tmp-aklimate:latest
docker pull nciccpo/gdan-tmp-cloudforest:latest
docker pull nciccpo/gdan-tmp-skgrid:latest
docker pull nciccpo/gdan-tmp-jadbio:latest
docker pull nciccpo/gdan-tmp-subscope:latest
(4) 准备输入数据
mkdir -p ~/gdan-input
mkdir -p ~/gdan-config
将**RNA-seq 表达数据(FPKM/TPM)**放入 ~/gdan-input/
目录,并创建 YAML 配置文件 ~/gdan-config/config.yml
:
model: aklimate
input_data:mRNA: /data/mRNA_expression.csv
output:results: /data/prediction_results.csv
(5) 运行 Docker 进行 TCGA 亚型预测
docker run --rm --cpus=64 \-v ~/gdan-input:/data \-v ~/gdan-config:/config \nciccpo/gdan-tmp-aklimate:latest /config/config.yml
📌 参数解释
--cpus=64
:使用 64 核 CPU(可根据服务器性能调整)。-v ~/gdan-input:/data
:映射输入数据目录到/data
。-v ~/gdan-config:/config
:映射 YAML 配置文件目录到/config
。
(6) 查看预测结果
ls ~/gdan-input
cat ~/gdan-input/prediction_results.txt
或者:
import pandas as pd
df = pd.read_csv("~/gdan-input/prediction_results.csv")
print(df.head())
5. 结果解读
示例结果:
Sample_ID Predicted_TCGA_Subtype Confidence_Score
Sample_001 BRCA_LuminalA 0.95
Sample_002 LGG_IDH_Mutant 0.87
Sample_003 SKCM_BRAF_Mutant 0.92
📌 解读
Predicted_TCGA_Subtype
:模型预测的 TCGA 亚型Confidence_Score
(0-1):置信度,越高表示分类越可靠- 如果置信度低(如 <0.7),说明该样本可能更偏向其他亚型或需要额外数据支持(如 DNA 甲基化)。
6. 结论
✅ 该研究基于 TCGA 数据,提供了精准的癌症亚型分类工具
✅ 支持 RNA-seq(mRNA)数据,适用于临床研究和精准医学
✅ 使用 Docker 容器化,保证可复现性,提供 737 个高性能分类器
✅ 有助于个性化治疗,如免疫治疗和靶向治疗策略的选择
📌 下一步
- 尝试用自己的 RNA-seq 数据跑一次分析
- 如果分类结果置信度较低,可考虑添加 DNA 甲基化或突变数据
- 如有问题,可以查看 Docker 日志:
docker logs <CONTAINER_ID>
相关文章:

机器学习在癌症分子亚型分类中的应用
学习笔记:机器学习在癌症分子亚型分类中的应用——Cancer Cell 研究解析 1. 文章基本信息 标题:Classification of non-TCGA cancer samples to TCGA molecular subtypes using machine learning发表期刊:Cancer Cell发表时间:20…...

Ansible自动化部署K8s集群一 Ansible的基础使用实战
一、Ansible介绍 1.安装ansible: yum install ansible -y 2.ansible的架构图: 3.ansible四部分: inventory:ansible管理的主机信息,包括ip地址、ssh端口、账号和密码等 modules:任务均由模块完成 plugins:增加ansible的核心功能 pla…...
ZooKeeper Watcher 机制详解:从注册到回调的全过程
引言 在分布式系统中,数据的实时性和一致性是至关重要的。ZooKeeper 通过其 Watcher 机制提供了一种高效的方式来监听数据变化或事件,从而使客户端能够在数据发生变化时立即收到通知。本文将深入探讨 ZooKeeper 的 Watcher 机制,具体包括客户…...
flutter_tools/gradle Unsupported class file major version 65 问题解决
1.问题定位 使用 命令 flutter doctor --verbose 可以查看当前项目中,使用的java的版本。 [✓] Android Studio (version 2024.2)• Android Studio at /Applications/Android Studio.app/Contents• Flutter plugin can be installed from:🔨 https…...

C++设计模式 - 模板模式
一:概述 模板方法(Template Method)是一种行为型设计模式。它定义了一个算法的基本框架,并且可能是《设计模式:可复用面向对象软件的基础》一书中最常用的设计模式之一。 模板方法的核心思想很容易理解。我们需要定义一…...

mysql查缺补漏
好文推荐: 【数据库】快速理解脏读、不可重复读、幻读-CSDN博客 再探幻读!什么是幻读?为什么会产生幻读,MySQL中是怎么解决幻读的?-CSDN博客 引擎 mysql默认引擎:innodb 1.支持行锁 2.支持事务 3.支持外键 索引…...

跨越边界,大模型如何助推科技与社会的完美结合?
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 概述 2024年,大模型技术已成为人工智能领域的焦点。这不仅仅是一项技术进步,更是一次可能深刻影响社会发展方方面面的变革。大模型的交叉能否推动技术与社会的真正融合?2025年…...

哪吒闹海!SCI算法+分解组合+四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测
哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测 目录 哪吒闹海!SCI算法分解组合四模型原创对比首发!SGMD-FATA-Transformer-LSTM多变量时序预测效果一览基本介绍程序设计参考资料 效果一览…...
前端【技术方案】浏览器兼容问题(含解决方案、CSS Hacks、条件注释、特性检测、Polyfill 等)
浏览器兼容性测试工具 https://www.browserstack.com/ HTML 兼容处理 问题1 - 不支持 HTML5 新标签 旧版浏览器(主要是 IE8 及以下)不支持 HTML5 新标签(如 <header>、<nav>、<article> 等) 解决方案 引入 H…...

荣耀手机Magic3系列、Magic4系列、Magic5系列、Magic6系列、Magic7系列详情对比以及最新二手价格预测
目录 荣耀Magic系列手机详细对比 最新二手价格预测 性价比分析 总结 以下是荣耀Magic系列手机的详细对比以及最新二手价格预测: 荣耀Magic系列手机详细对比 特性荣耀Magic3系列荣耀Magic4系列荣耀Magic5系列荣耀Magic6系列荣耀Magic7系列处理器骁龙888&#x…...

后盾人JS -- 模块化开发
开发模块管理引擎 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title> </he…...

CNN卷积神经网络多变量多步预测,光伏功率预测(Matlab完整源码和数据)
代码地址:CNN卷积神经网络多变量多步预测,光伏功率预测(Matlab完整源码和数据) 标题:CNN卷积神经网络多变量多步预测,光伏功率预测 一、引言 1.1 研究背景及意义 随着全球能源危机的加剧和环保意识的提升ÿ…...
深入 JVM 虚拟机:字符串常量池演变与 intern() 方法工作原理解析
🚀 作者主页: 有来技术 🔥 开源项目: youlai-mall ︱vue3-element-admin︱youlai-boot︱vue-uniapp-template 🌺 仓库主页: GitCode︱ Gitee ︱ Github 💖 欢迎点赞 👍 收藏 ⭐评论 📝 如有错误敬请纠正! 前言 在 Java 开发中,字符串常量池(String Constant…...

单向/双向,单层/多层RNN输入输出维度问题
单向/双向,单层/多层RNN输入输出维度问题 RNN单层单向RNNRnn CellRnn 双层单向RNN单层双向RNN双层双向RNN RNN 单层单向RNN Rnn Cell 循环神经网络最原始的Simple RNN实现如下图所示: 下面写出单个时间步对应的Rnn Cell计算公式: 如果用矩阵运算视角来看待的话&…...
chromium-mojo
https://chromium.googlesource.com/chromium/src//refs/heads/main/mojo/README.md 相关类:https://zhuanlan.zhihu.com/p/426069459 Core:https://source.chromium.org/chromium/chromium/src//main:mojo/core/README.md;bpv1;bpt0 embedder:https://source.chr…...
ZooKeeper 的典型应用场景:从概念到实践
引言 在分布式系统的生态中,ZooKeeper 作为一个协调服务框架,扮演着至关重要的角色。它的设计目的是提供一个简单高效的解决方案来处理分布式系统中常见的协调问题。本文将详细探讨 ZooKeeper 的典型应用场景,包括但不限于配置管理、命名服务…...
缓存组件<keep-alive>
缓存组件<keep-alive> 1.组件作用 组件, 默认会缓存内部的所有组件实例,当组件需要缓存时首先考虑使用此组件。 2.使用场景 场景1:tab切换时,对应的组件保持原状态,使用keep-alive组件 使用:KeepAlive | Vu…...
YouBIP 项目
技术方案 难点 成效 项目背景 库存管理涉及大量数据,如何在前端实现高效的数据展示和交互是一个挑战。库存管理系统需要处理大量的入库、出库、盘点等操作,尤其是在大企业或多仓库场景下,高并发操作可能导致数据库锁争用、响应延迟等问题。…...

react概览webpack基础
react概览 课程介绍 webpack 构建依赖图->bundle 首屏渲染: 减少白屏等待时间 数据、结构、样式都返回。需要服务器的支持 性能优化 ***webpack干的事情 模块化开发 优势: 多人团队协作开发 可复用 单例:全局冲突 闭包 模块导入的顺序 req…...

DeepSeek 助力 Vue 开发:打造丝滑的步骤条
前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

均衡后的SNRSINR
本文主要摘自参考文献中的前两篇,相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程,其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt 根发送天线, n r n_r nr 根接收天线的 MIMO 系…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...

嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)
目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 编辑编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...
Linux安全加固:从攻防视角构建系统免疫
Linux安全加固:从攻防视角构建系统免疫 构建坚不可摧的数字堡垒 引言:攻防对抗的新纪元 在日益复杂的网络威胁环境中,Linux系统安全已从被动防御转向主动免疫。2023年全球网络安全报告显示,高级持续性威胁(APT)攻击同比增长65%,平均入侵停留时间缩短至48小时。本章将从…...

基于stm32F10x 系列微控制器的智能电子琴(附完整项目源码、详细接线及讲解视频)
注:文章末尾网盘链接中自取成品使用演示视频、项目源码、项目文档 所用硬件:STM32F103C8T6、无源蜂鸣器、44矩阵键盘、flash存储模块、OLED显示屏、RGB三色灯、面包板、杜邦线、usb转ttl串口 stm32f103c8t6 面包板 …...