论文阅读Rolling-Unet,卷积结合MLP的图像分割模型

这篇论文提出了一种新的医学图像分割网络Rolling-Unet,目的是在不用Transformer的前提下,能同时有效提取局部特征和长距离依赖性,从而在性能和计算成本之间找到良好的平衡点。

论文地址:https://ojs.aaai.org/index.php/AAAI/article/view/28173

1,动机(Motivation)

现阶段主流医学图像分割模型大多基于CNN和Transformer,作者认为CNN和Transformer都有缺陷。CNN难以捕捉长距离依赖性,而Transformer计算复杂度高,局部特征学习能力差。

作者认为现有的结合CNN和Transformer的方法尚未能在性能和计算成本之间找到良好的平衡点。

而MLP拥有代替Transformer提取全局特征的潜力。

下面,我们按照惯例从粗到细来拆解这个模型。

2,模型整体结构:

模型整体结构如下,是一个经典的U型编码器-解码器结构,只不过编码器分支最后一个模块,解码器分支第一个模块以及瓶颈层被替换成了全新的Lo2块(Long-Local Block)。

3,Lo2块(Long-Local Block)

Lo2模块的整体结构如下所示

该模块以并行的DOR-MLP(Double Orthogonal Rolling MLP)模块和深度可分离卷积(DSC)模块组成,以同时捕获局部上下文信息和长距离依赖性。两个子模块的特征拼接后,通过Channel-mixing进一步融合,这一步骤有助于不同通道间的特征交互,增强特征表达能力。

补充:Channel-mixing是MLP-Mixer架构中提出的一种技术,用于实现不同通道之间的特征融合。它是一种替代传统卷积操作的手段,特别是在全连接或混合维度特征的场景中。Channel-mixing首先将特征张量在高度和宽度上进行展平,使得每个通道的特征成为一维向量。然后,对每个通道的特征向量应用一个线性变换,通常是一个全连接层,并可能跟随一个非线性激活函数,如GELU。Channel-mixing的作用类似于1x1卷积,它允许网络在不增加太多计算负担的情况下,学习特征的跨通道交互。)

4,DOR-MLP模块

结构如下:

DOR-MLP模块通过并行化两个互补的OR-MLP(Orthogonal Rolling MLP)模块来捕获四个方向(水平、垂直、对角正向和对角负向)的长距离依赖性。

过程具体如下:

1)每个OR-MLP都有两个方向正交的R-MLP模块也就是一个在垂直方向做Rolling操作,一个在水平方向做。从而可以捕获两个长距离依赖。

2)两个并行的OR-MLP中的R-MLP顺序不同,第一个OR-MLP模块先在水平方向上应用R-MLP,然后在垂直方向上应用R-MLP;第二个OR-MLP模块先在垂直方向上应用R-MLP,然后在水平方向上应用R-MLP。这样,每个OR-MLP模块都能捕获两个正交方向上的依赖性,形成对角线方向的感知能力。

3)在每个OR-MLP中还有残差连接,以增强模型的学习能力和避免梯度消失问题。

4)并行处理后,两个OR-MLP模块的输出沿着通道维度进行拼接,以获得不同方向的特征表示。

5)之后,特征会经过LayerNorm和Channel-mixing,Channel-mixing是一种特征融合技术,具体原理和细节我在文章第三段已经介绍了,这里就不讲了。

5,R-MLP模块

1)R-MLP模块对每个通道层的特征图沿相同方向执行Rolling操作。Rolling操作包括以下两个步骤:移位和裁剪。

在移位步骤中,特征图会根据移位步长 k在水平方向上进行移动。移位可以是向左或向右,具体取决于 k的正负值。移位后的每个通道的特征图可能会超出原始特征图的边界。裁剪步骤会去除这些多余的部分,并将缺失的部分补充回到另外一边,确保所有通道的特征图在宽度上对齐。

如果这里没看懂rolling的原理和如何发挥作用的,请移步文章最后一个段落,看看我的解释。

2)接着,在Rolling操作之后,R-MLP在每个空间位置索引 (hi,wj) 上执行带有权重共享的通道投影,以编码长距离依赖性。

通道投影是指在特征矩阵的每个空间位置(即图像的每个像素位置)上,对所有通道的特征进行线性变换,以生成新的特征表示。通道投影的目的是将Rolling操作后的多通道特征进行整合和编码,以捕获长距离依赖性。

在Rolling操作之后,每个空间位置的特征图可能会有不同的宽度或高度特征。通道投影通过在每个空间位置应用一个线性变换(通常是一个全连接层或线性层),将这些特征投影到一个新的特征空间中。这个线性变换可以是参数化的,允许网络在训练过程中学习到最优的投影方式。在R-MLP中,所有空间位置的通道投影共享相同的权重,这意味着无论特征图的大小如何,参数的数量保持不变。这有助于减少模型的参数量并提高计算效率。

3)在通道投影之后,通常会应用一个非线性激活函数(如GELU),以引入非线性特性。

6,我对rolling的理解

首先,我们要明确,这个模型并没有用自注意力或者协方差这类的矩阵乘法,而是用的取一个坐标的所有channel维特征做线性变换。

那么,如果不用rolling,它就不能计算到特征图上每个点跟其他所有点的相关性。而最多只能计算到处在水平或垂直线上的点之间的相关性。

理解的关键还是下面这个图,不同颜色深浅其实代表的是原始的位置。

rolling之后,我们取一个坐标点(h,w)的所有channel,其实取的已经不完全是原始的(h,w)对应的值了。我们可以看到颜色已经混了。这代表同一索引在不同channel已经混合了其他位置坐标的值。因此,通过线性变换,可以计算出不同坐标像素之间的相关性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/26557.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用nmcli命令创建、删除bond

前言 在之前的文章中,描述的创建bond的方式,是使用配置文件的方式,在创建bond的时候创建一个对应的配置文件,修改、删除都操作此配置文件,这种方式实现bond没有问题,但是对于某些系统下,bond灵…

用链表实现的C语言队列

一、队列概述 在数据结构中,队列是一种先进先出(FIFO)的线性表。它在许多应用场景中非常有用,例如任务调度、进程管理、资源管理等。队列是一种重要的数据结构,其主要特点是先进先出(FIFO, First In First …

618购物狂欢节有哪些数码好物值得抢购?年终必备神器清单大揭秘!

一年一度的“618年中大促”即将拉开帷幕,大家是否已经挑选好了心仪的宝贝呢?那些平时心仪已久的商品,是否总期待着在价格最优惠时收入囊中?毫无疑问,618就是这样一个绝佳的时机,因为各大电商平台都会纷纷推…

python datetime time timedelta

datetime 参考:https://blog.csdn.net/lovedingd/article/details/134929553 time timedelta 参考:https://geek-docs.com/python/python-ask-answer/981_python_formatting_timedelta_objects.html timedelta 是 Python 中的一个类,用于…

怎样为Flask服务器配置跨域资源共享

为了在 Flask 服务器中配置跨域资源共享(CORS),你可以使用 flask-cors 扩展。这个扩展可以帮助你轻松地设置 CORS 规则,从而允许你的 Flask 服务器处理来自不同源的请求。 以下是配置 CORS 的步骤: 安装 flask-cors …

Lecture2——最优化问题建模

一,建模 1,重要性 实际上,我们并没有得到一个数学公式——通常问题是由某个领域的专家口头描述的。能够将问题转换成数学公式非常重要。建模并不是一件容易的事:有时,我们不仅想找到一个公式,还想找到一个…

ansys有限元分析

1.悬臂梁 /prep7 ! 定义单元类型 et,1,beam4 ! 定义材料属性 mp,ex,1,200e9 ! 弹性模量 mp,prxy,1,0.3 ! 泊松比 ! 定义截面属性 sectype,1,beam,rect ! 定义矩形截面 secdata,0.1,0.1 ! 截面宽度和高度 ! 创建节点 n,1,0,0,0 n,2,2,0,0 n,3,4,0,0 n,4,6,0,0 n,5,8,0,…

什么叫做数据字典

数据字典是数据库或信息系统中用来存储关于数据的信息的集合。它包括了数据项、数据结构、数据流、数据存储、处理逻辑等方面的定义和描述。数据字典为系统的分析、设计和维护提供了有关数据的信息,是数据管理和数据维护的重要工具。 通俗地说,数据字典就像是一本“字典”,…

群晖NAS安装配置Joplin Server用来存储同步Joplin笔记内容

一、Joplin Server简介 1.1、Joplin Server介绍 Joplin支持多种方式进行同步用户的笔记数据(如:Joplin自己提供的收费的云服务Joplin Cloud,还有第三方的云盘如Dropbox、OneDrive,还有自建的云盘Nextcloud、或者通过WebDAV协议来…

长沙干洗服务,打造您的专属衣橱

长沙干洗服务,用心呵护您的每一件衣物!致力于为您打造专属的衣橱,让您的每一件衣物都焕发出独特的魅力。 我们深知每一件衣物都承载着您的故事和情感,因此我们会以更加细心的态度对待每一件衣物。无论是您心爱的牛仔裤&#xff0c…

sizeof和strlen

1.sizeof和strlen的对比 1.1sizeof sizeof是计算变量所占内存空间大小的,单位是:字节 如果操作数是类型的话,计算的是使用类型创建的变量所占内存空间的大小。 sizeof只关注占用内存空间的大小,不在乎内存中存放的是什么数据 …

QML Canvas 代码演示

一、文字阴影 / 发光 Canvas{id: root; width: 400; height: 400onPaint: //所有的绘制都在onPaint中{var ctx getContext("2d") //获取上下文// 绘制带阴影的文本ctx.fillStyle "#333" //设置填充颜色ctx.fillRect(0, 0, root.width, root.height…

Stability AI发布新版文生图模型:依然开源

Stability AI最近发布了Stable Diffusion 3 Medium(简称SD3 Medium),这是其最新的文生图模型,被官方称为“迄今为止最先进的开源模型”。SD3 Medium的性能甚至超过了Midjourney 6,特别是在生成手部和脸部图像方面表现出…

前端开发经常用到网站和方法

1、大屏设计相关 组件:介绍 | DataV echarts:Apache ECharts 大屏设计模板:大屏模板 常用图表库:常用图表库 2、UI框架 pc端 element-ui:Element 移动端 3、在线工具 免费版 在线流程图:在线画图工具…

一杯咖啡的艺术 | 如何利用数字孪生技术做出完美的意式浓缩咖啡?

若您对数据分析以及人工智能感兴趣,欢迎与我们一起站在全球视野关注人工智能的发展,与Forrester 、德勤、麦肯锡等全球知名企业共探AI如何加速制造进程, 共同参与6月20日由Altair主办的面向工程师的全球线上人工智能会议“AI for Engineers”…

java定时任务 设置开始时间、结束时间;每周一、四、六执行;并且隔n周执行。最后计算所有执行时间

java定时任务 设置开始时间、结束时间;每周一、四、六执行;并且隔n周执行。最后计算所有执行时间) 定时任务需求程序设计依赖引入程序一、计算开始时间那周的周一时间二、根据executeTime和weekList.get(n),计算每个cron表达式。三、根据一和…

可以自定义的文字识别OCR

可以自定义的文字识别OCR 什么是OCR文档自学习自定义模板单证票据信息抽取操作体验 这里提到的可以自定义的文字识别OCR ,其实就是OCR文档自学习。 什么是OCR文档自学习 什么是OCR文档自学习呢?OCR文档自学习,是面向“无算法基础”的企业与个…

C#——字典diction详情

字典 字典: 包含一个key(键)和这个key所以对应的value&#xff08;值&#xff09;&#xff0c;字典是是无序的&#xff0c;key是唯一的&#xff0c;可以根据key获取值。 定义字典: new Diction<key的类型&#xff0c;value的类型>() 方法 添加 var dic new Dictionar…

[EFI]NUC11电脑 Hackintosh 黑苹果efi引导文件

硬件型号驱动情况主板 英特尔 NUC11DBBi9&#xff08;LPC Controller WM590芯片组&#xff09; 处理器 11th Gen Intel Core i9-11900KB 3.30GHz 八核 已驱动内存32 GB ( 三星 DDR4 3200MHz 16GB x 2 )已驱动硬盘三星 MZVL21T0HCLR-00B00 (1024 GB / 固态硬盘)已驱动显卡AMD R…

OZON芒果店长erp,OZON平台支持什么ERP

在跨境电商的浪潮中&#xff0c;OZON平台凭借其独特的优势&#xff0c;吸引了众多卖家入驻。然而&#xff0c;随着业务规模的不断扩大&#xff0c;如何高效管理商品、处理订单、优化仓储物流等成为了卖家们亟需解决的问题。此时&#xff0c;一款强大的ERP&#xff08;企业资源规…