论文阅读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已经混合了其他位置坐标的值。因此,通过线性变换,可以计算出不同坐标像素之间的相关性。

相关文章:
论文阅读Rolling-Unet,卷积结合MLP的图像分割模型
这篇论文提出了一种新的医学图像分割网络Rolling-Unet,目的是在不用Transformer的前提下,能同时有效提取局部特征和长距离依赖性,从而在性能和计算成本之间找到良好的平衡点。 论文地址:https://ojs.aaai.org/index.php/AAAI/article/view/2…...
Linux Shell命令vim使用
一、引例 以判断引出(学过C其他语言容易接受)。 简单命令说明: -e 测试文件是否存在 -f 测试文件是否为普通文件 -d 测试文件是否为目录 -r 测试当前用户对某文件是否具有“可读”权限 -w 测试当前用户对某文件是否具有“可写”权限…...
如何将 API 管理从 Postman 转移到 Apifox
上一篇推文讲到用 Swagger 管理的 API 怎么迁移到 Apifox,有许多同学反馈说能不能介绍一下 Postman 的迁移以及迁移过程中需要注意的事项。那么今天,它来了! 从 Postman 迁移到 Apifox 的方法有两种: 导出 Postman 集合 &#x…...
用链表实现的C语言队列
一、队列概述 在数据结构中,队列是一种先进先出(FIFO)的线性表。它在许多应用场景中非常有用,例如任务调度、进程管理、资源管理等。队列是一种重要的数据结构,其主要特点是先进先出(FIFO, First In First …...
国产SDI视频均衡驱动器,功能与 LMH0387/LMH0344 一致
视频均衡驱动器,功能与 LMH0387 一致、LMH0344。本期间支持 DVB-ASI,作为驱动器能够选择输出速率,作为均衡接收器能支持100m以上传输距离(线缆类型Belden 1694A)。最大支持3Gbps 速率的信号 2 产品特征 a)…...
如何用Xinstall CPS结算系统打破传统营销桎梏,实现用户增长?
在互联网流量红利逐渐衰退的今天,App推广和运营面临着前所未有的挑战。如何快速搭建起满足用户需求的运营体系,成为了众多企业急待解决的问题。而在这个关键时刻,Xinstall CPS结算系统应运而生,以其独特的优势帮助企业解决了一系列…...
(代数:解一元二次方程)可以使用下面的公式求一元二次方程 ax2+bx+c0 的两个根:
(代数:解一元二次方程)可以使用下面的公式求一元二次方程 ax2bxc0 的两个根: b2-4ac 称作一元二次方程的判别式。如果它是正值,那么一元二次方程就有两个实数根。 如果它为 0,方程式就只有一个根。如果它是负值,方程式无实根。 编写程序,提示…...
如何提高网站收录?
GSI服务就是专门干这个的,这个服务用的是光算科技自己研发的GPC爬虫池系统。这个系统通过建立一个庞大的站群和复杂的链接结构,来吸引谷歌的爬虫。这样一来,你的网站就能更频繁地被谷歌的爬虫访问,从而提高被收录的机会。 说到效…...
Docker 学习总结(83)—— 配置文件daemon.json介绍及优化建议
一、daemon.json 文件概述 daemon.json是Docker守护进程的配置文件,它允许系统管理员自定义Docker守护程序的行为。此文件通常位于/etc/docker/目录下。通过修改daemon.json,可以调整Docker守护进程的多种设置,包括网络配置、日志记录、存储驱动等。 二、daemon.json 文件结…...
Javaweb04-Servlet技术2(HttpServletResponse, HttpServletRequest)
Servlet技术基础 HttpServletResponse对象 HttpServletResponce对象是继承ServletResponse接口,专门用于封装Http请求 HttpServletResponce有关响应行的方法 方法说明功能描述void setStatus(int stauts)用于设置HTTP响应消息的状态码,并生成响应状态…...
chat gpt基本原理解读
chat gpt基本原理解读 ChatGPT是一种基于生成式预训练变换器(Generative Pre-trained Transformer, GPT)的对话模型,主要通过大量的文本数据训练生成自然语言回复。以下是ChatGPT的基本原理解读: 1. 基本架构 ChatGPT 是基于 GPT…...
单目标应用:基于蛇鹫优化算法SBOA的微电网优化(MATLAB代码)
一、微电网模型介绍 微电网多目标优化调度模型简介_vmgpqv-CSDN博客 参考文献: [1]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度[J].电力科学与工程, 2021, 37(3):7 二、蛇鹫优化算法求解微电网 2.1算法简介 蛇鹫优化算法(Secre…...
MySQL系列-安装配置使用说明(MAC版本)
1、前言 本文将介绍MySQL的安装配置以及基本语法操作说明 环境:mac 版本:MySQL 8.0.28 之前电脑安装卸载过,后面在装的时候遇到一些问题,用了四五天才解决,主要是参考 https://blog.csdn.net/zz00008888/article/deta…...
vue elementui el-input 正则验证,限制只能输入数字和小数
vue elementui el-input 正则验证 限制只能输入数字和小数,以下两种方法都可以: 1、οninput“value value.replace(/[^0-9.]/g,‘’)” 2、οninput“value value.replace(/[^\d.]/g, ‘’)” 限制只能输入数字: 1、oninput “valuevalu…...
强化学习入门
简介 强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化…...
简约不简单,建筑装饰演绎现代美学
走在城市的大街小巷,你是否曾被那些独特而精美的建筑装饰所吸引?每一栋建筑都像是艺术家的杰作,通过精美的装饰诉说着它的故事。 我们的建筑装饰,不仅注重外在的美观,更追求内在的品质。从古典的雕花到现代的简约线条&…...
SpringBoot调用WebService的实践
作者所在公司的系统间的信息交互是通过webservice完成。如:MES与SAP的交互,MES与WMS的交换,MES与SRM的交互,MES与IOT的交互等。 MES是用.NET VS2008 C#写的,调用webservice很简单,这里不再赘述。如有想了解…...
源码编译构建LAMP
Apache 起源 源于A Patchy Server,著名的开源Web服务软件1995年时,发布Apache服务程序的1.0版本由Apache软件基金会(ASF)负责维护最新的名称为“Apache HTTP Server”官方站点:http://httpd.apache.org/ 主要特点 开发源代码/…...
搜索是门艺术,大神都是这样找资源
以下所有资源均可在星云导航找到,网站地址:https://www.xygalaxy.com/ 浏览器搜索高级用法 1、排除干扰,指定关键词 1.1、排除指定关键字 格式:关键字1 -关键字2比如搜索:星云导航,不想要CSDN的内容 星…...
【设计模式深度剖析】【5】【行为型】【迭代器模式】
👈️上一篇:策略模式 | 下一篇:中介者模式👉️ 设计模式-专栏👈️ 文章目录 迭代器模式定义英文原话直译如何理解呢? 迭代器模式的角色1. Iterator(迭代器)2. ConcreteIterator(具体迭代器…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
LRU 缓存机制详解与实现(Java版) + 力扣解决
📌 LRU 缓存机制详解与实现(Java版) 一、📖 问题背景 在日常开发中,我们经常会使用 缓存(Cache) 来提升性能。但由于内存有限,缓存不可能无限增长,于是需要策略决定&am…...
基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...
Linux部署私有文件管理系统MinIO
最近需要用到一个文件管理服务,但是又不想花钱,所以就想着自己搭建一个,刚好我们用的一个开源框架已经集成了MinIO,所以就选了这个 我这边对文件服务性能要求不是太高,单机版就可以 安装非常简单,几个命令就…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...
