点击上方“视学算法”,选择加"星标"或“置顶”

重磅干货,第一时间送达

本文作者:张航

https://zhuanlan.zhihu.com/p/136105870

本文已由原作者授权,不得擅自二次转载

ResNeSt 这个论文的工作量比较大,我们会分开进行讲述,这篇关于语义分割。正文开始之前先说一下,我们已经开源了论文中提到的所有模型和训练代码 (见 ResNeSt 主仓库)

https://github.com/zhanghang1989/ResNeSt

特别是我们的 detectron2-ResNeSt ,在detectron2的基础上直接提高3%。

https://github.com/zhanghang1989/detectron2-ResNeSt

下面是正文:

标题党?

自2016年底,PSPNet 横空出世,从此成为领域的标杆,在当年的 MS-COCO + ADE20K 竞赛中夺冠,其中最佳单模型达到了 44.94% 的 mIoU。

这个最佳模型的记录保持了接近三年之久,直到最近才被超过,达到了46.27%(数据来自 PaperWithCode)。领域内的工作用了3年将这个数据集的结果推动了1.3%,ResNeSt-269 + DeepLabV3 单模型取得了 47.60% mIoU 的结果,在短时间内将最佳单模型结果再次提高了1.3%。这样来看,是不是可以说 ResNeSt 推动了这个数据集3年的进展呢?

虽然这样说有点标题党,我们看一下在 ADE20K 上的具体表现:

我们用DeepLabV3 + ResNet作为 baseline,可以看到使用 ResNeSt 取代标准 ResNet 可以得到接近 3% 的提升。截止至论文投稿时,ADE20K验证集上的最佳模型是 ACNet,在不使用任何技巧的情况下,DeepLabV3 + ResNeSt-101可以达到 46.91% mIoU,比 ACNet 提高了 1%。在论文提交之后,我们又训练了更深的 ResNeSt-269 模型,并且进一步将这一结果推进至 47.60%。

语义分割有点迷失

我以前也做过一些语义分割方面的工作,对其中的困难有一点自己的想法(不对的地方还请指正)

  • 很难突破:感觉无论在模型上做哪些改动,似乎都很难有较大的提高。这个时候是不是可以考虑在其他方面做一些创新呢?比如这篇 ResNeSt 提供了一个思路,说不定在backbone 阶段改进更有效呢,我们发现 ResNeSt50 + FCN 在 ADE20K 上就可以达到 42.94% mIoU,已经碾压了其他类似复杂度的模型。另外一个可以思考的方向,我们是不是也可以在 data 上面找突破呢, @朱毅大神之前做的 video propagation 在 Cityscapes 数据集上有很大提高,马上会推出一篇 semi-supervise 训练的论文,可以期待一下~

  • 方法不通用:许多 low-hanging fruit 都被别人做了,要想提高分数,就需要对模型进行魔改,这样做出来的模型很复杂,而且通常不是很通用。主要原因在于不同数据集的难点不同,比如 ADE20K 注重的是语义理解和上下文信息,然而在 Pascal VOC 和 Cityscapes 这样类别比较少的数据集,主要困难在边界,通常某些网络上的改动在一个数据集上很好,在其他数据集上没用。如何可以找到相对通用的方法呢?

我觉得 ResNeSt 在语义分割方面的表现,可能对将来的工作或许有一点启发。

ResNeSt 设计初衷

虽然最近分类网络有很大的突破,但是在检测、分割等下游应用大多工作仍在使用 ResNet 做为 backbone 进行迁移学习。ResNet 网络的优势在于通用性与模块化,然而毕竟是为了分类问题设计的网络,通常在目标领域会有一些结构上的不足,比如对于分割任务来讲,网络的感受野相对较小,缺少全局的上下文信息等等。针对这种情况,下游应用通常会在 backbone 基础上进行魔改,比如使用 pyramid representation 来提高感受野大小,或者引入全局的上下文信息,还有比较 expensive 的 Spatial Attention 的工作。与其这样魔改,不如我们把这些改进做到 backbone 里直接预训练一下。

在CVPR 2018,我做过一个 EncNet 的工作,算是一个把 attention 应用到语义分割问题上比较早期的工作了。我们发现,通过一个全局的上下文信息来预测 channel 维度的 attention 对分割很有帮助。那个时候也想过把这个模块用在 ImageNet 预训练中会有什么效果,但是碍于资源有限没有深入研究(deadline 前几周才借到机器跑实验)。SE-Net,SK-Net 等工作都在基础网络训练的时候引入 attention 机制,而且取得了很大的成功,SE-Net 的缺点在于不利于网络结构的加宽以及 feature-map 的多样性,因为不同的 channel 都是相互依赖的;SK-Net 的多分支结构,不容易模块化和加速。受到 ResNeXt 的启发,我们把 attention 做到了 group level,这样的分组结构,有利于 featuremap 的多样性,同时这种模块化的设计保持了 ResNet 的原有宏观结构,可以直接应用到已有的算法中去。就这样我们得到了 ResNeSt,在论文中,我们发现在物体检测,实例分割,语义分割等方向对下游模型都有很大提升。

相对于对已有网络进行魔改,可能不如对基础网络提升来的直接。希望这篇论文可以抛砖引玉,以后可以看到更多的关于基础网络研究的文章。毕竟分类问题基本属于已经解决了的问题,能够更好地为下游应用服务,才是更加有意义的。

预告与链接

不出意外的话,Chongruo @水中草、Jerry @张钟越和我最近会讲一下 ResNeSt 之物体检测与实例分割论文中用到的 Mask-RCNN,Cascade R-CNN 等模型和训练代码已经开源在了detectron2-ResNeSt。

https://github.com/zhanghang1989/detectron2-ResNeSt

我们之后应该会放出更好的模型,给准备打 MS-COCO & LVIS 竞赛的小伙伴们提供一个 Start Kit。

http://cocodataset.org/workshop/coco-lvis-eccv-2020.html

麻烦给我一个在看!

ResNeSt之语义分割,ADE20K全新SoTA 47.6%相关推荐

  1. 最强骨干网 ResNeSt 助力语义分割,ADE20K 全新 SOTA 47.6%

    整理:我爱计算机视觉 原作者 张航  Rutgers University 计算机博士 本文转载自知乎,已获作者授权转载,请勿二次转载. https://zhuanlan.zhihu.com/p/13 ...

  2. ResNeSt 之语义分割,ADE20K 全新 SoTA 47.6%

    作者:张航 链接:https://zhuanlan.zhihu.com/p/136105870 本文转载自知乎,作者已授权,未经许可请勿二次转载. ResNeSt 这个论文的工作量比较大,我们会分开进 ...

  3. ACM MM 2022 | 浙大提出BiSMAP:语义分割UDA 新SOTA!

    作者 | III  编辑 | 汽车人 原文链接:https://zhuanlan.zhihu.com/p/547671620 点击下方卡片,关注"自动驾驶之心"公众号 ADAS巨卷 ...

  4. 语义分割该如何走下去?

    公众号关注 "视学算法" 设为 "星标",DLCV消息即可送达! 来自 | 知乎 链接 | https://www.zhihu.com/question/390 ...

  5. gcn语义分割_语义分割该如何走下去?

    来自 | 知乎    编辑 | 深度学习这件小事链接 | https://www.zhihu.com/question/390783647本文仅供交流,如有侵权,请联系删除   问题语义分割该如何走下 ...

  6. 【深度学习】语义分割:论文阅读(NeurIPS 2021)MaskFormer: per-pixel classification is not all you need

    目录 详情 知识补充 语义分割 实例分割 基本流程 主要技术路线 自上而下的实例分割方法 自下而上的实例分割方法 掩膜 Mask 什么是mask掩码? mask掩码有什么用? mask classif ...

  7. 【RCNN】论文翻译-用于精确物体定位和语义分割的丰富特征层次结构

    目录 Abstract 1. Introduction 2. Object detection with R-CNN 2. R-CNN进行物体检测 2.1. Module design 2.1. 模块 ...

  8. 目标检测经典论文——R-CNN论文翻译(纯中文版):用于精确物体定位和语义分割的丰富特征层次结构(技术报告(第5版))

    目标检测经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[R-CNN中英文对照版] 用于精确物体定位和语义分割的丰富特征层次结构 技术报告(第5版 ...

  9. FlyAI小课堂:深度学习论文翻译解析(3):丰富的特征层次结构,可实现准确的目标检测和语义分割

    论文标题:Rich feature hierarchies for accurate object detection and semantic segmentation 标题翻译:丰富的特征层次结构 ...

最新文章

  1. 让数值自增_第03期:列非空与自增
  2. Linux Kernel TCP/IP Stack — L2 Layer — Linux Bridge(虚拟网桥)的基本操作
  3. iphone分辨率_iPhone 的屏幕为什么比安卓更丝滑?
  4. 实用:前端小白的切图技巧
  5. 家用轿车轮胎多久更换一次?
  6. java游戏+弹幕_JAVA 弹幕小游戏 1.0版本
  7. laydate.render报错:日期格式不合法
  8. windows下利用sox批量将PCM转为WAV
  9. 某业务付费统计脚本问题排查
  10. 手动挡五个档位示意图_汽车档位越多越好?听听专业回答
  11. 按一个按钮会随机死人_《饥荒》那些年坑爹的随机地图,最后一个简直笑死人...
  12. 小程序中ajax返回数据,微信小程序调用接口返回数据或提交数据
  13. 原来这就是比 ThreadLocal 更快的玩意
  14. css文本省略(······)行高错位(bug)- 解决办法
  15. firefox使用技巧 - 公司内部站点
  16. android serviceconnection unbind流程,Android Service 再次 unbindSrvice 时的问题
  17. python中用来抛出异常的关键字是( )_python异常抛出
  18. iptv管理系统php制作,云水日记-双子星IPTV管理系统搭建教程
  19. 内部敌人中文 android,幽浮:内部敌人(含数据包)
  20. 内存的基础知识(常用数量单位、进程运行原理、存储单元、内存地址、绝对装入、静态重定位、动态重定位、静态链接、动态链接等)

热门文章

  1. 技术图文:如何在CSDN上写自己的技术Blog?
  2. 【怎样写代码】确保对象的唯一性 -- 单例模式(五):一种更好的单例实现方法(静态内部类)
  3. 【Matlab与线性代数】Matlab中对数组元素引用方法总结
  4. 简单工厂模式(StaticFactoryMethod)
  5. 来体验一把职场人的真实训练,检验你的工程化交付能力!
  6. 腾讯天衍实验室联合微众银行研发医疗联邦学习 AI利器让脑卒中预测准确率达80%
  7. KDD 2019高维稀疏数据上的深度学习Workshop论文汇总
  8. 简单明了,一文入门视觉SLAM
  9. 李沐团队新作Gluon,复现CV经典模型到BERT,简单好用 | 强烈推荐
  10. 算法面试经常需要你手写的三个排序算法(Python语言)