1 要点
代码:https://github.com/olgarithmics/ICLR_CAMIL
研究目的:
已有基于注意力的MIL模型在分析WSI时常常忽略了肿瘤和邻近区块的上下文信息,导致分类错误。对此,CAMIL提出了邻居约束注意力机制,并将上下文约束作为先验知识,以提高局部肿瘤的检测和分类能力。
关键技术:
- 邻域约束注意力机制:考虑WSI中区块之间的依赖性,以识别具有高诊断价值的区域;
- Nystromformer模块:转换区块嵌入,聚合全局上下文;
- 对比学习:通过SimCLR框架训练特征提取器,生成丰富的特征标识;
数据集:
- Camelyon16;
- Camelyon17;
- TCGA-NSCLC:包含LUAD和LUSC两个癌症亚型;
小结:
2 方法
在CAMIL中,每个区块的注意力分数由其邻域的注意力得分汇聚而成。直观上,如果一个具有高注意力区块的周围同样是高注意力区块,则其应对被重视。相反,邻域注意力较低的高注意力区块,则被应对被归属为噪声。具体地,CAMIL包含5个模块,如图1:
- WSI预处理:每个WSI被分割为多个区块,例如256x256;
- 特征提取:所有WSI被转换为低维特征表示: H = { h 1 , … , h 2 , … , h N } , h i ∈ R n × d H=\{h_1,\dots,h_2,\dots,h_N\},h_i\in\mathbb{R}^{n\times d} H={ h1,…,h2,…,hN},hi∈Rn×d,其中 d d d是区块提取后的实例维度、 n n n是WSI中区块的数量 (不同WSI是不一样的),以及 N N N是WSI是数量;
- Nystromformer模块:将区块嵌入为隐特征表示,其关键点在于用于捕捉全局信息的跨区块上下文汇聚;
- 邻域约束注意力:与对比学习匹配,用于封装邻域先验并汇聚局部概念;
- 特征聚合与分类层:输出WSI标签;
2.1 WSI预处理
每个WSI被划分为多个独立且未交叠的区块,详情参见附录。
2.2 特征提取
为了从单个区块中提取丰富且有意义的特征表示,首先使用SimCLR方法训练一个特征提取器,其是最流行的自监督学习框架之一:通过最小化同一图像数据的不同增强版本之间的距离,来学习语义丰富的特征表示:
- 每个WSI中的区块被视为单独的图像进行SimCLR训练;
- 在训练过程中,对同一区块进行两种不同的增强。增强方式从颜色失真、缩放、旋转和反射中随机选择;
- 将两种增强的区块通过在ImageNet上预训练的ResNet-18与一个额外的投影头 (两个隐藏层的多层感知机),用于将特征表示映射到一个空间,在该空间中应用对比损失;
- 对于ResNet-18的最后卷积块和投影头,通过最小化不同增强的区块之间的温度缩放交叉熵 (NT-Xent) 微调:
l i j = − log exp ( sim ( z i , z j ) / τ ) ∑ k = 1 N 1 [ k = i ] exp ( sim ( z i , z k ) / τ ) (1) \tag{1} l_{ij} = - \log \frac{\exp(\text{sim}(z_i, z_j)/\tau)}{\sum_{k=1}^{N} 1[k=i] \exp(\text{sim}(z_i, z_k)/\tau)} lij=−log∑k=1N1[k=i]exp(sim(zi,zk)/τ)exp(sim(zi,zj)/τ)(1) - 训练完成后,该网络被用作基础特征提取器 (图1中的 F ( x ) F(x) F(x),用于生成每个WSI的特征表示;
- 训练好的特征提取器在训练CAMIL时被冻结,仅用于提取特征和计算邻近区块之间的距离,即计算特征之间的平方差之和,并在后续的邻居约束注意力模块中使用。
2.3 Nystromformer模块
为了解决由于大型WSI中的长距离依赖导致的内存过载问题,我们采用了Nystromformer架构,使CAMIL能够通过高效地近似自注意力机制模拟复杂的特征交互。这产生了一个“变换”的特征集 T = { t 1 , … , t i , … , t N } T = \{t_1, \ldots, t_i, \ldots, t_N\} T={
t1,…,ti,…,tN},其中 t i ∈ R n × d t_i \in \mathbb{R}^{n \times d} ti∈Rn×d,并且
t i = softmax ( Q 1 ( h i ) K ~ 1 T ( h i ) d k ) ( A ) + softmax ( Q ~ 1 ( h i ) K 1 T ( h i ) d k ) − 1 V 1 ( h i ) , (2) \tag{2} t_i = \text{softmax} \left( \frac{Q_1(h_i) \tilde{K}^T_1(h_i)}{\sqrt{d_k}} \right)\left( A \right)^+ \text{softmax} \left( \frac{\tilde{Q}_1(h_i) K^T_1(h_i)}{\sqrt{d_k}} \right)^{-1} V_1(h_i), ti=softmax(dkQ1</