Codar
下载

SNF 相似性网络融合与多组学分型

同一批患者常同时有转录组、甲基化、拷贝数或蛋白组数据,各自单独聚类往往得到不一致的亚型。相似性网络融合(SNF)先在每种组学内计算样本两两相似性,构成以样本为节点的网络,再通过迭代的信息传递让各网络互相更新,保留多个组学都支持的强相似关系、削弱单一组学的弱关系,最后在融合网络上做谱聚类得到亚型。它以样本为中心,不要求各组学特征数相近,对噪声较稳健,常用于肿瘤分子分型。常用实现是 R 包 SNFtool。

什么时候用

  • 同一批样本有两种及以上组学数据,希望得到综合的分子亚型
  • 单一组学聚类结果不稳定,想借助多组学一致信号提高稳健性
  • TCGA 等公共队列的肿瘤分型并比较亚型间的生存与临床特征
  • 各组学特征数量差异很大,不便直接拼接后聚类
  • 需要样本相似性网络用于可视化或后续标签传播

不适合的情况

  • 想知道哪些基因或通路驱动分型:SNF 输出的是样本网络,特征解释需另做差异分析
  • 各组学样本几乎不重叠:融合依赖共同样本,重叠太少网络无意义
  • 样本很少(几十个以内)却要分出很多亚型:结果极不稳定

需要准备的数据

各组学特征矩阵
每种组学一个样本×特征矩阵,如表达 log 值、甲基化 β 或 M 值、拷贝数片段值,已完成各自预处理
样本对照表
统一的样本 ID 映射,处理 TCGA 条形码截断、肿瘤与正常样本区分和重复样本
临床信息
生存时间与状态、分期、性别等,用于验证亚型的临床意义,不参与聚类
批次与平台信息
测序中心、芯片批次等,用于检查亚型是否只是批次的反映

分析步骤

  1. 1

    样本对齐

    按统一 ID 取各组学的共同样本,去除重复和非目标样本类型。记录每种组学原有样本数和交集样本数,交集过小时考虑舍弃覆盖率低的组学。

  2. 2

    特征筛选与标准化

    每种组学先过滤低方差或高缺失特征,通常保留变异度最高的数千个特征,再对每个特征做 z-score 标准化。不同组学量纲不同,标准化后距离计算才不会被少数尺度大的特征主导。

  3. 3

    构建单组学相似网络

    计算样本间欧氏距离或相关距离,再用带局部尺度的高斯核转为相似度矩阵(SNFtool 中的 affinityMatrix)。可先对每个组学单独做谱聚类,了解各自的结构。

  4. 4

    网络融合

    把各组学的相似度矩阵输入 SNF 迭代融合。融合后的网络应比单一组学网络呈现更清晰的块状结构,在热图上表现为对角线上的明亮方块。

  5. 5

    选择聚类数

    用特征间隙(eigengap)和旋转代价等方法估计最佳聚类数,并结合轮廓系数、一致性聚类的稳定性以及亚型样本量综合判断,而不是只取一个统计量的最优值。

  6. 6

    谱聚类与贡献评估

    在融合网络上做谱聚类得到亚型标签。再计算每个单组学网络聚类与融合结果的一致性(如 NMI),了解哪种组学对分型贡献最大。

  7. 7

    亚型验证与注释

    比较亚型间的生存差异和临床特征,做各组学的差异特征和通路富集,解释亚型的生物学含义。条件允许时在独立队列中用标签传播或分类器复现亚型。

关键参数与决策

近邻数 K

K 决定每个样本只与多少个最相似的邻居传递信息,常见取值 10 到 30,样本多时可略大。K 太小网络稀疏、亚型碎片化,太大则会把不同亚型连在一起。

核参数 alpha(sigma)

控制高斯核的宽度,常在 0.3 到 0.8 之间取值,SNFtool 示例中常用 0.5。值越大相似度衰减越慢。建议在一个范围内扫描,看聚类结果是否稳定。

迭代次数 T

融合的迭代轮数,通常 10 到 20 次即可收敛。增加迭代次数一般不会显著改变结果,可通过比较相邻 T 下的融合矩阵差异确认收敛。

特征数量

每种组学保留的特征太多会引入噪声,太少会丢失信息。常用按方差或中位绝对偏差取前几千个,应检查改变特征数后亚型是否基本一致。

距离度量

连续型数据常用欧氏距离,计数或二值型数据(如突变)可用卡方距离等。距离不合适会让该组学网络缺乏结构,在融合中被弱化或引入噪声。

常见错误

  • 各组学未标准化直接计算距离:表达值方差大的少数基因会主导相似度,融合结果实际只反映一个组学。
  • 只用一组 K 和 alpha 得到结果:SNF 对参数有一定敏感性,应扫描参数并报告亚型在不同设置下的一致性。
  • 用 P 值最小的聚类数作为最优:挑选使生存差异最显著的 k 是数据窥探,应先依据网络结构确定 k,再看生存。
  • 忽视批次和纯度:肿瘤纯度、测序中心等因素会形成很强的相似性结构,亚型可能只是技术或纯度分层。
  • 把生存时间或结局纳入聚类特征后再验证预后:构成循环论证,临床变量只能用于聚类完成后的事后比较。
  • 亚型中有只含少数样本的小簇仍单独解释:样本太少的簇统计功效不足,且常由离群样本造成。

结果怎么看

融合网络热图

按亚型排序的样本相似度矩阵,对角线上应出现边界清楚的亮块。块之间也有较强相似度,说明亚型边界模糊;某个块内部再分出小块,提示可能存在更细的亚型。

聚类数评估图

展示不同 k 下的特征间隙、旋转代价或轮廓系数。两种方法给出的最佳 k 一致时较可信;差异较大时应报告备选 k,并比较不同 k 下亚型的嵌套关系。

各组学贡献图

展示单组学聚类与融合亚型的一致性(如 NMI)。某个组学一致性接近零,说明它对分型几乎无贡献,可能是噪声组学;一致性极高则表示分型主要由该组学决定。

亚型生存曲线与临床特征表

比较亚型间的 Kaplan-Meier 曲线和 log-rank 检验,以及分期等分布。需注意生存差异是否在调整分期后仍存在,否则亚型可能只是已知临床因素的替代。

和相近方法怎么选

SNF 与 MOFA

SNF 以样本为中心,融合样本相似网络后直接给出离散亚型,不提供特征层面的解释。MOFA 学习连续的潜在因子并给出各组学的特征权重,适合解释变异来源。要分型选 SNF,要理解驱动因素选 MOFA,两者可结合。

SNF 与拼接后聚类

把各组学特征直接拼接后聚类,特征多的组学会占据主导,噪声也一并放大。SNF 在网络层面融合,各组学贡献更平衡,对单一组学的噪声更稳健,但计算需要样本数平方级的内存。

SNF 与一致性聚类

一致性聚类(ConsensusClusterPlus)通常用于单一数据矩阵,通过重抽样评估聚类稳定性。它可以与 SNF 结合:在融合网络上做重复抽样,评估各 k 下亚型的稳定程度。

常见问题

SNF 的 K、alpha、T 怎么设?

常见经验设置是 K 取 10 到 30(也有按样本数除以 10 估算的做法),alpha 在 0.3 到 0.8 之间,T 取 10 到 20。建议在网格上扫描这些参数,选择亚型在多数设置下稳定的组合,而不是只报告一组。

SNF 能处理部分样本缺失某种组学吗?

原始 SNF 要求所有组学有相同样本。常见做法是只取交集,或者对缺失组学的样本另行处理。也有扩展方法支持不完整数据,但需要说明缺失模式,避免缺失本身与亚型相关。

得到的亚型怎么在新样本中验证?

SNFtool 提供基于融合网络的标签传播,可把新样本归入已有亚型。也可以用各亚型的差异特征训练分类器,在独立队列中预测并比较亚型的生存或特征是否复现。

亚型之间生存没有差异,结果就没用吗?

不一定。分子亚型反映生物学差异,未必都与预后相关,可以比较亚型在治疗反应、通路活性或免疫特征上的差别。注意本类分析属于科研探索,不能直接用于临床诊断或治疗决策。

在 Codar 里怎么做

在 Codar 中说明有哪些组学数据和研究目标,它会先确认方案:对齐规则、各组学特征筛选与标准化方式、参数扫描范围和聚类数判断标准。随后完成多组学数据对齐与标准化,构建相似网络并做 SNF 融合与谱聚类,评估各组学贡献与参数稳定性,再比较亚型的临床特征与生存。交付热图、亚型标签表和脚本。

可以这样提问
我有 TCGA 胃癌的 mRNA、甲基化和拷贝数数据,帮我做多组学对齐和 SNF 融合分型,比较各亚型的生存差异并看哪种组学贡献最大。
了解多组学整合插件