ETH Zurich提出新型网络「ROAD-Net」,解决语义分割域适配问题

简介:

问题背景

本文研究的是无人驾驶场景中的语义分割问题。语义分割的样本标记成本很高,使用合成数据能帮助解决样本不足问题。但是合成的数据和真实的数据之间存在差异,这种差异会极大影响使用合成数据训练的模型在真实数据上的表现

本文研究难点在于如何处理合成数据和真实数据之间的差异该问题存在两方面原因:

d47e62d2b349aca45e42305ed6714efbe5ed61d9 用合成数据训练的模型,很容易对合成数据过拟合,对合成数据可以提取很好的特征,而对真实数据就提取不到特征了;
d47e62d2b349aca45e42305ed6714efbe5ed61d9 合成数据和真实数据的分布存在明显的差异,而模型对合成数据存在偏好。

其实以上两点说的是一点,只不过从两个角度说,这两点分别对应本文设计的两个子模型。

解决思路

本文的主要贡献在于提出了两个网络策略,用于处理语义分割任务中使用合成数据训练的域适配问题。

为了避免模型对合成数据的过拟合,本文使用 Target Guided Distillation Module,让模型模仿真实图片的训练的特征。

为了解决数据分布不一的问题,使用 Spatial-aware Adaption Module,充分考虑两种数据在空间分布上的差异,使得模型在两种数据上能够得到相似的特征。

论文模型

1. Target Guided Distillation

9b60de1f093089ae8031cece86a93328e4c2eec2

用 ImageNet 训练好的特征提取网络(图中灰色部分)作为 target,让分割模型提取的特征尽可能的像 target 提取的特征,distillation loss 采用欧拉距离计算方法。训练的时候,当输入是真实图片,计算 distillation loss;当输入是合成图片,输出分割的损失。

2. Spatial-Aware Adaption

c05b7e55701e26a140cefd7715774599e20feb16

使用 max-min loss(对抗训练)的方式完成适配(domain distribution adaption)任务。适配任务的目的是,让特征提取网络,对不同分布域的数据,提取到类似的特征,而不影响后续的任务处理。

该问题的关键在于“类似的特征”如何表达。来自不同分布域的数据,内容存在差异,肯定无法直接用 mseloss 这种形式的损失来处理,所以,使用判别器损失,是比较合适的。

图中绿色框中的 domain classifier 就是这个判别器。红框同时也是上上图中分割网络所使用的卷积特征提取网络,而中间的蓝色框,表示的是标题中的“Spatial-Aware”,也就是把对用整张图的特征,分成 3x3 个区域,分别对每个区域计算判别损失。

3. 整个模型

整个网络连起来,如下图所示。测试的时候,只使用用图中黄色框的部分。

9524d37cc8bfbb801c7b0bbb740538c598d63f62

实验

真实数据集 Cityscapes [1]合成数据集 GTAV [2],分割网络使用 PSPnet 和 Deeplab。其中,Cityscapes 仅使用图片,未使用标签(本文要处理的是尽可能不使用人工标记的样本)。

训练时,一个 batch 中有 10 张图片,5 张来自 Cityscapes,5 张来自 GTAV。使用真实图片进行测试,计算 mIOU,实验结果如下。

291154485ade6c010cfba0398c0e9c6f1f814018

适配能提升 14 个百分点,但是相比于使用人工标记的训练结果 [3],还是要差很多很多。

本文提出的适配方法,相比于其他适配方法,效果也是最好的。

54167f1be81329232fffdef95526d2c64c2da48a

评价

本文研究的问题(使用合成数据减少对人工标注数据的依赖)很有实际意义,但是目前的效果还是差一些,似乎只能充当 boosting,离目标还有一段距离。很多视觉任务,都可以尝试这种方法,以减少对实际标注样本量的需求。

另外,是否可以研究,在使用合成数据的情况下,检测结果(在真实数据下测试的指标)随真实标记样本量的变化情况,定性地了解,到底合成数据能在多大程度上,减少手工标注量。比如,可能画出如下曲线:

e3490be4362f886321c07cac367bb93ef7a5dc6d

如果能做到这个地步,那在实际应用中,使用合成数据进行训练这种方法,可能会广泛使用,毕竟目前还仅仅停留在学术论文的地步。


原文发布时间为:2018-05-3
本文作者:杜敏
本文来自云栖社区合作伙伴“ PaperWeekly”,了解相关信息可以关注“ PaperWeekly”。
相关文章
|
数据可视化
R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
|
4月前
|
JSON 编解码 API
Go语言网络编程:使用 net/http 构建 RESTful API
本章介绍如何使用 Go 语言的 `net/http` 标准库构建 RESTful API。内容涵盖 RESTful API 的基本概念及规范,包括 GET、POST、PUT 和 DELETE 方法的实现。通过定义用户数据结构和模拟数据库,逐步实现获取用户列表、创建用户、更新用户、删除用户的 HTTP 路由处理函数。同时提供辅助函数用于路径参数解析,并展示如何设置路由器启动服务。最后通过 curl 或 Postman 测试接口功能。章节总结了路由分发、JSON 编解码、方法区分、并发安全管理和路径参数解析等关键点,为更复杂需求推荐第三方框架如 Gin、Echo 和 Chi。
|
机器学习/深度学习 存储 计算机视觉
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现-4
r语言中对LASSO回归,Ridge岭回归和弹性网络Elastic Net模型实现
238 11
|
8月前
|
机器学习/深度学习 编解码 计算机视觉
RT-DETR改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
RT-DETR改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
322 10
RT-DETR改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
|
8月前
|
机器学习/深度学习 编解码 计算机视觉
YOLOv11改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
YOLOv11改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
530 0
YOLOv11改进策略【Backbone/主干网络】| 2023 U-Net V2 替换骨干网络,加强细节特征的提取和融合
|
12月前
|
运维 安全 网络安全
|
11月前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
375 0
|
计算机视觉 网络架构
【YOLOv8改进 - 卷积Conv】DWRSeg:扩张式残差分割网络,提高特征提取效率和多尺度信息获取能力,助力小目标检测
YOLO目标检测专栏探讨了YOLO的创新改进,如多尺度特征提取的DWRSeg网络。该网络通过区域残差化和语义残差化提升效率,使用DWR和SIR模块优化高层和低层特征。DWRSeg在Cityscapes和CamVid数据集上表现优秀,速度与准确性兼备。论文和代码已公开。核心代码展示了一个包含DWR模块的卷积层。更多配置详情见相关链接。
|
网络协议 Java 程序员
TCP/IP协议栈是网络通信基础,Java的`java.net`包提供工具,使开发者能利用TCP/IP创建网络应用
【6月更文挑战第23天】 **TCP/IP协议栈是网络通信基础,它包含应用层(HTTP, FTP等)、传输层(TCP, UDP)、网络层(IP)、数据链路层(帧, MAC地址)和物理层(硬件信号)。Java的`java.net`包提供工具,使开发者能利用TCP/IP创建网络应用,如Socket和ServerSocket用于客户端和服务器通信。**
148 3