【半监督图像分割 2023 】BHPC
论文题目:Semi-supervised medical image segmentation via hard positives oriented contrastive learning
中文题目:通过面向硬阳性的对比学习进行半监督医学图像分割
论文链接:
论文代码:https://github.com/PerPerZXY/BHPC
论文团队:
发表时间:
DOI:
引用:
引用数:
摘要
半监督学习(Semi-supervised learning, SSL)是解决模式识别和医学图像分割中标注稀缺性问题的常用技术,主要集中在两个关键问题上:1)学习结构良好的可分类嵌入空间
,2)建立嵌入空间到像素空间的鲁棒映射
。
-
在本文中,为了解决第一个问题,我们提出了一种
硬正定向对比(HPC)学习策略来预训练基于编码器-解码器的分割模型
。与传统的对比学习倾向于只关注硬阴性不同,我们的HPC学习策略还关注硬阳性(即具有相同类别但与锚点不同特征表示的样本),这被认为在为半监督医学图像分割提供判别知识方面发挥更重要的作用。具体来说,HPC由两个层次构成,包括无监督图像级HPC (IHPC)和监督像素级HPC (PHPC),使编码器学习的嵌入空间具有局部和全局感知。特别是,PHPC学习策略以基于区域的方式实现,在提供更多多粒度信息的同时节省了内存使用。
- 针对第二个问题,我们在
预训练的解码器中插入了几个特征交换(FS)模块。这些FS模块旨在扰动中间嵌入空间到像素空间的映射,试图鼓励更稳健的分割预测
。 - 在两个公共临床数据集上的实验表明,我们提出的框架在很大程度上超过了最先进的方法。
1. 介绍
医学图像分割是计算机视觉和模式识别的一项基本任务,近年来随着深度学习(DL)的发展取得了重大进展[1-3]。通过使用大量标记数据进行训练,这些基于数据驱动的基于深度学习的方法可以以全监督的方式生成有希望的分割结果。但在临床中,医学图像的标注耗时长,专业性强,这对上述全监督方法提出了现实挑战。为了缓解标注稀缺性的问题,一个可行的解决方案是采用基于半监督学习(SSL)的方法来有效地利用标记和未标记的数据
一般来说,分割方法的一个关键问题是学习一个结构良好的嵌入空间,使每个像素可以轻松准确地分类。但是,对于SSL设置,这可能更具挑战性,因为几乎没有像素级监督。为此,一些研究工作致力于探索有效的预训练策略,使分割模型能够从嵌入空间中提取判别特征,从而大大提高SSL的性能[4]。其中,对比学习(CL)以其强大的提取能力受到了表征学习界的广泛关注没有注释的判别特征。CL的核心思想在于,给定一个锚点样本,鼓励语义相似的样本(或阳性)聚集在锚点周围,而不相似的样本(或阴性)则被迫远离锚点。基于这一理念,CL已被证明对图像分类等许多图像级下游计算机视觉任务是有益的[5]。为了使CL适应语义分割等密集预测任务,一些研究试图通过对比局部像素级表示而不是全局图像级表示来定制像素级CL以适应分割任务[6,7]。此外,一些艺术[8,9]试图从局部层面和全局层面形成双层CL方案,进一步提升CL的性能。由于局部和全局线索对于学习有意义的分割嵌入空间都很重要,因此这些具有双级别方案的方法通常比仅关注单级别CL的方法有显着改进。
尽管如此,大多数现有的基于对比学习的方法都是简单而统一地根据类别等固有设置构建正、负样本,并对其进行平等对待,没有进行有效的区分(如图1(a)所示),忽略了正、负样本聚类内部的分布差异
。考虑到分布边缘的样本更靠近决策边界,Robinson等[10]提出了对硬负(靠近锚点的负,如图1(b)所示)进行更多约束,并揭示了它们有助于将学习到的知识空间向决策边界扩展。此外,之前在自然图像分类/分割任务方面的一些工作(Alonso等[11];Wang等人[12]也证实了硬否定对度量学习至关重要。然而,硬阳性(远离锚点的阳性,如图1©左侧所示)的巨大潜力在大多数当前分割模型中仍未得到充分开发。特别是在医学图像分割领域,这个问题更值得关注,因为硬阳性比硬阴性出现的频率更高。直观地说,更多硬正面的原因来自以下两个因素。一方面,由于医疗数据采集的程序、设备或实验参数的异质性,同一器官/类别在不同的图像/病例中往往具有巨大的特征差异。另一方面,即使是同一幅图像,由于边缘不清晰和可能存在的噪声,同一器官/类别的不同区域的像素级特征也会有很大差异。上述两个因素经常导致错误分类,其中一些应该属于同一类(正数)的硬样本(像素)被分类到其他类中(如图2所示)。鉴于这一观察结果,我们认为硬正数也可以或更好地提供判别知识,以形成良好的嵌入空间,并从另一个角度指出医学分割任务中的决策边界(如图1©所示)。在我们的研究中,我们希望将硬负选择策略和我们提出的硬正选择策略整合到双水平CL中,并进一步使用它来预训练特定的SSL框架,而很少甚至不需要额外的监督。
除了形成结构良好的嵌入空间外,半监督分割的另一个关键问题是建立从嵌入空间到输出像素空间的鲁棒映射,当全监督模型退化为具有稀缺标记数据的半监督模型时,这可能会困难得多。为了解决这个问题,已经进行了大量的研究,开发了各种SSL策略,其中伪标签和一致性正则化
是两种常用的技术。具体而言,伪标记方法[13,4]将像素级模型预测作为未标记数据的伪标签,并使用这些生成的伪标签进行迭代自训练。然而,由于监管的限制和可能产生的噪音,伪标签的质量很难得到保证。一致性正则化尝试从另一个方面执行SSL,它假设模型预测对于不同的扰动应该是不变的。最近,MixMatch[14]和FixMatch[15]成功地将一致性正则化策略与基于伪标签的自训练框架结合起来,取得了最先进的性能。然而,这些组合研究往往只在输出水平施加一致性约束,在输入水平施加扰动,很少考虑中间嵌入空间。这种端到端的约束会给从嵌入空间到输出像素空间的鲁棒映射学习带来很大的负担。鉴于此,在中间嵌入空间中加入更多的扰动应该有利于减轻这种负担,进一步增强学习映射的鲁棒性
在本文中,为了更好地解决上述两个关键问题,我们提出了一种新的三阶段双层面的硬正性导向半监督医学图像分割的对比学习框架。前两个阶段对编码器-解码器模型进行预训练,目的是全面获得结构良好的嵌入空间。具体而言,这两个阶段都配备了一种新颖的硬阳性导向对比(HPC)学习策略,该策略创新性地专注于选择硬阴性样本之外的硬阳性样本。特别地,HPC学习策略分别从前两个阶段的两个层次构建。第一阶段采用无监督图像级HPC (IHPC)学习策略来挖掘图像级硬阳性,第二阶段采用监督像素级HPC (PHPC)学习策略来挖掘像素级硬阳性。这两个阶段共同挖掘出更多的线索来构建判别嵌入。在这种双层硬正CL结构的指导下,鼓励模型产生鲁棒表示。然后,第三阶段在基于伪标签的SSL框架上采用简单而有效的一致性正则化策略,进一步构建从嵌入空间到像素空间的鲁棒映射。该策略是通过我们提出的解码器中的特征交换(FS)模块来实现的,该模块旨在对中间嵌入空间而不仅仅是输入空间增加更多的扰动,并提高像素级建模的能力。
总的来说,我们的主要贡献有四个方面:(1)除了关注硬阴性样本外,我们还提出了一种针对硬阳性样本的新型双水平CL策略,以充分探索其中包含的判别知识,从而产生无监督IHPC学习策略和监督PHPC学习策略。通过将上述双层CL注入前两个预训练阶段,我们提出的方法可以学习具有全局和局部感觉的结构良好的嵌入空间,促进半监督分割任务的像素分类。(2)我们通过计算其在大区域和小区域内/跨区域的损失而不是单独在整个特征映射中计算损失来仔细实现PHPC学习策略。这不仅缓解了像素级对比损失对内存的过度消耗要求,而且丰富了多粒度信息,便于更全面的对比学习。(3)与大多数SSL方法仅在输入层扰动增强视图引入一致性不同,我们还设计了特征交换(FS)模块,通过交换未标记数据的部分特征对中间嵌入空间产生更多扰动,从而进一步增强了学习映射的鲁棒性。(4)在两个公共临床数据集上获得的实验结果表明,我们提出的方法在定性和定量度量方面都优于最先进的方法。据我们所知,这项工作是第一次将硬阳性策略注入到医学图像分割的双层对比学习中。
2. 相关工作
2.1 半监督医学图像分割
在临床中,由于标注成本巨大,大量未标注的医学图像未被使用。为了充分利用这些数据,许多研究都采用了半监督学习(SSL),旨在挖掘包含的知识以提高分割性能。一般来说,有两种流行的SSL范例。一种是伪标注[13,16]。例如,Fan等[13]提出先对未标记的图像进行伪标签预测,然后将这些伪标签图像与人工标记的图像一起参与分割模型的训练。通过几轮伪标签训练,模型的性能得到了提高。Seibold等[16]根据标记图像中相似的语义对偶为未标记的图像分配伪标签,在一定程度上避免了确认偏差。另一种SSL范例是一致性正则化[17,18]。例如,Li等人[17]基于均值教师模型研究了变换后的图像之间的一致性[19],提高了分割预测的泛化程度。Liu和Tan[18]提出了半监督学习的确定性驱动一致性损失(certain -driven Consistency Loss, CCL),利用一致性损失中的预测不确定性,让学生模型从可靠的目标中动态学习,与现有方法相比,性能得到了提高。此外,不确定性估计[20,21]、注意力[6]、共同训练[22]、课程学习[23]和相互学习[24]等机制被进一步纳入一致性正则化中,以确保预测的可靠性。除了上述方法外,也有研究考虑将伪标记和一致性正则化结合起来,以一种简单而有效的方式,如MixMatch[14]和FixMatch[15],并证明了它们在图像分类任务上的优越性。
2.2 对比学习
自监督学习通过从未标记的数据中学习有效的嵌入,为计算机视觉任务提供了好处。这样的成功是基于一个共识,即更高质量的嵌入可以获得更好的性能收益。近年来,自我监督学习的代表——对比学习[25,7]受到了越来越多的关注。对比学习的核心是学习一个强大的嵌入空间,可以帮助在数据集中区分相似(正)对和不相似(负)对。从这种结构良好的嵌入空间中得到的嵌入有望对下游的视觉任务做出重大贡献。如Xie等[7]提出采用全局图像和局部patch之间的对比学习,提高目标检测的性能。Chen等人[25]也提出了一种使用动量对比学习的COVID-19诊断方法,训练编码器用于特征表示和原型网络用于分类,并在两个公开可用的COVID-19 CT数据集上展示了优异的性能。与这些任务相比,语义分割需要更密集、更精细的嵌入。为此,Alonso等[11]建立了像素级的对比学习,生成局部特征嵌入进行语义分割。Yuan等人提出了一种用于弱监督语义分割(WSSS)的多策略对比学习(MuSCLe)框架,该框架利用不同层次(图像、区域、像素和对象边界)的对比样本对来改进特征表示,并在PASCAL VOC 2012数据集上实现最先进的性能。Chaitanya等[8]开发了一种两步自监督对比学习方案来学习图2。海马数据集特定扫描上分割结果的可视化。
这里展示了两种基于简单或硬负向对比学习的半监督方法进行比较,包括SCLM[4]和SimSiam (Chen和He, 2021)。可以看出,在某些情况下,它们相对容易出现将目标类分类为背景类(分割不足)或其他类(误分割)的错误(用圆圈标出),而我们提出的方法同时关注硬正和硬负样本,可以在一定程度上避免这些问题。C. Tang等。在预训练阶段从未标记数据中提取全局和局部特征。Hu等[4]进一步在类似的两步对比学习框架中引入标签信息,以获得更高质量的嵌入,提高分割性能。然而,这些方法最多考虑的是如何利用来自负样本的信息,而很少考虑硬正样本中的判别信息,这些信息也可以指示决策边界。我们认为,探索硬阳性可以进一步促进对比学习的性能,有助于为下游分割任务学习更具代表性的嵌入空间。
3. 方法
我们提出的方法的架构如图3所示,其中包括三个阶段。在第一阶段,两批增强的未标记数据被送入编码器E和投影仪P1,以获得实时图像级表示。同时,维护一个内存库M来存储先前生成的表示。在此基础上,设计了一种无监督图像级硬正定向对比(IHPC)学习策略,使编码器E能够形成结构化的特征空间。然后,在第二阶段,预训练的编码器E与解码器D和另一个投影仪P2一起接收不同的增强标记数据作为输入,以产生分割类感知嵌入。在每个嵌入中,衍生出多个大小区域,并开发了基于区域的像素级硬正定向对比(PHPC)学习策略来计算这些区域内和交叉标记像素上的损失。因此,编码器E和解码器D被赋予了生成判别特征空间进行逐像素分割的能力。最后,在第三阶段,训练有素的编码器E和解码器D进一步适应半监督医学图像分割任务。其中,我们采用自训练策略对未标记的数据生成伪标签,从而指导分割像素的预测。在此期间,提出了特征交换(FS)模块,并将其加入到解码器中,以增强嵌入空间中的扰动,提高分割预测的鲁棒性。在下面的小节中,我们将首先简要介绍硬阳性样品的原理,然后再详细说明我们方法中的每个阶段。
3.1 硬阳性样品原理
受Robinson等人[10]的启发,我们提出了硬阳性样本应遵循的两个指导原则:
原则1。所选的硬阳性图像应该与有监督情况下的锚具有相同的标签,或者与无监督情况下的锚具有相同的图像内容。
原则2。所选硬阳性体在埋设空间内应尽可能远离锚体。
简而言之,我们认为与锚点更不相似的阳性样本“更硬”。实际上,这些硬正值可以为模型训练带来更多的梯度贡献,揭示更多的判别知识[10]。基于以上两个原则,我们提出了图像级和像素级两种硬正性取向对比(HPC)学习策略,分别称为图像级硬正性取向对比(IHPC)学习策略和像素级硬正性取向对比(PHPC)学习策略。此外,我们的方法还引入了负样本来计算损耗。
为简单起见,我们在以下小节中省略了面向损失的硬消极因素,而只关注硬积极因素。
3.2 第一阶段:无监督图像级对比学习
3.2.1 处理流程
本阶段拟在无监督IHPC学习的指导下,在未标记数据上预训练编码器E,使编码器E能够生成图像级的判别特征表示。在我们的问题设置中,未标记的数据集记为 D u = { X i } i = 1 N D^{u}=\{X_{i}\}_{i=1}^{N} Du={Xi}i=1N,其中 X i ∈ R C × H × W X_i\in R^{C\times H\times W} Xi∈RC×H×W表示一个特定的图像,N为总数,C、H、W分别为 X i X_i Xi的通道号、高度和宽度。为每个输入 X i X_i Xi,我们对它进行两个不同的增广得到两个共轭图像 X i a , X i b X_{i}^{a},X_{i}^{b} Xia,Xib。然后通过编码器E和投影仪 P 1 P_1 P1将这两幅图像投影到图像级特征空间中,产生两个图像级表示 ε i , ε i + \varepsilon_{i},\varepsilon_{i}^{+} εi,εi+。上述过程的数学表达式为 ε i , ε i + = P 1 ( E ( X i a , X i b ) ) \varepsilon_{i},\varepsilon_{i}^{+}=P_{1}(E(X_{i}^{a},X_{i}^{b})) εi,εi+=P1(E(Xia,Xib))。与MoCo[26]类似,我们将 ε i \varepsilon_{i} εi作为锚样本, ε i + \varepsilon_{i}^+ εi+作为正样本。表示为 { ε j − } \{\varepsilon_{j}^{-}\} {εj−}的其他图像的表示被视为负样本。为了收集尽可能多的负样本,我们维护一个内存库M来存储它们,并用动态的 ε i \varepsilon_{i} εi更新M,同时丢弃最旧的 ε j − \varepsilon_{j}^{-} εj−。基于锚点样本 ε i \varepsilon_{i} εi、正样本 ε i + \varepsilon_{i}^+ εi+和负样本 { ε j − } \{\varepsilon_{j}^{-}\} {εj−},我们计算了IHPC学习的以下损失。
3.2.2 IHPC学习
对于对比学习,性能很大程度上取决于判别样本的构造。然而,大多数方法仅通过利用负样本来考虑这一点,而忽略了阳性中包含的强判别信息,特别是在那些硬阳性中。因此,在第一阶段,我们尝试将非浪漫的对比学习提升为IHPC学习。其核心是对特征空间中距离较远的锚正对赋予更大的权值,可以表示为:
w
1
=
exp
(
−
β
i
m
g
∗
r
1
(
ε
i
,
ε
i
+
)
)
,
w_{1}=\exp\bigl(-\beta_{img}*r_{1}\bigl(\varepsilon_{i},\varepsilon_{i}^{+}\bigr)\bigr),
w1=exp(−βimg∗r1(εi,εi+)),
其中βimg是图像级浓度超参数[27],“∗”表示元素乘法,r1(⋅)表示用于测量对(ε I, ε+ I)的距离(即硬度)的内点积。请注意,我们并没有人为地给出一个阈值来强制将样本分类为硬或不硬,而是让网络通过相似性度量来自行判断。这种加权策略可以强制编码器E更多地关注那些更难的正信息,并学习更多的图像级知识。由此,第一阶段IHPC学习的损失可表述为:
L
I
H
P
C
=
−
1
∣
A
I
∣
∑
ϵ
i
∈
Λ
I
l
o
g
exp
(
ε
i
⋅
ε
i
+
/
τ
)
∗
w
1
exp
(
ε
i
⋅
ε
i
+
/
τ
)
∗
w
1
+
∑
ϵ
j
−
∈
S
i
e
x
p
(
ε
i
⋅
ε
j
−
/
τ
)
,
L_{IHPC}=-\frac{1}{|A_{I}|}\sum_{\epsilon_{i}\in\Lambda_{I}}log\frac{\exp(\varepsilon_{i}\cdot\varepsilon_{i}^{+}/\tau)*w_{1}}{\exp(\varepsilon_{i}\cdot\varepsilon_{i}^{+}/\tau)*w_{1}+\sum_{\epsilon_{j}^{-}\in S_{i}}exp(\varepsilon_{i}\cdot\varepsilon_{j}^{-}/\tau)},
LIHPC=−∣AI∣1ϵi∈ΛI∑logexp(εi⋅εi+/τ)∗w1+∑ϵj−∈Siexp(εi⋅εj−/τ)exp(εi⋅εi+/τ)∗w1,
式中,
A
I
A_{I}
AI为图像级锚点集,
S
i
S_{i}
Si为锚点εi的负集。
ε
j
−
∈
S
i
\varepsilon_{j}^{-}\in S_{i}
εj−∈Si表示从内存库加载的相应的负样本。τ是一个温度超参数。
3.3 步骤二: 监督像素训练
3.3.1 流程
经过IHPC学习的预训练后,在监督式PHPC学习的指导下,在第二阶段的标记数据上进一步优化编码器E,形成像素级判别特征空间。在这里,我们将标记的数据集定义为 D l = { X i , Y i } i = N + 1 M \mathscr{D}^{l}=\{X_{i},Y_{i}\}_{i=N+1}^{M} Dl={Xi,Yi}i=N+1M,其中 Y i ∈ { 0 , 1 } H × W Y_{i}\in\{0,1\}^{H\times W} Yi∈{0,1}H×W表示图像 X i X_i Xi的分割标签。与第一阶段相同,我们采用相同的增强技术对Xi进行增强,从而得到成对的增强图像 X i a X_i^{a} Xia和 X i b X_i^{b} Xib。然后,我们将它们与从头开始训练的新解码器D一起发送到阶段I预训练的编码器E中,随后是另一个投影仪P2,以像素对像素的方式将D的特征映射到相应的特征 z i a z_i^a zia和 z i b z_i^b zib。这个过程可以表示为 z i a , z i b = P 2 ( D ( E ( X i a , X i b ) ) ) z_{i}^{a},z_{i}^{b}=P_2(D(E(X_i^a,X_i^b))) zia,zib=P2(D(E(Xia,Xib)))。最后,在 z i a z_i^a zia和 z i b z_i^b zib内的标记像素上计算PHPC学习的损失。
3.3.2 基于区域的PHPC学习
考虑到半监督情况下提供了多个像素级标注数据,充分利用这些已有的标注可能会为对比学习提供更可靠的指导,提高对比学习的性能。同时,以ground truth作为输入,可以提供更多标记的正负样本,这使得模型能够获得更可靠和鲁棒的上下文。因此,我们在第二阶段以监督的方式进行PHPC学习。这里,为了简单起见,我们省略了zi, zbi的上标,因为它们经历了相同的操作。具体来说,我们随机将特征映射zi的第u列、第v行处的像素级表示
z
i
(
u
,
v
)
∈
R
c
z_{i(u,v)}\in R^{c}
zi(u,v)∈Rc作为锚点样本,其中c为维数。然后选取其对应的正样本为
z
i
(
u
+
,
v
+
)
z_{i(u^{+},v^{+})}
zi(u+,v+),位于u+行和v+列,具有相同的像素标签,而其对应的负样本为
z
i
(
u
−
,
ν
−
)
z_{i(u^{-},\nu^{-})}
zi(u−,ν−),位于u¶行和v¶列,具有不同的标签。与第一阶段的IHPC学习类似,我们还通过为更不相似的锚定-正对分配更大的权重来放大硬正的贡献,这可以用以下公式表示:
w
2
=
e
x
p
(
−
β
p
i
x
∗
r
2
(
z
i
(
u
,
v
)
,
z
i
(
u
+
,
v
+
)
)
)
,
w_2=exp\big(-\beta_{pix}*r_2\big(z_{i(u,v)},z_{i(u^+,v^+)}\big)\big),
w2=exp(−βpix∗r2(zi(u,v),zi(u+,v+))),
其中
β
p
i
x
\beta_{pix}
βpix为像素级浓度超参数[27],r2(⋅)表示余弦相似度测量值。显然,正样本zi(u+,v+)离锚点zi(u,v)越远,即难度越大,则在网络学习过程中获得的关注越多。更进一步,PHPC学习的损失可以计算如下: