DAFormer: Improving Network Architectures and Training Strategies for Domain-Adaptive Semantic Segmentation

Abstract

  DAFormer包含一个Transformer编码器和一个多级别的上下文感知的特征融合解码器。使用了三种策略来稳定训练和避免源域数据的过拟合。(1) 源域数据上的稀有类采样,通过减缓自训练过程中模型对源域数据一些普通类的过拟合来提高伪标签质量。(2)一个Thing-Class图像网络特征距离。(3) 一个学习率预热机制。

Introducton

  Thing-Class ImageNet Feature Distance(FD):从多种多样的图片网络特征中蒸馏出知识来规范化源域数据上的训练。

Methods

Self-Training(ST) for UDA

首先介绍baseline的UDA方法: (1) 利用源域数据训练模型

(2) 使用教师网络来获取伪标签和标签质量估计:

(3) 通过目标域数据的伪标签以及伪标签质量估计来训练模型:

(4)更新教师模型:

其中学生模型在增强的目标域图片上训练,教师网络在无增强的目标域图片上生成伪标签。

DAFormer Network Architecture


  DAFormer是专门为UDA设计的模型,不仅获得了好的监督表现,而且提供了好的域适应能力。
  虽然Transformer的自注意和卷积都是加权和,但它们的权值计算方式不同:在cnn中,权值在训练中学习,但在测试中固定;在自注意机制中,权值是基于每对标记之间的相似性或亲和性动态计算的。因此,自注意机制中的自相似性操作提供了可能比卷积操作更具有自适应性和通用性的建模手段。(暂时没理解)
  跟随MiT的做法,将图片分成4*4的小块,为了保留语义分割的细节。为了解决高维特征的精度问题,在自注意力模块中采用了sequence reduction的方法。transformer的编码器就是设计用来产出多级别的特征图。下采样特征图采用了overlapping patch merging的方法来保护局部的连续性。
  先前的在语义分割上使用的基于Transformer的方法的解码器通常是仅仅利用了局部的信息。相反的,作者提出了在解码器上利用额外的上下文信息,提高了鲁棒性。DAFormer不仅仅考虑瓶颈特性的上下文信息,而是使用不同编码器级别的特性的上下文,因为附加的早期特性为高分辨率的语义分割提供了有价值的低级概念,这也可以提供重要的上下文信息。在特征融合之前,作者通过1×1的卷积层将每个Fi嵌入到具有相同通道数量的Ce中。双线性上采样将特征大小采样回F1的大小,并将它们连接起来。对于上下文感知的特征融合,作者使用多重平行的3×3的具有不同膨胀率的深度可分离卷积层和一个1×1的卷积层来融合它们,类似于ASPP但是没有全局平均池化层。与起初的ASPP的使用相反,作者不仅将它应用在瓶颈特征F4上,而且将它应用到融合栈中所有的多级别的特征。深度可分离卷积层的优点是相对于常规的卷积层,有更少的参数,可以减少对源域的过拟合。

Training Strategies for UDA

Rare Class Sampling(RCS)

作者认为稀有类在训练过程中出现的越晚,它的表现就越差。
RCS就是更加频繁的在源域中采样一些包含稀有类别的图片,为了使它们被学的更好,更早。计算频繁度fc:

然后开始计算采样概率:

T是一个温度系数,用来控制分布的平滑度

Thing-Class ImageNet Feature Distance(FD)

  对于使用的分割模型的初始化参数是在ImageNet数据集上训练得出的。ImageNet也包含一些真实世界的图片,对于UDA的模型很难分辨一些类(bus和car)等,作者假设ImageNet的特征可以提供一些平常预训练涉及不到的有用的指导。作者观察到,在训练的开始阶段,模型可以分辨一些类,但是训练了几百轮后,模型就忘记了这些知识。作者猜测有用的特征被LS和模型对合成数据的过拟合破坏掉了。
  为了解决这个问题,作者基于语义分割UDA模型gθ的瓶颈特征Fθ和ImageNet模型的瓶颈特征FImageNet的特征距离(FD)对模型进行了正则化处理。

ImageNet的模型大部分是在thing-classes(有明确的形状的)上训练的,而不是stuff-classes类(包含路面还有天空)。因此在算FD loss的时候需要使用Mthing来屏蔽掉一些类。


为了将标签下采样到瓶颈特征大小,对每个类通道应用补丁大小H/HF×W/WF的平均池化,当类超过比值r时保留一个类。

这确保了只考虑特征距离中包含主导事物类的瓶颈特征像素。
总的损失:

Learning Rate Warmup for UDA

根据迭代次数twarm,升温学习率:

DAFormer: Improving Network Architectures and Training Strategies for Domain-Adaptive Semantic Segme相关推荐

  1. Long Short-Term Memory Recurrent Neural Network Architectures for Large Scale Acoustic Modeling论文阅读

    <Long Short-Term Memory Recurrent Neural Network Architectures for Large Scale Acoustic Modeling& ...

  2. 应用卷积神经网络CNN预测DNA-蛋白结合位点Convolutional neural network architectures for predicting DNA–protein binding

    深度学习是机器学习研究中的一个新的领域,其动机在于建立.模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本.卷积神经网络是目前应用最为广泛之一的深度学习技术,它是一种含特 ...

  3. ENABLING SPIKE-BASED BACKPROPAGATION FOR TRAINING DEEP NEURAL NETWORK ARCHITECTURES

    能够基于脉冲的反向传播的训练深层神经网络 然鹅,ANN-SNN转换框架不能够获取时域动态特征.另一方面,由于信号的不连续性,以及脉冲函数的不可微分性质,利用输入脉冲事件直接训练深度snn仍然是一个困难 ...

  4. Deep Neural Network Architectures for Modulation Classification解读

    摘要:在这项工作中,探讨了深度学习在无线信号调制识别任务中的应用价值.最近在[1]中,引入了一个框架,通过使用GNU无线电生成一个数据集,该数据集模拟真实无线信道中的缺陷,并使用10种不同的调制类型. ...

  5. Transformer Architectures and Pre-training Strategies for Fast and Accurate Multi-sentence Scoring

    目录 论文导读 课前基础知识 学习目标 知识树 研究背景 初始BERT 研究成果 研究意义 论文结构 摘要 论文精读 模型总览BERT.Poly-encoder BERT的出现 BERT结构 BERT ...

  6. 读Training Strategies for Improved Lip-Reading论文

    标题:改善唇读的训练策略 关键词:数据增强.时间模型.训练策略.自蒸馏(self distillation).DC-TCN.时间掩膜(time masking).mixup.单词边界(word bou ...

  7. 论文笔记:Multi-level Alignment Network for Domain Adaptive Cross-modal Retrieval

    域自适应跨模态检索的多级对齐网络 摘要 介绍 材料与方法 域自适应跨模态检索 网络体系结构 多级对齐 语义对齐 跨域对齐 跨模态对齐 联合训练与推理 结论 摘要 跨模态检索是多媒体领域中一项重要而富有 ...

  8. 【CVPR2022】DAFormer: 改进领域自适应语义分割的网络架构和训练策略

    Code:https://github.com/lhoyer/DAFormer Paper: https://openaccess.thecvf.com/content/CVPR2022/papers ...

  9. CVPR 2021 论文和开源项目合集(Papers with Code)

    摘自:https://github.com/amusi/CVPR2021-Papers-with-Code CVPR 2021 论文和开源项目合集 CVPR 2021 论文和开源项目合集(Papers ...

最新文章

  1. 【控制】《多无人机协同控制技术》周伟老师-第8章-危险状态下的无人机编队运动控制策略
  2. bzoj1791: [Ioi2008]Island 岛屿 单调队列优化dp
  3. 循环语句 for循环、while循环、do while循环
  4. JVM JRE JDK,这些东西到底是什么?(转载)
  5. 判断对象属性值是否为空
  6. Thinkphp3.2 中使用find_in_set
  7. 中秋佳节共团圆,送3本Python书
  8. mysql 模糊查询之特殊字符下划线 _
  9. golang actor模型探索
  10. 个人博客网站添加文章搜索功能
  11. 非谓语动词作后置定语
  12. iPAD上的远程桌面客户端工具
  13. 《The UVM Primer》——chapter3: Interface and BFM
  14. [ubuntu]关闭/打开笔记本电脑触控板
  15. Neo4j中的OGM(Object Graph Mapping)类似于ORM(对象关系映射)
  16. 硬件看门狗和软件看门狗
  17. IT应届实习能不加班?如何逃离996?
  18. ROM、RAM、Flash的区别
  19. 网络适配器(SE)通讯调试
  20. 4-8 验证“哥德巴赫猜想”

热门文章

  1. linux中20个高级命令--【转载自微信公众号入门小站】
  2. 为 Wine 中的应用程序创建图标
  3. 聊聊设计师的人生规划
  4. 机器学习知识总结 —— 17.什么是聚类
  5. 下载指定版本的Logstash
  6. iOS开发必不可少的76个工具
  7. java 实现 list拆分 按照大小拆分 按照个数拆分
  8. 用rfkill命令管理蓝牙和wifi
  9. 实现cf外挂_CF 5中的HTTP实现草图?
  10. Android自定义View--自己撸一个柱状图也没那么难