位置: IT常识 - 正文

Transformer前沿——语义分割(inature前沿)

编辑:rootadmin
Transformer前沿——语义分割 Transformer 进军语义分割进军方向SETR: Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers (CVPR 2021)网络结构图实验效果ADE20K 数据集上效果Pascal Voc 数据集上的效果TransUNet: Transformers Make Strong Encoders for Medical Image Segmentation网络结构图实验效果Synapse multi-organ CT 数据集上的效果SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers (NeuralPS 2021)网络结构图实验效果ADE20K和Cityscape数据集上的效果进军方向

推荐整理分享Transformer前沿——语义分割(inature前沿),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:inature前沿,前沿啥意思,前沿官网,前沿什么,前沿在哪里,什么叫前沿,前沿dj,前沿官网,内容如对您有帮助,希望把文章链接给更多的朋友!

   Transformer自2017年诞生之后,迅速在NLP领域攻城略地,在极短的时间内晋升成为NLP领域绝对的霸主。Transformer进军CV领域的行动早在2018年就开始了,但是行进缓慢,直到2020年谷歌再次出手,提出Transformer进军CV领域的里程碑式的神作 ViT ,屠榜ImageNet、CIFAR10、CIFAR100,将Transformer在CV领域的潜力展示给世人,大家深受震撼与启发,随即争相涌入ViT研究浪潮中,直接推动了ViT的蓬勃发展。

   在阐述Transformer在CV领域开疆拓土的行军路线前,简单概括一条范式。基于深度学习的方法解决计算机视觉领域的各种任务,诸如图像分类、目标检测、语义分割、实例分割等,都遵循统一的范式,即,特征提取模块+任务模块。 特征提取模块 + 分类器 = 图像分类网络 特征提取模块 + 检测器 = 目标检测网络 特征提取模块 + 分割器 = 语义分割网络 …   到这里,读者朋友可能已经猜到了,Transformer可以取代语义分割任务中的特征提取模块。但Transformer是否比原本基于 CNN 的特征提取模块更好?答案是肯定的, CNN:级联卷积虽能扩大感受野,但是有效感受野只占理论感受野很小一部分,也就是说,卷积无法直接提取长距离信息;Transformer:提取到的特征向量有更丰富的全局上下文信息。\begin{aligned} CNN &: 级联卷积虽能扩大感受野,但是有效感受野只占理论感受野很小一部分,也就是说,卷积无法直接提取长距离信息;\\ Transformer &: 提取到的特征向量有更丰富的全局上下文信息。 \end{aligned}CNNTransformer​:级联卷积虽能扩大感受野,但是有效感受野只占理论感受野很小一部分,也就是说,卷积无法直接提取长距离信息;:提取到的特征向量有更丰富的全局上下文信息。​    至此,我们了解到,用Transformer取代语义分割中的特征提取模块是可行的,接下来,首先介绍Transformer在语义分割领域的开山制作 SETR

SETR: Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers (CVPR 2021)

SETR 是 Segmentation Transformer 前两个字母的组合

作者单位是 复旦、牛津大学、萨里大学、腾讯优图、Facebook

网络结构:ViT 特征提取 + 多层次特征融合 + 解码器

网络结构图

  在语义分割中特征提取模块又称编码器,分割器又称解码器,SETR中直接采用 ViT 中 24 层做高层语义上下文建模。    ViT 特征提取:ViT先将输入图像等分为许多个patch,然后通过 展平(Flatten) 和 线性映射(Linear Projection) 操作将这些patch映射为序列,然后加上各自的位置编码,输入Transformer中做特征提取。   多层次特征融合:编码器中包括 24个 Transformer Layer,为了同时获得高层语义和低层语义信息,作者将 第6、12、18、24层的输出结果从序列恢复到二维,然后按通道维度拼接(concat),得到具有丰富语义层次的特征向量。   解码器:采用的传统的 CNN 逐级解码,将特征向量的宽高恢复到原图像大小,扩大宽高的同时缩减通道数为类别数。

实验效果

在ADE20K取得 50.28%的mIoU,这是该数据集首次出现mIoU超过50%的记录,同时在 Pascal Context取得 55.83%的mIoU,均是 STOA效果。

ADE20K 数据集上效果

Pascal Voc 数据集上的效果

TransUNet: Transformers Make Strong Encoders for Medical Image Segmentation

面向医学图像分割,结合 擅于长距离上下文建模的Transformer 和 擅于捕捉低层细节信息的UNet。

Transformer前沿——语义分割(inature前沿)

作者单位:约翰霍普金斯大学、电子科技大学、斯坦福大学

网络结构:CNN特征提取 + 长距离上下文建模 + UNet解码器

网络结构图

  CNN特征提取:级联卷积提取特征向量,各个stage的输出用于跳跃连接。

  长距离上下文建模:使用12个Transformer层对CNN特征提取模块中得到特征向量,进一步做长距离上下文建模。

  UNet解码器:跳跃连接,逐级解码。

实验效果Synapse multi-organ CT 数据集上的效果

SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers (NeuralPS 2021)

作者单位:香港大学、南京大学、英伟达、加州理工大学

网络结构:Mix-FFN取代位置嵌入 + Efficient Self-Attention缩减时间复杂度 + Overlapped patch Merging 保留局部连续性 + 极简decoder

网络结构图

  Mix-FFN:ViT中位置编码的分辨率是固定的,在模型测试使用阶段,输入图像的分辨率并不固定,因此如果采用位置编码,则需通过重采样获得位置编码,显然,这会影响模型预测。本文作者认为通过填充零,卷积核尺寸3x3的卷积可以获得位置信息。具体做法是在一个简单的 前馈神经网络(FFN)中加入3x3 Conv,公式表示如下: xout=MLP⁡(GELU⁡(Conv⁡3×3(MLP⁡(xin))))+xin\mathbf{x}_{o u t}=\operatorname{MLP}\left(\operatorname{GELU}\left(\operatorname{Conv}_{3 \times 3}\left(\operatorname{MLP}\left(\mathbf{x}_{i n}\right)\right)\right)\right)+\mathbf{x}_{i n}xout​=MLP(GELU(Conv3×3​(MLP(xin​))))+xin​

  Efficient Self-Attention:作者指出经典的自注意力机制算法时间复杂度为O(N2)O(N^2)O(N2),其中N为序列的长度。在ViT中序列长度 N 通常等于 H*W,其中H、W分别为图像高和宽。作者指出对于高分辨率图像,自注意力机制的时间复杂度太大,因此提出更高效的自制注意力算法。核心步骤为: 1)通过 reshape 操作,将输入序列的shape从N×CN\times CN×C变为NR×CR\frac{N}{R}\times CRRN​×CR,其中R为缩减系数; 2)通过线性映射,将 shape为 NR×CR\frac{N}{R}\times CRRN​×CR 的序列映射为 shape为 NR×C\frac{N}{R}\times CRN​×C 的序列。 SegFormer的四个stage的缩减系数分别为 64、16、 4、1。

  Overlapped patch Merging:本文的作者认为ViT中采用的 patch merging 算法丢失了patch周围的局部连续性信息。因此提出,重叠的patch划分方法,具体做法通过一个宽高为3的窗口,步长为2,边缘填充为1,进行滑动。通过重叠保留了patch周围的局部连续性。

  极简decoder:作者认为特征提取过程中使用的自注意力机制,已经提取到了充分高层的语义特征,因此在解码阶段,无需通过级联卷积进一步提升模型感受野。因此,本文中的解码器只包含几个简单的线性映射和上采样层。

实验效果ADE20K和Cityscape数据集上的效果

面向移动设备的TopFormer (CVPR 2022),医学分割 DS-TransUNet,…

本文链接地址:https://www.jiuchutong.com/zhishi/299608.html 转载请保留说明!

上一篇:Opencv(C++)系列学习---opencv_contrib安装(opencv1.0)

下一篇:TypeScript(typescript中文文档)

  • 小规模纳税人本月应交增值税
  • 企业取得被投资单位的长期股权可以享有
  • 公司收到借款利息收入要交增值税吗
  • 必须一般纳税人
  • 企业所得税职工薪酬扣除
  • 公司转让会计分录
  • 不是单位职工个税怎么算
  • 汇算清缴补交需要调报表吗
  • 红字发票需要做什么科目
  • 印花税合同金额和结算金额不一致
  • 人工费收税吗
  • 年终奖个税公式表最新
  • 汇算清缴涉及长期投资收益如何做会计核算?
  • 小规模纳税人跨月冲红退税
  • 税费是哪个会计科目?
  • 增值税应税劳务的纳税人是什么意思
  • 年初未分配利润是什么科目
  • 基本户收到个人款项的分录
  • win10要更新系统
  • 苹果笔记本如何切换输入法
  • 增值税怎么填表
  • 出租固定资产收入计入什么科目
  • 苹果电脑里的finder是什么
  • 火车票可以报账吗
  • 计提劳务派遣人员社保收到发票后没有付款的会计分录
  • 电脑开机时出现用户账户控制提示
  • 车间报销办公用品费
  • 费用发票开的是跨年的账务处理?
  • PHP:bzdecompress()的用法_Bzip2函数
  • 土地使用税滞纳金不得超过
  • 最早的滑盖手机,摄像头可以自动旋转
  • executor进程
  • 预付款不退如何投诉
  • php操作mysql数据库
  • php设置中文
  • 提取备用金记账凭证图片
  • 验证码php代码
  • vue实现回车登录
  • 汇算清缴退税的账务处理
  • 二手车交易账务处理
  • 总分类账户余额表怎么做账
  • 所得税费用该怎么算
  • Windows2003 SQL2005添加系统用户修改系统登录密码
  • 企业享受政府补贴的具体方式
  • 员工垫付款报销单
  • 会计凭证的填制与审核实训总结
  • 母公司代子公司收款,子公司开具发票
  • 用白纸写的收据怎么入帐?
  • 非正常损失的进项税
  • 应付款多付了不可退回怎么做会计分录
  • 离职员工还怎么交社保呢
  • 关于投资收益纳税的说法
  • 盈余公积现金流量表中应填入哪里呢
  • 发票找不到了怎么操作
  • 工程公司本月没发工资
  • 车辆保险证明怎么开
  • 本年利润是负数怎么写凭证
  • 固定资产清理是资产吗
  • 安装 apt
  • win10预览版最新
  • hotkey在哪
  • ocxdll.exe - ocxdll是什么进程 有什么用
  • linux卡屏
  • win7打开回收站
  • win7打开摄像头权限
  • Android触摸事件回调方法
  • 细说javascript
  • android中的webview
  • 深入理解java
  • js给图片加水印
  • jquery创建表单
  • unity快速接入第三方sdk
  • scrollview嵌套flatlist
  • Python的collections模块中的OrderedDict有序字典
  • ajax获取数据两种类型
  • JQuery点击行tr实现checkBox选中的简单实例
  • 青海国税局领导班子
  • 天猫主体变更是什么意思
  • 按季申报印花税怎么申报
  • 城市维护建设税减半征收政策
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设