1.摘要
尽管经过多年的研究,域外泛化仍然是语义分割深度网络的一个关键弱点。以前的研究依赖于静态模型的假设,即一旦训练过程完成,模型参数在测试时保持固定。在这项工作中,我们用一种自适应的语义分割方法来挑战这一前提,该方法根据每个输入样本调整推理过程。自适应在两个层次上运行。首先,它采用自监督损耗,根据输入图像定制网络中卷积层的参数。第二,在批量标准化层中,自适应近似整个测试数据的平均值和方差,假设不可用。它通过在训练和来自单个测试样本的参考分布之间进行插值来实现这一点。为了实证分析我们的自适应推理策略,我们开发并遵循了一个严格的评估协议,解决了以前工作的严重局限性。我们的广泛分析得出了一个令人惊讶的结论:使用标准的训练程序,自适应显著优于强基线,并在多领域基准上设置了新的最先进精度。我们的研究表明,自适应推理可以在训练时补充模型正则化的既定实践,以改进对域外数据的深度网络泛化
2,引言
最近对现有领域泛化方法的研究[22]得出了一个清醒的结论:经验风险最小化(ERM)使得训练和测试样本的i.i.d.假设仍然具有高度竞争力。这与图像分类[4]、[20]、[38]、[72]和语义分割[1]、[64]、[73]领域自适应领域的明显进步形成鲜明对比。然而,这种设置假设在训练时可以访问未标记的测试分布,而在这里考虑的泛化设置中,在推理时只能访问一个测试样本,并且后续测试样本之间不必共享任何知识[55]。
在这项工作中,我们从自适应的角度研究了合成数据[50]、[51]中语义分割的泛化问题。与之前修改模型架构[45]或训练过程[12]、[13]、[76]的工作形成鲜明对比的是,我们保持训练阶段不变,但使用受域自适应方法[1]、[35]启发的技术替代标准推理过程。我们称之为自适应的技术利用了自监督损失,允许通过少量参数更新来适应单个测试样本。作为这些基于损失的更新的补充,自适应将训练数据的特征统计与批量归一化层[27]中测试样本的特征统计相结合,这在现代卷积神经网络(CNN)[24]中常用。
根据相关研究[52]中的先前结论,我们发现这种归一化策略不仅提高了分割精度,而且提高了预测置信度的校准质量。
总之,我们的贡献如下:
我们将模型泛化描述为一种新的自适应过程,其中模型推理根据每个输入样本进行调整
我们开发了一种自我监督损失,允许卷积层通过几次更新迭代将其参数适应测试图像
我们分析并扩展了以前在分布外泛化背景下的批量归一化研究。这使我们能够设计一种有效的自适应标准化(SaN)策略,大大提高了模型精度和分布外数据的校准
(对推理、测试、过程进行的更改)
我们回顾了先前研究中使用的实验方案,并强调了可能导致扭曲结论的重要缺陷。根据相关领域的最佳实践[22],我们提出了一个严格的修订,我们在实验中遵循该修订
我们对我们的自适应过程进行了广泛的分析,结果表明,在所有基准情景中,分布外准确度都比基线有了一致和显著的提高。自适应在分割精度方面产生了一种新的技术状态,在几乎所有考虑的设置中大大超过了以前的工作。
作者认为这个工作有助于语义分割模型泛化的最新研究,并涉及特征归一化[45]、[52]和在线学习[55]的研究。不同于之前研究的训练策略、模型设计。
以前的方法假设在训练[12]、[13]、[76]期间访问真实图像的分布(与仅用于主干网的预训练相反),或者需要修改网络架构[45]。我们的工作不需要这两种方法,因此,所提出的技术甚至在事后应用于已经(预)训练的模型,以改进它们的泛化。
3.方法
过程描述:基于单个测试样本,通过使用多尺度版本增加原始输入来创建一批图像。还为每个比例添加了水平翻转和灰度版本。为了将每个版本的结果输出变换回原始图像,对每个预测应用相应的仿射逆变换。然后,平均预测的软最大概率,并使用类相关置信阈值创建伪标签。通过最小化伪标签的交叉熵损失w.r.t来更新模型参数,并在产生最终预测之前重复此过程少量迭代Nt。然后丢弃更新的模型。
我们的方法,如图1,使用数据增强作为每个测试样本创建小批量图像的方法。在原始测试图像的基础上,我们首先通过多尺度、水平翻转和灰度化创建一组N个增强图像。这些增强图像用于形成一个小批量,通过CNN提供。我们使用逆仿射变换将模型中生成的softmax概率转换回原始像素,并将结果表示为minibatch中每个样本。模型有多个预测。通过阈值。我们使用依赖于类的阈值tc忽略低置信度预测。
测试图像的伪地面真值u用于使用交叉熵损失,通过梯度下降对Nt迭代的模型进行微调。我们根据验证数据集确定所有超参数,即尺度分辨率、阈值ψ、迭代次数Nt和学习率η,该数据集与测试域不同(见第5节和第6.3节待进一步讨论)。在自适应过程之后,我们使用更新的模型权重生成单个最终预测。为了处理下一个测试样本,我们将这些权重重置为初始值,因此模型无法获得关于完整目标数据分布的知识。该过程中的一个自然考虑因素是语义图中置信度校准的质量,因为argmax操作和阈值应用旨在仅选择最有置信度的像素预测。如果置信度值被错误校准(例如,由于域偏移),则相当一部分不正确的像素标签将最终出现在伪掩模中。
自适应归一化
与利用整个目标分布或多个样本的AdaBN和p-BN不同,我们对模型泛化的研究仅规定了对单个目标示例的访问(即,我们的模型在推理时接收作为输入的示例)。AdaBN和p-BN对此设置的一个自然扩展是简单计算每个样本的统计数据,这相当于在模型训练后用实例归一化(IN)层[60]替换BN层。然而,这可能会导致另一种极端的协变量变化。首先,样本统计只能作为完整测试分布的近似值。其次,这种替换可能会显著干扰训练网络的中间层中激活的统计。因此,不足为奇的是,用IN层简单地替换BN只会在实践中损害模型的辨别力[45]。在这里,我们采用了一种更具原则性的方法,并提出了一个理论上建立的域转移模型,该模型易于实现,在实践中效果令人惊讶。
自适应归一化(SaN)
高斯位移插值, 相关的一阶矩和二阶矩通过公式八的线性插值获得;
我们集成了这个域转移模型,以改善BN层的测试时间行为。考虑一个一维设置,其中f0和f1是正态分布的p.D.f.s*,由CNN中的BN层建模。让源均值ˆµs和方差710σ2s表示训练时样本统计的运行平均值,这也定义了密度f0(即,在α=0时)。如果我们有足够的统计数据ˆ。然而,在测试时,我们只能获得样本估计值µt和σ2t,由目标分布的单一数据提供:
我们的域转移模型假设,等式(9)中的测试样本估计值µt和σ2t定义了参考p.d.f.f1,而等式(7)中构建的fα对于某些未知α更接近于目标域整体的真实密度函数∈ (0, 1). 使用等式(8),在推断时,我们计算新的平均值和方差
为了规范化测试样本的特征,在等式(6)中,我们将µ和σ2替换为计算的µt和σ2t。值得注意的是,这不会影响BN层在训练时的行为,只适用于测试时。由于这种方法将源域中以运行统计信息的形式出现的归纳偏差与从单个测试实例中提取的统计信息相结合,这是一个无监督的过程,因此我们将其称为自适应归一化(SaN)。
4.设计原则性评估
以前评估方法不一,设计自己原则。
我们的第一个原则是:
A.测试集必须包含多个域。因为,之前的一些作品仅使用单个目标域Cityscapes]进行测试。因此仅部分代表了世界的视觉多样性。
B、 所有测试域必须使用单个模型。因为,每个选定的模型可能偏向于选定的目标领域,因此可能不表示具有较强的泛化能力。
C、 模型选择不得使用测试集中的图像。
D、 必须明确指定验证集 c,d 因为,许多工作并没有明确定义模型选择策略,例如使用的验证集。事实上,由于缺乏既定的协议,最近的工作[25]甚至使用测试域进行超参数调整。这在研究模型泛化时尤其不可取。
5.实验
源数据。GTA[50]和SYNTHIA[51]。这些数据集显示了与真实图像的视觉差异(即域偏移)
验证集。对于模型选择和超参数调整,使用WildDash[77]的验证集。
多目标评估。在模型选择之后,我们在三个目标域上评估了单个模型,这三个域包括Cityscapes[15]、BDD[75]和IDD[61]的验证集。
实验结果;
6.总结
传统学习原则ERM所依据的i.i.d.假设意味着,除非我们对测试分布做进一步假设,否则依赖于它的培训过程不太可能产生对任意领域转移鲁棒的模型。在非分布场景中,测试域未知,因此很难制定此类假设。为了回避这个问题,我们提出并研究了一种自适应推理过程。我们还强调了先前工作中使用的实验协议中的一些缺点。通过遵循机器学习研究的最佳实践,我们制定了四个原则,定义了领域泛化的严格评估过程。我们在实验中实施并遵循了这些原则。我们的分析清楚地表明,来自测试领域的单个样本已经足以显著改善模型预测。尽管训练过程或模型结构没有改变,但我们的实验所显示的精度改进是显著的,这与之前的工作不同[13],[76]。我们希望这些令人鼓舞的结果将激励我们的研究团体在其他应用领域研究自适应技术,例如全景分割或单目深度预测。我们在这项工作中提出的自适应的具体实例还不是实时的。我们在第6.6节中广泛分析了现有的与分割精度的权衡,发现自适应比模型集成更具成本效益,模型集成是机器学习中广泛采用的框架。然而,我们的工作范围是严格证明具体的准确性优势,这将使提高模型效率成为未来工作中值得追求的目标。事实上,减少自适应推理的延迟是一个有趣的研究途径。使用自适应步长、高阶优化[7]、[31]或隐式梯度[48],我们可以减少所需更新步骤的数量。正交研究线可以考虑低精度计算[68]、低秩分解[28]或交替更新策略[58],以减少每次更新迭代的计算足迹。我们很高兴探索这些方向,并希望读者能发现这部作品同样鼓舞人心。