想象你是一名侦探,接手一桩多年未破的癌症悬案。案发现场的原始组织早已被封存进蜡块,你唯一能依赖的是三座对外开放的“证据档案馆”。它们不提供破案结论,却收藏着破解谜题的关键线索:TCGA 将 33 种肿瘤的基因组和转录组整理成案卷,UK Biobank 为 50 万志愿者的健康轨迹建立普查档案,CPTAC 则奉上蛋白质层面的精细鉴定报告。肿瘤虽然已经离体,但它的分子“指纹”“口供”“物证”全都留在这些公共数据资源里。 然而档案不会替人推理。从借阅数据、清洗批次噪音,到找出差异基因、建立预后模型,再到把基因、转录、蛋白、甲基化证据拼成完整的证据链,每个环节都需要生物信息学方法。本教程用“侦探破案”这一比喻贯穿始终,带小白用最短路径理解 TCGA、UK Biobank、CPTAC 的获取、分析和 AI 建模全流程。
掌握公共多组学数据的获取与分析,是进入 AI+精准医疗赛道的入门门票。它能帮你胜任生物信息学工程师、医学数据科学家等岗位,把庞大的数据变成临床决策的线索。
可视化演示
展示TCGA/UK Biobank/CPTAC三大公共多组学数据资源:三大资源概览(TCGA 33癌症11K四组学+UKB 50万人群健康+CPTAC蛋白组1K)、数据特征对比(样本量UKB 50万>TCGA 11K>CPTAC 1K+组学覆盖TCGA 4>UKB 2>CPTAC 1)、应用场景(标志物/药靶/人群/亚型/蛋白功能五大研究方向),三模式切换理解数据资源全貌。
本节配有交互动效(进入视口后自动加载,约 3KB)。
'+C1+'
公共数据宝库
想象你是一名医学侦探,负责调查一桩“肿瘤悬案”。案发地(肿瘤组织)早已被固定成福尔马林样本,你无法回到现场,只能依赖过去保存的档案。好在这世间有三座开放的数据档案馆,恰好为你保存了不同类型的分子证据。你不需要亲自造出这些数据,只需要学会如何借阅、调档和交叉比对。
第一座是 TCGA(The Cancer Genome Atlas,癌症基因组图谱),它收录了 33 种癌症、超过 1.1 万例肿瘤样本的基因测序和表达数据,像一部详尽的“癌症专题卷宗”。第二座是 UK Biobank(英国生物样本库),它追踪 50 万英国志愿者的基因型、生活方式和医疗记录,是罕见的“人群健康随访档案”。第三座是 CPTAC(临床蛋白质组肿瘤分析联盟),它在 TCGA 样本上补充了蛋白质组与磷酸化蛋白质组数据,相当于“物证化验室”提供的蛋白图谱。
三座档案馆的数据各有侧重:TCGA 长于肿瘤样本量丰富、癌种覆盖广;UK Biobank 长于人群规模巨大、长期随访关联强;CPTAC 长于蛋白质层精准测量。虽然它们的变量类型和授权方式不尽一致,但都遵循“研究用途申请获批后可访问”的原则。了解授权体系,是使用这些公共资源的第一步,也决定了你能否合法地将数据用于 AI 模型训练。
换句话说,做癌症研究,第一步就是知道该去哪座档案馆借哪本卷宗。TCGA 让你看到癌症内部的分子变化,UK Biobank 帮你在人群中验证这些变化是否影响疾病结局,CPTAC 则把线索具体到蛋白质层面。三座馆互为补充,拼出了破案的第一张地图。
多组学数据家族
走进档案馆,你会发现四种最关键的“证据类型”。第一种是基因组数据,它像犯罪现场留下的指纹——一旦发生突变,就永久刻在 DNA 上,告诉我们“谁动过手”。SNV(单核苷酸变异)是单个碱基的改变,CNV(拷贝数变异)是基因片段数量的增减,两者都能指示出驱动癌症的关键基因异常。
第二种是转录组数据,它像目击证人的口供——反映细胞当下正在“读”哪些基因、执行哪些指令。RNA 测序技术(RNA-seq)可以量化每个基因的表达水平,揭示肿瘤异常活跃的信号通路。第三种是蛋白质组数据,它像监控录像的实锤——RNA 说了不一定做,蛋白丰度才是真正“在岗工作”的分子,CPTAC 正是补充了这层证据。
第四种是表观遗传数据,最常见的检测对象是 DNA 甲基化。它像犯罪动机评估——不改变 DNA 字母,却能在“开关”层面控制基因是否表达。一个基因即使序列完好,一旦启动区域被甲基化,也会被静默。
多组学的精髓就在于此:单看任何一类证据都可能误判,把指纹、口供、实锤和动机结合起来,才能对肿瘤行为做出完整刻画。
数据获取与预处理
档案馆的卷宗不能直接搬回家分析,必须先填写借阅申请。TCGA 与 CPTAC 的数据通过 GDC(Genomic Data Commons)等公共平台下载;UK Biobank 则需要提交研究计划,获批后通过专用渠道获取。拿到原始数据后,你面对的通常是噪声很大的矩阵文件:实验批次不同、测序深度不同、量纲更是千差万别。这就是“整理证据”阶段。
这一阶段有两个关键任务。第一是批次效应校正:不同实验室、不同日期产出的数据会带系统性偏差,就像同一支笔在不同纸张上留下的墨迹颜色不同;常用 ComBat 等算法消除这些技术差异。第二是标准化与归一化:基因表达量和蛋白丰度的尺度可能相差几个数量级,直接建模会让高数值特征主导模型,因此需要把每个特征放到统一的尺度上比较。
最常见的标准化方式是 z-score,它把原始值转换成“距离均值多少个标准差”:
整理过的证据才能纳入下一步破案分析。如果省略批次校正和标准化,后续找到的“差异基因”或训练出的 AI 模型,很可能只是在拟合技术噪声,而不是真实的生物学信号。
- 计算均值对某个特征的全部样本求平均,先找到数据的中心位置。
- 计算标准差衡量所有样本偏离均值的平均幅度,反映数据的离散程度。
- 执行标准化用原始值减去均值再除以标准差,让所有特征都落到均值为 0、标准差为 1 的同一尺度。
差异表达分析
证据整理完毕后,侦探要回答第一个问题:肿瘤样本和正常样本之间,哪些基因的“口供”明显不同?这就像并排比对案发现场与对照现场,找出最反常的线索。差异表达分析正是为大规模基因表达矩阵做这件事。
统计上常用 t 检验来判断两组表达均值是否有显著差异,同时用 log2 倍数变化(log2 Fold Change)衡量差异的大小。为什么取对数?因为基因表达常呈指数级变化,直接用倍数会失衡:上调 4 倍与下调 4 倍在原始尺度上是 4 和 0.25,不对称;取 log2 后变成 +2 和 -2,便于统一阈值筛选。
但这里有一个陷阱:一次分析常常同时检验上万条基因。如果每个基因都用 p < 0.05 来判断,即使没有真实差异,也会出现约 5% 的假阳性。因此需要用 FDR(错误发现率)做多重比较校正,常用 Benjamini-Hochberg(BH)方法控制假阳性比例。筛选出的差异基因,就是最有价值的“头号嫌疑人”。
- 计算倍数变化将肿瘤组的平均表达量除以正常组的平均表达量,得到原始倍数变化。
- 取以 2 为底的对数把“放大/缩小”的倍数压缩成对称的等距刻度。
- 设定阈值实践中通常保留 |log2FC| ≥ 1 且校正后 p 值小于 0.05 的基因。
生存分析建模
破案还要回答时间维度的问题:不同分子特征的肿瘤,患者能撑多久?这正是生存分析(Survival Analysis)擅长处理的场景。它不仅要考虑“是否发生死亡或复发”,还要考虑“多久后发生”,临床术语称之为预后分析。
先看 Kaplan-Meier(KM)生存曲线,它像一张“存活时间表”,展示不同分组患者随时间推移的生存概率。KM 曲线只能做单因素比较,当要同时纳入基因表达、年龄、分期等多个特征时,就需要 Cox 比例风险回归模型。Cox 模型的输出不是直接预测生存时间,而是估计每个特征对风险的影响倍数——风险比(HR)。
在 TCGA 数据上,研究者可以根据 Cox 模型的预测得分把患者划分为“高风险组”和“低风险组”,再比较两组的生存差异。这种风险分层是精准医疗中最常见的落地方式,直接指导临床决定谁需要更积极干预。
- 确定基线风险h₀(t) 是所有协变量为 0 时的基础风险,只随时间变化,不随样本特征改变。
- 构造线性组合每个特征 xᵢ 乘以回归系数 βᵢ,再求和。
- 指数映射为正数ε 的指数运算能把任意实数映射为正值,保证风险函数恒为正。
- 解释为风险比当特征 xᵢ 增加一个单位而其他特征不变时,风险变为原来的 exp(βᵢ) 倍。
多组学整合策略
前几节分别分析了基因组、转录组、蛋白质组和甲基化数据,但真正的破案高手必须把所有证据拼成一张完整地图。多组学整合策略要解决的核心问题是:如何让不同维度、不同量纲的数据协同工作,而不是简单地堆在一起?目前有三类主流思路。
第一类是早期融合(early fusion),把标准化后的基因组、转录组、蛋白质组特征直接拼接成一个宽特征矩阵,再交给机器学习模型。优点是简单直观,缺点是高维特征会急剧增加计算负担和过拟合风险,往往需要配合降维或特征选择。第二类是晚期融合(late fusion),先对每个组学单独建模,再把各模型的预测概率作为新特征进行集成,相当于“让指纹专家、口供专家分别下结论,再综合裁决”。
第三类是潜因子方法,如 NMF(非负矩阵分解)和 MoCluster。它们假设多组学数据背后存在共享的低维潜在因子,通过分解矩阵寻找样本的公共模式。举一个简单的加权整合思路:
整合不是目的,提升预测能力才是。好的整合策略能在保留信号的同时抑制技术噪声,让后续 AI 模型学到更稳健的生物学模式。
- 对各组学做标准化得到第 i 个样本在三个组学上的可比分量。
- 赋予权重不同组学对疾病的重要程度不同,用 w 表示每个维度的贡献。
- 加权求和把标准化分量与权重相乘后累加,得到综合得分 sᵢ。
AI 预测模型
证据齐全之后,就该让 AI“警犬”上场了。在组学数据这样的高维表格场景中,随机森林和 XGBoost 是最实用的起点。它们能处理大量特征、对非线性关系敏感,还能输出特征重要性。实际操作中通常先用交叉验证调参,再用独立测试集评估模型是否真的学会规律。
评价一个二分类模型(比如“高风险 vs 低风险”),最常用的指标是 AUC(Area Under the ROC Curve),它衡量模型把正样本排在负样本前面的能力。AUC 的计算思路很直观:随机抽一个正样本和一个负样本,看模型给正样本打的分数是否更高,把所有配对比较结果求平均:
除了预测性能,AI 模型还要“解释得清”。SHAP 特征归因是当前最流行的解释方法,它能量化每个基因特征对患者预测结果的贡献方向和大小,帮助医学生物学家理解模型为什么把某位患者判为高风险。这样模型既“好用”,又“可信”。
- 收集正样本得分共有 m 个正样本,每个样本有一个预测分数。
- 收集负样本得分共有 n 个负样本,得到对应的预测分数。
- 逐对比较如果正样本得分大于负样本得分,指示函数取 1,否则取 0。
- 求配对平均把 m×n 个配对结果求和后取平均,得到该模型的 AUC。
实战流程与挑战
最后,让我们把整条流水线串成一个完整案例:乳腺癌分子分型。研究者从 TCGA 下载乳腺癌肿瘤样本的转录组数据,用差异表达分析找出与正常组织显著不同的基因,再用这些基因作为特征训练分类模型,将患者分为 Luminal、HER2 富集、Basal 等亚型。随后引入 CPTAC 的蛋白质组数据做晚期融合验证,进一步提升分型的稳健性;如果还需评估预后,则用 Cox 模型计算风险得分并绘制 KM 曲线。
这条流程看起来很顺,但真实施践中处处是坑。第一是数据隐私与合规:UK Biobank 对数据用途有严格限制,使用公共数据前必须确认研究目的符合授权条款,模型部署到临床前还要通过伦理审查。第二是过拟合与小样本问题:TCGA 样本量虽大,但某些罕见癌症亚型可能只有几十例;高维特征加上小样本,模型很容易“背答案”而不是学规律。第三是批次效应残留:如果训练集和独立验证集来自不同实验平台,模型性能可能大幅缩水。
所以,一位称职的“数据侦探”永远不会把档案上的结论直接复制进结案报告。他会反复问:数据来源合规吗?预处理充分吗?模型在独立队列上仍然鲁棒吗?只有经得起外部验证的模型,才能真正从公共多组学数据中挖掘出对患者有价值的信息。
AI 应用场景
肿瘤生物标志物发现
阶段:数据分析与建模阶段
解决的问题:传统方式依赖单组学或小样本队列,很难发现可靠的癌症早期标志物。利用 TCGA 和 CPTAC 的公共数据,AI 能整合转录组与蛋白质组特征,从海量基因中筛选出在肿瘤组织中稳定差异表达、且与预后显著相关的候选标志物。
具体案例:某研究团队从 TCGA 下载肺腺癌 RNA-seq 数据,用差异表达分析锁定 200 个候选基因,再用 CPTAC 蛋白质组数据验证这些基因在蛋白层面是否同样上调,最后用随机森林筛选出 5 个核心标志物组合。
药物靶点与风险分层模型
阶段:模型训练与验证阶段
解决的问题:肿瘤异质性导致“同病不同命”,需要把患者划分为不同风险层级再匹配治疗方案。传统 Cox 回归只能处理少数手工挑选的基因,无法充分利用多组学高维信息。
具体案例:研究团队基于 TCGA 乳腺癌数据训练 XGBoost 模型,输入转录组、甲基化和蛋白质组三类标准化特征,输出高风险/低风险类别;随后用 UK Biobank 的独立人群数据验证模型在不同种族背景下的稳定性,用于辅助临床决策。
Python 演示
# -*- coding: utf-8 -*-"""多组学整合与风险预测演示"""import numpy as npfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.metrics import roc_auc_scorefrom sklearn.model_selection import train_test_split def simulate_omics(n_samples=200, n_features=300, seed=42): """模拟三组组学特征:转录组、甲基化、蛋白质组""" rng = np.random.default_rng(seed) rna = rng.normal(0, 1, (n_samples, n_features)) meth = rng.normal(0, 1, (n_samples, n_features)) prot = rng.normal(0, 1, (n_samples, n_features)) signal = rng.normal(0, 0.5, (n_samples,)) rna[:, :10] += signal[:, None] * 2 meth[:, :10] -= signal[:, None] * 1.5 y = (signal > 0).astype(int) X = np.hstack([rna, meth, prot]) return X, y def main(): X, y = simulate_omics() X_train, X_test, y_train, y_test = train_test_split( X, y, test_size=0.2, random_state=42) clf = RandomForestClassifier(n_estimators=100, random_state=42) clf.fit(X_train, y_train) y_prob = clf.predict_proba(X_test)[:, 1] auc = roc_auc_score(y_test, y_prob) print("测试集 AUC = %.3f" % auc) imp = np.argsort(clf.feature_importances_)[::-1][:5] print("前5个重要特征索引:", imp) if __name__ == "__main__": main()
rna = rng.normal(0, 1, (n_samples, n_features))用标准正态分布模拟一组基因表达矩阵,相当于“证人档案”。rna[:, :10] += signal[:, None] * 2前 10 个特征注入真实“生物学信号”,让模型有规律可学。X = np.hstack([rna, meth, prot])三个组学矩阵水平拼接,演示“早期融合”策略。clf = RandomForestClassifier(n_estimators=100, random_state=42)创建随机森林模型,兼顾稳定性和可解释性。y_prob = clf.predict_proba(X_test)[:, 1]输出每个测试样本属于高风险类的概率。auc = roc_auc_score(y_test, y_prob)用 AUC 评价模型把高风险样本排在前面,反映了文章中的求均值思想。
常见误区
误区很多初学者以为 TCGA、UK Biobank、CPTAC 叫“公共数据”,就意味着完全公开免费,不需要授权、审核或合规审查,下载后想怎么用就怎么用。
正解公共是对科研界免费开放,不代表无限制。TCGA 部分受控数据需要通过 dbGaP 申请,UK Biobank 必须提交研究计划并获得批准。这就像图书馆免费开放,但珍本古籍要填登记表才能借阅。
为何常见:名字里带“公共”,且大量教程只演示下载命令而不讲解授权流程,容易让人形成天然误解。
误区把基因组、转录组、蛋白质组数据直接 np.hstack 拼在一起,觉得维度越多信息越全,模型自然更准,结果却常常严重过拟合。
正解不同组学量纲差异大、噪声结构不同,直接拼接会让高方差特征主导模型。早期融合前必须做标准化和特征选择,还要对比晚期融合效果,才能选出最优策略。
为何常见:拼接操作太简单,代码三行就能跑通,初学者很难意识到高维灾难的严重性。
误区初学者只看 p 值,认为每个基因单独做 t 检验、p < 0.05 就可以确定为差异表达基因,不管差异大小和多重比较问题。
正解p 值衡量统计显著性,不衡量效应大小。上万次检验必须做 FDR 校正,否则会制造大量假阳性;同时应结合 log2FC 阈值判断差异幅度。就像指纹比对,不能只看“是否匹配”,还要看相似度分值是否足够高。
为何常见:入门统计学反复强调 p < 0.05,缺少多重比较和效应量的概念,容易形成思维惯性。
误区看到模型 AUC = 0.95,就断言可以直接用于医院诊断,甚至不做外部队列验证。
正解AUC 是整体排序能力,不能反映特定阈值下的灵敏度/特异度,也不代表在真实人群分布中依然有效。公共数据训练出的模型必须经独立队列验证,并检查校准度和亚组表现才能走临床流程。
为何常见:论文中 AUC 是高频指标,0.9 以上看起来很“漂亮”,容易忽略它在类别不平衡和人群偏移时的局限。
面试题
Q1. 以下哪个数据库最典型的特征是“覆盖 33 种癌症、约 1.1 万例肿瘤样本”?
- A.TCGA 提供多种癌症基因组与转录组数据← 正确答案
- B.UK Biobank 持续追踪 50 万志愿者队列
- C.CPTAC 聚焦蛋白质组与磷酸化蛋白质组数据
- D.GDC 仅作为乳腺癌数据的统一下载门户
答案:A。TCGA 的核心特色是癌症类型覆盖面广,样本以肿瘤为主;UK Biobank 是人群队列,CPTAC 是蛋白组学补充,GDC 只是数据下载门户而非数据库本身。
Q2. 在“多组学证据”比喻中,蛋白质组数据最适合被描述为哪种证据?
- A.监控录像,证明分子真的在“工作”← 正确答案
- B.犯罪指纹,指向永久性的 DNA 突变
- C.证人口供,反映细胞正在执行的指令
- D.行为动机,解释基因是否被静默
答案:A。蛋白质是实际执行功能的分子,像“实锤”监控;基因组像指纹,转录组像口中陈述,甲基化像动机评估。
Q3. 多处公共数据在整合前为什么需要做标准化?
- A.不同组学测量量纲差异巨大,会扭曲模型训练← 正确答案
- B.标准化可以让基因名称匹配合并
- C.标准化能扩大批次效应对模型的干扰
- D.标准化可将不同特征放到同一比较尺度上← 正确答案
答案:AD。量纲差异导致高数值特征主导模型,因此需要 z-score 等标准化手段统一尺度。标准化不会帮助基因名称匹配,也不能扩大批次效应,后两者是错误选项。
Q4. 差异表达分析中,|log2FC| ≥ 1 对应原始表达倍数的含义是?
- A.表达量上调或下调至原来的 2 倍以上← 正确答案
- B.表达量上调或下调至原来的 10 倍以上
- C.表达量变化不到原来的 50%
- D.表达量变化恰好等于 0
答案:A。log2 以 2 为底,log2FC = 1 表示表达量为 2 倍,log2FC = -1 表示表达量为 0.5 倍;阈值 |log2FC| ≥ 1 即变化至少 2 倍。
Q5. FDR(错误发现率)校正解决的核心问题是什么?
- A.大规模多重假设检验产生的大量假阳性← 正确答案
- B.单次 t 检验的检验功效不足
- C.样本量太小导致的统计功效下降
- D.基因注释不完整造成的偏差
答案:A。同时检验上万个基因时,即使没有真实差异,也会有约 5% 的假阳性;FDR 控制所有显著结果中假阳性的比例,是差异表达分析的必要步骤。
Q6. 关于 Cox 模型 h(t|X)=h₀(t)exp(βX),以下说法正确的是?
- A.h₀(t) 是基线风险函数,不随样本特征改变← 正确答案
- B.exp(β) 可以解释为对应特征的风险比← 正确答案
- C.h₀(t) 会随特征 X 的变化而明显改变
- D.该模型完全不需要任何验证假设
答案:AB。h₀(t) 描述时间维度的基线风险,与个体特征无关;exp(β) 表示特征增加一个单位时风险的倍数变化。C 与基线定义矛盾,D 忽视了比例风险假设需要验证。
Q7. 在多组学整合中,“早期融合”的典型做法是?
- A.各组学特征标准化后拼接再送入模型← 正确答案
- B.每个组学独立建模后再集成预测结果
- C.只保留表达量最高的组学特征
- D.先做聚类再对每个簇单独建模
答案:A。早期融合是把多组学特征先拼成宽矩阵再建模;分别建模再集成的策略是“晚期融合”,C 和 D 不符合早期融合定义。
Q8. AUC = 0.85 在二分类模型中最直接的含义是什么?
- A.随机正样本得分高于随机负样本的概率约 0.85← 正确答案
- B.模型对所有样本的预测准确率为 85%
- C.模型在正样本上的召回率等于 85%
- D.正负样本的数量比例约为 85:15
答案:A。AUC 本质上是对所有正负配对样本比较排序正确率的平均。85% 的 AUC 不是准确率,也不直接等于召回率,更不能推出样本比例。
Q9. 使用 UK Biobank 等公共数据开展研究时,合规与防过拟合的合理措施是?
- A.只使用去标识化数据并严格遵守使用条款← 正确答案
- B.在训练集反复调参直到训练错误率为零
- C.使用交叉验证并保留独立测试集评估← 正确答案
- D.将参与者姓名加入训练特征提升预测力
答案:AC。去标识化与条款遵循是隐私合规底线,交叉验证与独立测试集是防止过拟合的关键。B 描述的是过拟合行为,D 违反隐私原则。
Q10. SHAP 特征归因在 AI 模型中最主要的用途是什么?
- A.量化每个特征对预测结果的贡献方向与大小← 正确答案
- B.自动删除所有低表达的无用基因
- C.把高维组学数据降为二维可视化坐标
- D.计算基因在群体中的突变频率
答案:A。SHAP 基于博弈论为每个特征分配一个归因值,既显示贡献方向也显示大小,帮助研究者解释模型决策;它不是特征过滤、降维或突变率工具。