本文来源公众号“集智书童”,仅用于学术分享,侵权删,干货满满。
原文链接:UniMatch V2 推进半监督语义分割极限,以更低训练成本实现更优的语义分割结果 !
半监督语义分割(Semi-supervised semantic segmentation, SSS)的目标是利用便宜的无标签图像学习丰富的视觉知识,以提高语义分割能力。在最近的的工作中,UniMatch [1]极大地改进了其先驱,通过放大弱到强的一致性正则化实践。后续的工作通常遵循类似的工作流程,并提出各种精致的设计。
尽管已经取得了进步,即使在大量强大的视觉模型四训练中,几乎所有的SSS工作仍然坚持1)使用过时的ResNet编码器进行小型ImageNet-1K预训练,2)在简单Pascal和Cityscapes数据集上进行评估。
在本工作中,作者认为,有必要将SSS的 Baseline 从基于ResNet的编码器切换到更强大的ViT基编码器(例如,DINOv2),这些编码器在大规模数据上进行预训练。对编码器进行简单的更新(即使使用2倍较少的参数)可以带来比仔细设计方法更大的改进。
在这个有竞争力的 Baseline 上,作者提出了作者的升级和简化的UniMatch V2,它继承了V1的弱到强一致性核心精神,但需要更少的训练成本,并提供一致更好的结果。
此外,见证了Pascal和Cityscapes性能的逐渐饱和,作者呼吁作者应专注于具有复杂分类树的高端基准,如ADE20K和COCO数据集。
代码、模型和所有报告值的日志,均可在https://github.com/LiheYoung/UniMatch-V2中找到。
1 Introduction
语义分割[2, 3, 4, 5]在场景理解中起着重要作用,它为像素级类别预测提供了基础。然而,要学习一个强大的语义分割模型,需要大量的密集标注。例如,仅用19个类别对Cityscapes[6]中的单个图像进行标注就需要大约1.5小时。这一限制在缺乏足够标注的情况下,大大阻碍了在关键应用中部署高级模型的进程。因此,为了减轻人工标注员的负担并降低标注成本,半监督语义分割(SSS)正日益受到关注。SSS的目标是使用少量标注图像来训练模型,并充分利用更多未标注图像的优势。最近最具有代表性的工作之一是 Segment Anything[7]。它设计了一个半监督数据引擎,逐步从小型人工标签扩展到自动生成的巨大规模伪标签。这种方法是通用的,可以应用于许多场景[8]。在本工作中,作者特别关注半监督语义分割任务,该任务近年来得到了广泛研究,涵盖了广泛的领域,如自然图像理解,医学图像分析,遥感解释等等。
SSS(半监督学习)的核心问题是如何有效利用未标注图像。现有工作大多遵循伪标签(也称为自训练)[21, 22]的方法。模型首先从标注图像中获取初始的语义分割能力,然后将伪标签(即模型预测)分配给未标注图像以扩大可用训练样本。这种伪标签 Pipeline 可以在线下(即多个阶段)或在线(即端到端)进行。在离线 Pipeline [20]中,只有在模型在标注图像上充分训练后,才会执行伪标签步骤。相比之下,对于在线 Pipeline [21],模型在每个训练迭代中为采样的未标注批预测伪标签。从训练开始,模型就在手动标注图像和伪标签图像上进行联合优化。离线和在线路线图在过去的几年中都有很大的发展。
追溯到三年前,ST++ [20] 表明,只要为 未标注 图像注入适当的强数据增强,一个简单的离线自训练 Pipeline [21] 实际上优于以前的在线方法 [23, 24]。尽管这种离线策略可以确保伪标签的质量,但它并不优雅,需要三个独立的阶段。因此,UniMatch [1] 重新审视了弱到强的一致性正则化,这是 FixMatch [25] 最初在半监督分类中简化和普及的。作为一种优雅的在线自训练框架,FixMatch 在对清洁图像(例如裁剪)进行弱化增强(例如颜色抖动)后估计伪标签,并使用这些标签来监督对应于强烈增强(例如颜色抖动)的图像的训练。为了选择可靠的学习伪标签,它预定义了一个置信度阈值,并排除了不满足这一标准的模型预测。尽管它很简单,并在此前五年被提出,但UniMatch 表明,如果配备了强大的空间增强(例如 CutMix [26]),FixMatch 仍然在 SSS 中是一个高度竞争力的 Baseline ,它在2023年之前显著优于所有先前的精细设计方法。
FixMatch [25] 利用丰富的视觉知识,通过在具有强烈增强的 未标注 图像上进行训练。然而,这些强烈增强在输入空间中受到限制,即仅对原始图像进行颜色和空间畸变。这阻止了模型在更广泛的增强空间下追求不变的表示。因此,为了进一步推广 FixMatch 中弱到强的一致性,UniMatch [1] 采用了一个额外的特征级增强流作为输入级流的补充。它发现中间特征上的最简单的通道级 Dropout [27] 效果最好。此外,为了完全探索原始输入级增强空间,它在输入级设计了双流增强策略。通过随机数据增强池,从共享的弱增强版本中联合采样两个强烈增强的图像。它们以两个并行流进入模型进行训练。由于这两个关键实践(特征级增强和双流增强),UniMatch 显著提高了 FixMatch 的性能。由于其简单性和易于复制的强大结果,许多后续工作在 SSS 直接构建其框架,或者使用 UniMatch [28, 29, 30, 31] 更基本的 FixMatch [12, 32] 复制。
然而,在检查了SSS领域最近的工作后,作者发现它们的方法正在变得越来越复杂。更重要的是,即使有了这些精心设计的模块,在像Pascal和Cityscapes这样的数据集上的性能通常也只能提高近0.5%。作者可以预计,如果作者继续这样下去,这个领域未来的工作将很难在提高当前最先进(SOTA)结果上取得更大的进步。因此,仅仅因为“不是SOTA”,他们将在发表自己的作品时遇到困难。这将极大地阻碍新想法或新框架的蓬勃发展。作为基础研究主题,SSS的发展可以提供有价值的洞察力和指导,帮助作者如何在实际计算机视觉(CV)应用中有效地利用 未标注 数据 [7, 33, 34, 8]。因此,作者认为重新探索新的有意义的研究路线图对于未来SSS研究是迫在眉睫的。
回顾SSS的发展,许多“设计新颖方法”的工作已经发表。在早些年,新方法可以带来比5%以上的显著改进[10]。然而,近年来,作者不再观察到如此显著的进步。大多数工作只略微改进了他们的先驱(约0.5%)。这表明作者几乎接近了当前模型或评估基准的潜力上限。同时,跳出作者狭窄的SSS领域,在过去的几年里,更广泛的CV社区见证了在1)新的模型架构上取得了巨大的进步,例如视觉 Transformer,更好的卷积网络[38, 39],2)更好的预训练策略[40, 41, 42],特别是视觉单独的自监督学习方法[43, 44, 45, 46, 47],以及3)利用超大规模数据(超过100M)进行预训练[40, 47, 48, 49]。尽管取得了令人兴奋的进步,遗憾的是,它们中的任何一个都没有很好地整合到作者的SSS领域。最近的SSS工作仍然停留在过时的ImageNet-1K预训练ResNet编码器[50]上。在一定程度上,这是可以理解的,因为大多数以前的SSS工作都使用相同的编码器建立了比较基准。使用新的架构重新基准现有方法将会是冒险和昂贵的。然而,为了使SSS工作产生更广泛的影响,作者认为这样做是值得和紧迫的,因为从这些具有小规模预训练的过时编码器中获得的洞察,不能保证可以安全地转移到具有大规模预训练的现代架构中。
在最近的SSS工作中,有两个例外,它们摒弃了ResNet编码器。一个是SemiVL [31],它基于CLIP-ViT-B模型[40]构建;另一个是AllSpark [32],使用了MiT-B5 [52]预训练编码器。尽管它们向前迈进了一步,但它们使用的编码器并不足够强大。而且,它们的实验并不充分,无法涵盖所有数据集和微调策略。
在本工作中,作者旨在利用最强大的预训练模型DINov2 [47]重新构建一个全面的新基准,以进行半监督语义分割。得益于其大规模精选数据和先进的训练策略,DINov2在各种场景中表现出色,例如分类和密集匹配。如图1所示,仅对预训练编码器进行简单的更新,从ResNet-101更改为DINov2-S(甚至参数减少2倍),在Pascal数据集上将UniMatch [1]性能提高超过3%,在Cityscapes数据集上提高4%。DINov2-B比其他类似规模的编码器(如CLIP-B [40]和MiT-B5 [52])强得多。为结果所震撼,作者使用DINov2重新进行了UniMatch V1 [1]及其 Baseline FixMatch [25]的所有核心实验。
基于这个强大的 Baseline (UniMatch + DINov2),作者进一步提出了作者的升级和简化的UniMatch V2。它继承了V1中弱到强的一致性正则化核心精神。然而,与V1不同,V2使用更少的强烈增强流进行学习。将特征 Level 的Dropout和输入 Level 的增强融合到一个单独的流中。此外,为了充分探索联合增强空间,作者在特征 Level 设计了一个互补Dropout。将特征图沿着通道维度分解成两个不重叠且互补的集合。这两个非重叠的特征集可