【TMI2023】Contrastive Semi-Supervised Learning for Domain Adaptive Segmentation Across Similar Anatom

Contrastive Semi-Supervised Learning for Domain Adaptive Segmentation Across Similar Anatomical Structures

解读:TMI 2023:对比半监督学习的领域适应(跨相似解剖结构)分割 - GiantPandaCV

论文:https://ieeexplore.ieee.org/abstract/document/9903480

代码:未找到

前言 

U-Net 在医学图像分割方面已经取得了最先进的表现,但是需要大量手动注释的图像来进行训练。半监督学习(SSL)方法可以减少注释的需求,但是当数据集和注释图像数量较小时,其性能仍然受到限制。利用具有相似解剖结构的现有标注数据集来辅助训练可以提高模型性能。但是,这个方法面临的挑战是由于目标结构的外观和成像模式与现有标注数据集不同,导致解剖跨域差异。为了解决这个问题,这篇论文提出了跨解剖域自适应对比半监督学习(Contrastive Semi-supervised learning for Cross Anatomy Domain Adaptation,CS-CADA)方法,通过利用源域中一组类似结构的现有标注图像来适应目标域的模型分割类似结构,只需要在目标域中进行少量标注。

细节,CS-CADA 使用领域特定批归一化(Domain Specific Batch Normalization ,DSBN)来分别归一化两个解剖域的特征图,并提出跨域对比学习策略来鼓励提取领域不变性特征。它们被整合到自我集成平均教师(Self-Ensembling Mean-Teacher,SE-MT)框架中,以利用具有预测一致性约束的未标注目标域图像。实验证明 CS-CADA 能够解决具有挑战性的解剖跨域差异问题,只给出目标域中少量的标注,就能够在 X 光血管造影图像分割中使用视网膜血管图像,在心脏 MR 图像分割中使用眼底图像,如下图所示。

前置知识 

Semi-supervised Learning

在半监督学习中,一个典型的例子是 Mean-Teacher。与对抗网络类似,其整体架构包含了两个网络:teacher 网络和 student 网络。不过与对抗网络不同的是,这两个网络结构是相同的,teacher 网络参数通过 student 网络计算得到,student 网络参数通过损失函数梯度下降更新得到。

(1)teacher 网络参数更新:整个训练过程中 teacher 网络的参数通过 student 网络参数的 moving Average 更新:

(2)student 网络参数更新:通过梯度下降更新参数得到损失函数包含两部分:第一部分是有监督损失函数,主要是保证有标签训练数据拟合;第二部分是无监督损失函数,主要保证 teacher 网络的预测结果与 student 网络的预测标签尽量的相似。由于 teacher 的参数是 student 网络参数的 moving Average,因此要求不管什么样本预测标签都不应该有太大的抖动,类似于对标签做了平滑,保证其输出结果更具有稳定性,无标签数据也可以构造该损失函数。

 假设有一批训练样本 x1,x2,其中 x1 是有标签数据,x2 是无标签数据。具体训练过程如下:步骤一,把这一批样本作为 student 网络输入,然后分别得到输出标签 ys1 和 ys2;步骤二,损失函数 L1,对于有标签样本 X1,构造分类损失函数;步骤三,损失函数 L2,通过 student 网络参数,更新计算 teacher 网络参数,并把样本 x1,x2 输入 teacher 网络,得到预测标签 yt1,yt2,然后构造防标签抖动,连续性损失函数(直接采用 MSE 损失函数);步骤四,根据 L=L1+L2 进行梯度下降,求解更新 student 网络参数。

迁移学习 

【TL学习笔记】1:领域自适应(Domain Adaptation)方法综述_LauZyHou的博客-CSDN博客

【迁移学习】Domain Adaptation系列论文解析(不断更新中) - 知乎 (zhihu.com)

2012年的SJ Pan的综述里将迁移学习按照有标记的样本的情况分为下面三大类,可以解决不同的问题。 

在这里插入图片描述

 Domain Adaptation是一种源任务和目标任务一样,但是源域和目标域的数据分布不一样,并且源域有大量的标记好的样本,目标域则没有(或者只有非常少的)有标记的样本的迁移学习方法。这样就是怎么把源域上从大量的有标记样本中学习的知识迁移到目标域上,来解决相同的问题,而目标域上能利用的大多只有没有标记的样本。
领域自适应里面,如果源域和目标域距离太大(比如源域是文字,目标域是图像),就可能需要进程多步的迁移,将这个非常大的迁移划分成一步一步的小段迁移,这就是下图中的多步领域自适应(Multi-step DA) 通过选择合适的中间域来转换成一个个单步领域自适应(One-step DA)。单步迁移又可以根据源域和目标域数据情况可以分成同质(Homogeneous,即数据空间一样,只是数据分布不一样)和异质(Heterogeneous,数据空间都不同)两种。

 在同质或者异质的DA中又分别可以根据目标域数据的打标签情况分为监督的、半监督的、无监督的DA

Domain Adaptation

在这一部分我们只做思路介绍,不做论文中具体例子的讲解。其目标就是将原数据域(source domain)尽可能好的迁移到目标域(target domain),Domain Adaptation 任务中往往源域和目标域属于同一类任务,即源于为训练样本域(有标签),目标域为测集域,其测试集域无标签或只有少量标签,但是分布不同或数据差异大,具体根据这两点可以划分为:

  • homogeneous 同质:target 与 source domain 特征空间相似,但数据分布存在 distribution shift。
  • heterogeneous 异构:target 与 source domain 特征空间不同。
  • non-equal:空间不同且数据偏移,这种就属于差异很大的情况了,可借助中间辅助 data 来 bridge the gap,用 multi-step / transitive DA 来解决。

这也是与 Pre-traning 不一样的地方,现在流行的 Pre-traning 技术也需要后期的很多数据才行。但由于 DA 的目标域是没有标签的,那么如何使在源于训练得到的模型也能够被目标域使用呢?很自然的想法是将源域和目标域映射到一个特征空间中,使其在该空间中的距离尽可能近。于是产生了三大类方法:

  • 样本自适应,对源域样本进行加权重采样,使得重采样后的源域样本和目标域样本分布基本一致,然后在重采样的样本集合上重新学习分类器,即把源域和目标域相似的数据直接加权然后再训练。这种方法虽然简单但太过依赖于设计和经验。
  • 特征层面自适应,将源域和目标域投影到公共特征子空间,在子空间中两者的数据分布一致。
  • 模型层面自适应,对源域误差函数进行修改,考虑目标域的误差。主要有两种方式,一是直接建模模型,但是在模型中加入 “domain 间距离近” 的约束,二是采用迭代的方法,渐进的对目标域的样本进行分类,将信度高的样本加入训练集,并更新模型。

技术手段主要分为 Discrepancy-based(空间距离近)和 Adversarial-based(混淆空间)。

请添加图片描述

Contrastive Learning

对比学习是一种自监督的学习方法,旨在通过学习相似和不相似的样本之间的差异,从而为后续的下游任务提供有用的特征。在这篇论文中,使用对比学习方法进行跨解剖域自适应,旨在训练一个能够提取具有域不变性的特征的模型。这种方法与以往的对比学习方法不同之处在于,它是用于解决跨域问题的,并且它特别强调了模型应该在相似的解剖结构之间提取全面的特征。通过这种方法,可以训练出一个能够在不同解剖域上具有较好性能的模型。

CS-CADA 方法 

CS-CADA 方法的实现流程,主要由三部分组成,分别是 DSBN、SE-MT 和跨域对比学习模块。橙色圆圈和蓝色圆圈分别表示源域和目标域经过 DBSN 处理后的特征,因为 DBSN 的设计,每个域上会输出两种特征。

Joint Learning with Domain-Specific Batch Normalization(DSBN)

源域和目标域之间存在差异,如果直接使用来自这两个域的数据进行训练,则会受到域间统计变化的影响,从而无法学习到通用的特征表示。为了解决这个问题,提出了一种称为 DSBN 的方法,在网络中引入了两种不同的批归一化,分别用于处理两个域中的数据。通过采用这种方法,可以更好地处理源域和目标域之间的差异,并从中学习到更通用的特征表示。DSBN 会对每个域中的特征进行归一化,并使用特定于该域的参数来对其进行仿射变换。同时,卷积核在两个域之间是共享的,以学习到更通用的表示。

模型中有编码器和解码器两部分,分别共享卷积参数 𝜃𝑒𝑛 和 𝜃𝑑𝑒。在 DSBN 方法中,{𝛾𝑑, 𝛽𝑑} 表示在域 𝑑 中的一组可训练参数。对于源域,参数集合可以表示为 ΘS = »𝜃𝑒𝑛, 𝜃𝑑𝑒, 𝛾S, 𝛽S…,对于目标域,参数集合可以表示为 ΘT = »𝜃𝑒𝑛, 𝜃𝑑𝑒, 𝛾T, 𝛽T…。DSBN 方法提供了处理域特定分布和将风格特征映射到公共空间的域特定变量,通过执行单独的特征归一化,可以有效地减少域间差异。在训练期间,DSBN 分别计算每个域的特征的均值和标准差。对于每个域,使用 DSBN 来进行白化输入激活,并在测试阶段使用移动平均估计(EMA)。这种方法可以使不同域之间的数据分布更加一致,提高模型的跨域泛化能力。给定源域 S 和目标域 T 中的图像 - 标签对,定义了一个监督损失函数来联合优化这些参数集合。

分割损失,由交叉熵损失和 Dice 损失组成。具体来说,交叉熵损失用于测量预测的类别分布与真实类别分布之间的差异,而 Dice 损失用于测量预测边界的相似性。通过联合优化参数集和这个损失函数,可以在源域和目标域之间实现高质量的图像分割。

上面提到的 EMA,是一种常见的数据平滑技术,用于减少数据的噪声和波动性。它通过对最近数据的加权平均来计算平均值,其中较新的数据被赋予更高的权重,而较旧的数据则具有较低的权重。这使得 EMA 能够比简单平均更好地反映数据的趋势和变化。EMA 通常用于计算参数的指数加权平均值,这可以使参数更新更平稳,从而减少过拟合。在测试阶段,EMA 通常用于计算移动平均值以估计某些统计量,如平均值和标准差。

Self-Ensembling Mean Teacher (SE-MT) with DSBN

这一部分就是我们在前置知识中介绍的内容,可以结合 CS-CADA 的流程图理解,涉及到一个无标签的损失函数:

 即将学生网路和教师网路的输出计算 MSE。

Cross-Domain Contrastive Learning

一个用于解决源域和目标域之间差异和上下文变化的跨域对比学习策略。如最上面的 CS-CADA 流程图,为了在保持对不同图像鲁棒性的同时捕捉相似解剖结构的域不变特征,该方法使用非线性投影将编码器的输出进行投影,得到高级特征表示。通过对源域图像和目标域图像的标准化特征表示进行比较,建立了正负样本对,其中正样本对应相似的解剖结构,负样本对应不同的图像样式。通过自监督对比损失函数定义了源域到目标域对比损失和目标域到源域对比损失,最终得到了交叉域对比损失函数。该方法可以使特征表示更容易迁移到目标域并提高分割性能。

源域到目标域的对比损失如下:

 目标域到源域的对比损失如下: 

 最后两者取均值.

网络的总损失: 

实验

参考  

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值