用于泛癌种预后预测的多模态表示深度学习.

0. TL; DR

本文构建了一个基于多模态神经网络的模型,能够利用临床数据、mRNA表达数据、microRNA表达数据以及组织病理学whole slide images (WSIs) 来预测20种不同癌症类型患者的生存情况。

作者使用泛癌种(pancancer)数据训练这些特征编码,并成功地用于预测单一癌症和泛癌种的总生存期(overall survival),总体C-index达到了0.78

1. 背景介绍

准确预测肿瘤的进展或预后,可以极大地帮助医生为癌症患者制定治疗和护理决策。医生可以利用多种类型的数据,包括临床数据、基因组分析、组织学切片图像和放射影像等。然而,这些数据,特别是基因组和影像数据,具有高维度的特性,使得医生难以手动解释和整合这些多模态生物医学数据。

此外,患者间的异质性意味着对每个肿瘤进行个体化表征对于改善治疗过程至关重要。过往研究已证明,利用机器学习可以挖掘出具有预测性的分子标志物(如基因表达模式)。同样,对组织病理学图像的量化分析也能提供超越病理学家肉眼观察的额外信息。因此,能够识别高维数据中模式的自动化系统,可能是更准确评估疾病侵袭性和患者结局的关键。

另一个重要的启示是,不同癌症类型的肿瘤可能具有潜在的相似性。因此,对多种癌症进行大规模数据的pancancer分析,有潜力通过利用这些泛癌种的共性来改善疾病建模。像The Cancer Genome Atlas (TCGA) 这样的多机构项目,为实现这种泛癌种建模提供了宝贵的数据资源。

然而,自动化的预后预测仍然是一项艰巨的任务,主要原因在于可用数据的异质性和高维度。例如,TCGA数据库中的每个患者都有数千个基因组特征和高分辨率的WSI。为了成功开发一个多模态预后预测模型,需要一个能够有效处理临床、基因组和图像数据的综合方法。

作者通过开发一个借鉴了无监督和表示学习技术的泛癌种deep learning架构,来应对这一挑战。其主要目标是利用海量的TCGA数据,开发一个能够用于跨多种指标聚类和比较患者的、鲁棒的肿瘤特征表示。

2. 方法介绍

为了训练一个能够进行泛癌种预后预测的模型,作者首先尝试将多种数据模态压缩成一个能代表单个患者的特征向量。该方法的核心是一个受孪生网络(Siamese network)启发的表示学习框架。

深度无监督表示学习

传统方法如split-brain autoencoders依赖于重建误差,这对于异构数据源可能不是一个好选择。因此,作者采用了一种基于对比学习的思路:对于同一个患者的不同数据模态(如mRNA数据和WSI),它们应该被编码成相似的特征向量;而对于不同患者的数据,它们的特征向量应该被区分开。

由于数据模态不同,作者没有使用Siamese network,而是为每种数据类型设计了一个独立的深度神经网络,其具体架构如图2所示。每个网络都将各自的输入数据编码为一个长度为512的特征向量。

1. 相似性损失 (Similarity Loss)

为了实现上述目标,作者定义了一个基于cosine similarity(余弦相似度)和hinge-loss(铰链损失)的相似性损失函数$l_{sim}(\theta)$。

首先,定义两个数据$x$和$y$的特征表示之间的相似度$sim_\theta(x, y)$:

\[sim_\theta(x, y) = \sum_{i,j \in \text{modalities}} \frac{\hat{h}_{\theta,i}(x_i) \cdot \hat{h}_{\theta,j}(y_j)}{|\hat{h}_{\theta,i}(x_i)| |\hat{h}_{\theta,j}(y_j)|}\]

其中,$x_i$是数据$x$的模态$i$的数据,$\hat{h}_{\theta,i}$是用于模态$i$的预测模型。

然后,定义hinge-loss $L_\theta(x, y)$:

\[L_\theta(x, y) = \max(0, M - sim_\theta(x, y) + sim_\theta(x, x))\]

这个损失函数旨在:最大化同一个患者不同模态数据之间的相似度$sim_\theta(x, x)$。最小化不同患者数据之间的相似度$sim_\theta(x, y)$。$M$是一个margin(边界)参数,它允许不同患者的特征向量有一定的相似性,只要它们的相似度与同一患者的相似度之差大于$M$即可。这有助于避免mode collapse(模式崩溃,即所有输入都被编码为相同的向量)。

最终的相似性损失是对一个batch中所有患者对的$L_\theta(x, y)$求和:

\[l_{sim}(\theta) = \sum_{x,y} L_\theta(x, y)\]

通过最小化这个损失,模型被迫学习识别不同模态中能够区分患者的关键模式,并学习这些模式在不同模态间的对应关系。

2. 预后预测与Cox损失

在学习特征表示的同时,模型还必须准确地预测预后。作者在共享的512维特征向量之上增加了一个最终的预测层,并使用Cox loss函数进行训练,该损失函数通过优化Cox partial likelihood(Cox偏似然)来间接最大化concordance score(一致性分数,即C-index)。

Cox loss的定义为:

\[l_{cox}(\theta) := -\sum_{i:E_i=1} \left( \hat{h}_\theta(x_i) - \log \sum_{j:T_j > T_i} e^{\hat{h}_\theta(x_j)} \right)\]

其中,$T_i$, $E_i$和$x_i$分别是患者$i$的生存时间、删失标志和数据,$\hat{h}_\theta$是用于预测生存时间的神经网络模型。

3. 总体损失函数

最终,模型的总体损失是相似性损失和Cox损失的和:

\[l(\theta) = l_{sim}(\theta) + l_{cox}(\theta)\]

模型架构细节

作者为每种数据类型设计了专门的CNN架构。

为了提高网络处理缺失数据的能力,作者提出了一种名为multimodal dropout的正则化技术。与传统的dropout随机丢弃神经元不同,multimodal dropout在训练过程中以一定的概率$P$随机“丢弃”整个数据模态对应的特征向量,并相应地放大其他模态的权重。这迫使网络创建对数据模态缺失具有鲁棒性的表示。实验发现,丢弃概率$P=25\%$时效果最佳。

3. 实验分析

作者使用了来自20个TCGA癌症类型的数据,共计超过11,000名患者。数据集以85/15的比例划分为训练集和测试集。

3.1 无监督学习表示的可视化

首先,作者通过可视化泛癌种患者队列的编码来评估模型的无监督表示学习能力。

该图使用t-SNE将512维的患者特征向量降维到二维空间进行可视化。可以清楚地看到,具有相似特征表示的患者倾向于聚在一起,并且这些聚类与患者的临床特征(如性别-左图、种族-中图、癌症类型-右图)高度相关,即使模型没有被显式地训练来预测这些变量。这表明,无监督模型能够有效地从多模态数据中总结信息,并学习到能够区分患者的关键因素。作者提出的无监督编码可以作为一个泛癌种的“患者画像”。

3.2 多模态丢弃的评估

接下来,作者评估了multimodal dropout技术的效果。

该图展示了模型在验证集上的C-index随训练epochs的变化。模型在大约40个epochs后收敛。使用multimodal dropout(蓝线)训练的模型的验证C-index始终高于基线模型(红线)。这表明,在训练期间随机丢弃特征向量,确实提高了网络从不完整的多模态数据中构建准确表示的能力。

3.3 泛癌种预后预测

作者在测试集上进行了单癌种和泛癌种的预后预测实验,并比较了不同模态组合的性能。

3.4 泛癌种预训练的评估

为了验证泛癌种训练是否真的有助于提升单一癌种的预测性能,作者进行了对比实验。

结果惊人地显示,对于几乎所有癌症类型(除了KIRC),使用泛癌种数据进行预训练的模型,其性能都显著优于仅在该癌种数据上单独训练的模型。对于样本量较少的癌症类型(如KICH),这种提升尤为明显。这证明了模型能够利用从其他癌症类型中学到的共性知识来克服数据稀缺的问题。