小罗碎碎念
在医学AI研究领域,生存分析正从单一临床指标转向多模态数据整合,尤其是病理图像与基因组图谱的结合。
本文提出的跨模态转换与对齐框架(CMTA),通过构建并行编码器-解码器结构处理多模态数据,利用跨模态注意力模块挖掘病理与基因组间的内在关联,既能整合单模态信息生成跨模态表示,又能通过特征对齐与融合增强模型对生存事件的判别能力,有效解决了现有方法忽略跨模态相关性或丢弃互补信息的问题。
CMTA的核心创新在于双向信息转换机制:
- 编码器通过自注意力(含Nystrom近似)提取病理与基因组的单模态表示;
- 解码器则将跨模态相关信息翻译为可互补增强的特征,同时通过L1对齐约束确保信息转换质量。
跨模态注意力模块作为桥梁,通过计算双向注意力图实现模态间互补信息传递,这种设计既避免了以单一模态为指导的信息丢失,又能通过特征 recalibration 提升预测精度。
在五个TCGA数据集(BLCA、BRCA等)的实验中,CMTA的c-index显著优于MCAT、DualTrans等单/多模态SOTA方法,消融实验验证了跨模态注意力、对齐约束等组件的必要性。
该框架不仅为多模态医学数据融合提供了新范式,其开源代码(https://github.com/FT-ZHOU-ZZZ/CMTA)也为领域研究者提供了可复现的技术方案,对推动基于病理-基因组联合分析的精准生存预测具有重要参考价值。
交流群
欢迎大家加入【医学AI】交流群,本群设立的初衷是提供交流平台,方便大家后续课题合作。
目前小罗全平台关注量71,000+
,交流群总成员1600+
,大部分来自国内外顶尖院校/医院,期待您的加入!!
由于近期入群推销人员较多,已开启入群验证,扫码添加我的联系方式,备注姓名-单位-科室/专业
,即可邀您入群。
了解/加入我们的团队
我们是一支以国内外硕博为主的学生团体,覆盖医学AI主流研究领域。
我们团队提供学术交流、科研合作、数据分析等一系列服务,欢迎医学AI领域的有志青年加入我们!
感兴趣的可以扫码或者点击链接访问我们团队的官网:https://www.lxltx.site/
一、文献概述
这篇文章提出了一种用于生存分析的跨模态转换与对齐(CMTA)框架,该框架通过探索病理图像和基因组数据之间的内在跨模态相关性并传递潜在的互补信息,以提升生存分析的准确性。
1-1:研究背景与问题
- 生存分析的发展:随着高通量测序技术的快速发展,生存分析的重点已从检查临床指标转向结合基因组图谱和病理图像。
- 现有方法的不足
- 直接融合病理特征和基因组图谱进行生存预测,会忽略内在的跨模态相关性。
- 以基因组图谱为指导整合病理图像特征,会丢弃与基因表达无关的病理信息。
1-2:方法框架
- 整体设计:构建两个并行的编码器-解码器结构,用于整合单模态内信息并生成跨模态表示;设计跨模态注意力模块,作为不同模态间的信息桥梁,进行跨模态交互和传递互补信息。
- 关键组件
- 病理编码器和基因组编码器:利用自注意力机制整合单模态内信息,获取单模态表示。为解决病理图像数据量大带来的计算负担,采用Nystrom注意力近似全局自注意力。
- 跨模态注意力模块:计算病理和基因组实例令牌之间的注意力图,提取跨模态相关信息,探索潜在的跨模态相关性和交互作用。
- 基因组解码器和病理解码器:将跨模态相关信息转换为特定的跨模态表示,解决病理图像和基因组图谱之间的数据异质性问题。
- 特征对齐与融合:利用跨模态表示增强和重新校准单模态表示,整合所有特征表示以进行最终的生存预测;使用L1范数对跨模态表示施加对齐约束,确保信息转换质量。
1-3:实验结果
- 数据集:在五个公共TCGA数据集(BLCA、BRCA、GBMLGG、LUAD和UCEC)上进行实验。
- 评估指标:使用c-index评估模型性能。
- 主要发现
- 与最先进的方法相比,CMTA在所有数据集上均表现出更优的性能。
- 消融实验表明,跨模态注意力模块、对齐约束和张量分离等关键组件对模型性能至关重要。
- Kaplan-Meier分析显示,CMTA能够有效区分低风险和高风险患者群体。
1-4:结论
CMTA框架通过构建并行的编码器-解码器结构和跨模态注意力模块,有效探索了病理图像和基因组数据之间的跨模态相关性,提升了生存分析的性能。
该研究为多模态医学数据的整合提供了新的思路,在癌症生存预测等领域具有重要的应用价值。
二、相关工作
2-1:单模态生存分析
生存预测能够为医生评估疾病进展和治疗效果的临床结果提供有价值的信息。
传统的生存分析依赖于单模态临床数据,例如短期临床指标[15, 18, 20, 44]、长期随访报告[1, 4, 35]、各种放射影像[14, 32, 28, 36]以及千兆像素病理图像[46, 40, 42, 7, 30]。
通常,基于放射学的方法会利用特征学习技术从放射影像中提取定量特征,并将其与生存结果相关联;基于病理学的方法则会利用多实例学习(MIL)范式来识别和突出图像中对生存事件有贡献的重要实例(即斑块或区域)。
与放射学相比,病理学能够显著提高生存预测的性能,但其性能仍无法满足临床应用的需求。随着高通量测序技术的快速发展,基因组图谱作为疾病建模和预后评估的指标已显示出高度相关性[11, 6, 25, 43, 29],这为更准确的生存预测开辟了一条新途径。
2-2:多模态生存分析
多模态数据可以从宏观、微观和分子水平为患者的病情提供各种见解,每种模态都有其优缺点。
通过整合不同模态的信息,我们能够更全面地了解患者的病情,从而实现更准确的诊断、治疗规划和更好的预后预测。
例如:
- Cheerla等人[5]开发了一种无监督方法,将多模态患者数据编码为共同的特征表示,然后利用这些特征表示来预测单一癌症和泛癌的预后;
- Chen等人[8]提出了一种病理组学融合框架,整合组织学图像和基因组特征,以构建用于癌症诊断和预后的客观图像组学分析;
- Braman等人[3]提出了深度正交融合模型,鼓励每种模态提供独立的预后信息;
- Chen等人[9]提出了一种多模态共注意力Transformer框架,使用基因组特征作为查询来从病理图像中识别信息丰富的实例。
尽管这些方法在多模态生存分析中取得了令人印象深刻的结果,但多模态特征的直接融合会忽略潜在的跨模态相关性,而使用基因组图谱作为指导会丢弃与基因表达无关的病理信息,这些方法违背了整合多模态数据中互补信息的初衷。
三、CMTA框架解析
CMTA解决了将异质医学数据类型(特别是病理图像和基因组图谱)整合用于生存分析的挑战。该系统处理来自TCGA数据集的全幻灯片图像(WSIs)以及相应的基因组数据,以使用跨模态Transformer架构预测患者的生存结果。
3-1:核心功能
功能 | 描述 |
---|---|
多模态整合 | 同时处理WSI斑块特征和基因组数据 |
交叉验证框架 | 具有预定义分割的5折交叉验证,用于可重复的评估 |
多种癌症类型 | 支持TCGA数据集,包括BLCA、BRCA、GBMLGG、LUAD、UCEC |
生存分析 | 专门用于使用一致性指数(C-index)进行事件发生时间预测 |
内存溢出处理 | 可配置的斑块采样,以处理内存限制 |
3-2:系统架构
CMTA系统遵循模块化架构,数据预处理、模型训练和评估组件之间有明确的分离。
- Data Sources(数据源):TCGA WSIs(TCGA全幻灯片图像 )、TCGA Genomic Data(TCGA基因组数据 )
- External Preprocessing Tools(外部预处理工具):CLAM Tool、MCAT Tool
- Processed Data Storage(处理后的数据存储):pt_files/、csv/、splits/5foldcv/
- Execution Environment(执行环境):run.sh、Command Line Arguments(命令行参数 )
- CMTA Core System(CMTA核心系统):Generic_MIL_Survival_Dataset、main.py、CMTA Model、Engine ,展示了从数据源经预处理、存储,到在执行环境中由核心系统进行处理的流程 。
3-3:训练流程
各流程步骤:
- 从
run.sh
启动,经main.py
解析命令参数、设置随机种子、创建结果目录;; - 进入5折交叉验证循环,加载数据集、构建数据加载器;
- 依据模型类型(cmta或其他)创建模型;
- 创建引擎、配置损失/优化器/调度器,执行训练与验证循环、记录最佳分数;
- 循环完所有折后计算均值/标准差并保存结果到
results.csv
。
3-4:关键组件
数据处理组件
该系统依赖于外部预处理工具和结构化数据组织:
- CLAM集成:处理WSIs,以提取20倍放大下256×256斑块的ResNet-50预训练1024维特征
- MCAT集成:提供来自TCGA数据集的预处理基因组数据
- 交叉验证分割:存储在“splits/5foldcv/”目录中的预定义5折CV分割
核心训练组件
组件 | 文件路径 | 目的 |
---|---|---|
主管道 | main.py | 编排训练过程和交叉验证 |
CMTA模型 | network.py | 实现跨模态Transformer架构 |
训练引擎 | engine.py | 处理训练和验证循环 |
数据集处理程序 | utils.py | 管理数据加载和预处理 |
模型架构组件
CMTA模型实现了复杂的跨模态架构:
- 病理组学嵌入:将WSI斑块特征投影到共享嵌入空间
- 基因组嵌入:将基因组特征投影到共享嵌入空间
- 跨模态注意力:病理组学和基因组学之间的双向注意力
- Transformer编码器/解码器:每种模态的单独Transformer
- 融合层:组合多模态表示以进行最终预测
3-5:执行接口
命令行接口
该系统通过main.py
提供了灵活的命令行接口,具有以下关键参数:
python main.py --which_splits 5foldcv \
--dataset <CANCER_TYPE> \
--data_root_dir <DATA_ROOT_DIR> \
--modal coattn \
--model cmta \
--num_epoch 30 \
--batch_size 1 \
--loss nll_surv_l1 \
--lr 0.001 \
--optimizer SGD \
--scheduler None \
--alpha 1.0
执行脚本
run.sh
脚本提供了标准化的执行模式,可以简单地调用为:
bash run.sh
支持的数据集
CMTA支持多个TCGA癌症数据集,具有以下特征:
数据集 | 癌症类型 | 特殊注意事项 |
---|---|---|
TCGA-BLCA | 膀胱尿路上皮癌 | 标准处理 |
TCGA-BRCA | 乳腺浸润性癌 | 标准处理 |
TCGA-GBMLGG | 胶质母细胞瘤/低级别胶质瘤 | 由于每个患者有多个WSI,可能需要内存溢出处理 |
TCGA-LUAD | 肺腺癌 | 标准处理 |
TCGA-UCEC | 子宫内膜癌 | 标准处理 |
内存溢出处理
对于内存需求高的数据集,特别是TCGA-GBMLGG,系统提供了斑块采样功能:
--OOM 4096 # 超出时随机采样4096个斑块
3-6:数据要求
WSI数据结构
DATA_ROOT_DIR/
└──pt_files/
├── slide_1.pt
├── slide_2.pt
└── ...
基因组数据结构
预处理的基因组数据按照MCAT预处理标准提供在“csv/”目录中。
交叉验证分割
splits/5foldcv/
├── splits_0.csv
├── splits_1.csv
├── splits_2.csv
├── splits_3.csv
└── splits_4.csv
3-7:系统依赖
核心要求
- PyTorch:
torch 1.12.0+cu116
,用于深度学习框架 - Scikit-survival:
0.19.0
,用于生存分析指标 - CUDA:支持GPU模型训练
外部工具依赖
- CLAM:用于WSI特征提取
- MCAT:用于基因组数据预处理
结束语
本期推文的内容就到这里啦,如果需要获取医学AI领域的最新发展动态,请关注小罗的推送!如需进一步深入研究,获取相关科研服务,欢迎扫码前往我们团队的主页!