【UNet 改进 | 注意机制篇】UNet引入LSKA注意力机制(2024 WACV),二次创新
本文教的是方法,也给出几种改进方法,二次创新结构,百变不离其宗,一文带你改进自己模型,科研路上少走弯路。
前言
在医学图像分割任务中,病灶区域往往形态各异、边界模糊,且经常与周围组织的对比度较低,这要求模型具备极强的特征提取和细节辨别能力。传统的U-Net网络虽然通过跳跃连接融合了多尺度特征,但在处理复杂语义和精细边缘时仍有不足,尤其是在捕获长距离依赖关系时常常力不从心。为了解决这些痛点,本文引入了在计算机视觉领域表现出色的 LSKA(Large Separable Kernel Attention,大核可分离注意力)机制。LSKA 巧妙地将大尺寸的二维卷积核分解为空间维度上的水平和垂直一维卷积,结合深度可分离卷积,以极低的计算和内存开销实现了超大的感受野。这种创新设计不仅使得网络能够捕捉到长程的全局上下文信息,还在保留特征细节上表现卓越,让 U-Net 模型在医学图像病灶分割上取得显著突破!
论文发表信息
- 论文标题:Large Separable Kernel Attention: Rethinking the Large Kernel Attention Design in CNN
- 发表会议/期刊:WACV 2024 / Expert Systems with Applications
- 核心贡献:提出了一种大核可分离注意力(LSKA)模块,通过将深度大卷积核分解为级联的水平和垂直一维卷积,有效减少了标准大核注意力(LKA)带来的巨大计算量和内存占用,实现了更高效的长程依赖捕获。
- 论文地址:https://arxiv.org/abs/2309.01439
- 代码地址:https://github.com/StevenLauHKHK/Large-Separable-Kernel-Attention
LSKA 核心模块理论
LSKA(大核可分离注意力)机制的核心思想在于在 CNN 中实现类似 Transformer 的大感受野,同时规避高昂的计算代价。传统的 LKA(大核注意力)在处理极大尺寸的卷积核时会消耗极高的计算资源。而 LSKA 则通过以下创新实现破局:
- 大核分解策略:LSKA 将原始的二维大卷积核(例如 23×23 或更大)分解为两个一维卷积(如 1×23 和 23×1)以及相应的空间扩张卷积。这一拆分大幅度降低了参数量和浮点运算次数。
- 长程依赖与自适应融合:在分别获取水平方向和垂直方向的宽泛上下文后,LSKA 将这些大感受野特征与局部特征进行注意力加权融合。它既保留了 CNN 处理局部纹理的优势,又获得了超越传统感受野的全局视野。
作为一个轻量化且高效的大核注意力模块,LSKA 能够让模型在不增加额外负担的情况下,深度挖掘长距离的组织关联特征,非常适合应用于复杂的医学图像分割。
训练代码参考和下载:手把手带你完成基于Unet的医学图像分割系统设计与实现,Unet网络架构讲解,Unet复现,使用vibe coding工具,开发一个完整系统,包含完整源码
文章目录
- 前言
- 论文发表信息
- LSKA 核心模块理论
- 🐴一、实战细节
- ⚡⚡实验结果画图
- ⚡⚡LSKA模块代码
- ⚡⚡使用教程
- ☑️步骤1
- ☑️步骤2
- ☑️步骤3
- ☑️步骤4
- 🐴二、模型结构分析
- ⚡⚡ 注意机制结构分析
- ⚡⚡二次创新实战
- ☑️第一种改进手法
- 📐模块的传参分析教程
- 🐴三、论文常用的评估指标
- ☑️像素准确率 (Pixel Accuracy, PA)
- ☑️精确率 (Precision) 与 召回率 (Recall)
- ☑️交并比 (Intersection over Union, IoU)
- ☑️平均交并比 (Mean Intersection over Union, mIoU)
- ☑️Dice系数 (Dice Coefficient / F1 Score)
- 总结
🐴一、实战细节
⚡⚡实验结果画图
画图效果如下,代码可一键运行
画图代码:
# -*- coding: utf-8 -*-""" @Auth :落花不写码 @File :画图.py @IDE :PyCharm @Motto :学习新思想,争做新青年 """importmatplotlib.pyplotaspltimportpandasaspdimportos plt.rcParams