4实验
4.1 SOTA 对比
表1
UDA上的大部分工作使用DeepLabV2和ResNet-101 Backbone。有趣的是,更高的Oracle性能并不一定会提高UDA
性能,这在表1中的DeepLabV3+中可以看到。一般来说,研究的最新CNN架构并没有提供比DeepLabV2更好的UDA性能。
然而,作者确定了基于Transformer
的SegFormer
是一个强大的UDA架构。它显著提高了仅使用源代码/UDA
/oracle
训练的mIoU,从34.3/54.2/72.1增加到45.6/58.2/76.4。作者认为,特别是更好的SegFormer
的域泛化(仅源训练)对于提高UDA
性能是有价值的。
表2
表2显示,SegFormer
的轻量级MLP解码器相对于UDA
性能略高于较重的DLv3+解码器
(76.2% vs . 75.2%)。然而,对于良好的UDA
性能的关键贡献来自于Transformer MiT编码器
。用ResNet101
编码器替换它会导致UDA
性能的显著下降。尽管由于ResNet
编码器的感受野变小,oracle
的性能也会下降,但对于UDA
来说,相对性能从76.2%下降到71.4%是不成比例的。
表3
因此,进一步研究了编码器架构对UDA性能的影响。在表3中比较了不同的编码器的设计和大小。可以看出,更深层次的模型可以实现更好的source-only
和相对性能,这表明更深层次的模型可以更好地概括/适应新的领域。这一观察结果与关于网络架构的鲁棒性的研究结果相一致。
图3
与CNN编码
器相比,MiT编码器
从源域训练推广到目标域。总的来说,最好的UDA mIoU是由MiT-B5编码器
实现的。为了深入了解改进的泛化效果,图3可视化了目标域的ImageNet特征。尽管ResNet
对stuff-classes的结构稍微好一些,但MiT在分离语义上相似的类(例如所有车辆类)方面表现出色,而这些类通常特别难以适应。
4.2 消融实验
1、Learning Rate Warmup
从表4可以看出,学习率Warmup
显著提高了UDA
和oracle
的性能。
2、Rare Class Sampling (RCS)
图4
当为UDA训练SegFormer时,观察到一些类的性能依赖于数据抽样的随机种子,如图4中的蓝色IoU曲线所示。源数据集中受影响的类没有充分表示。有趣的是,对于不同的种子,自行车类的IoU在不同的迭代中开始增加。
假设这是由抽样顺序造成的,特别是当相关的稀有类被抽样时。此外,IoU越晚开始训练,该类的最后IoU就越差,这可能是由于在早期迭代中积累的自训练的确认偏差。因此,对于UDA,尽早学习稀有的类别尤为重要。
图5
为了解决这个问题,所提出的RCS增加了罕见类的抽样概率。图4(橙色)显示RCS导致骑行者/自行车的mIoU更早增加,最终mIoU更高,与数据抽样随机种子无关。这证实了假设,即(早期)对稀有类的抽样对于正确学习这些类很重要。
3、Thing-Class ImageNet Feature Distance(FD)
表5
图6
虽然RCS提高了性能,但事物类的性能仍然可以进一步提高,因为在UDA训练后,一些在ImageNet特性中分离得相当好的对象类(见图3右)混合在一起。在调查早期训练期间的IoU时(见图5橙色),观察到列车Class的早期性能下降。
假设强大的MiT编码器过度适合于合成域。当使用建议的FD进行正则化训练时,避免了性能下降(见图5绿色)。其他困难的Class,如公共汽车,摩托车和自行车受益于正规化(图6中的第2行和第4行)。总体而言,UDA的性能提高了3.5mIoU(表5中的第2行和第6行).
注意,仅将FD只应用于经过ImageNet特性训练的类,对其良好的性能很重要(cf。第5行和第6行)。
4.3 DAFormer Decoder
5参考
[1].DAFormer
6推荐阅读
ResNet50 文艺复兴 | ViT 原作者让 ResNet50 精度达到82.8%,完美起飞!!!