引言
在医学人工智能领域,精准度就是一切。零点几毫米的差别可能就决定了异常是良性还是恶性肿瘤。过去几年中,深度学习——特别是 U 型架构和视觉 Transformer (Vision Transformers) ——已成为自动化这一分割过程的黄金标准。
然而,这种精准度代价高昂。现代用于 3D 医学成像的最先进 (SOTA) 模型,如 SwinUNETR 或 3D UX-Net,在计算上非常庞大。它们需要昂贵且高显存的 GPU,这使得它们难以在实时临床环境或便携式超声机等边缘设备上部署。
问题通常不在于“编码器” (网络中理解图像的部分) ,而往往在于“解码器” (重建分割掩膜的部分) 。3D 网络的解码器因消耗大量的浮点运算次数 (FLOPs) 和参数量而臭名昭著,因为它们试图用数百个特征通道来处理高分辨率的体积数据。
在这篇文章中,我们将剖析 EffiDec3D , 这是一篇挑战“越大越好”这一现状的新颖研究论文。研究人员提出了一种优化的解码器策略,将参数量减少了 96% 以上,FLOPs 减少了 93% , 同时保持了原始重型模型的分割精度。
背景: 3D 分割的沉重代价
要理解 EffiDec3D 的创新之处,我们首先需要了解医学分割网络的标准架构。大多数现代模型遵循 U-Net 设计,它由两个主要部分组成:
- 编码器 (The Encoder) : 接收输入图像并逐步对其进行下采样,提取丰富且抽象的特征。
- 解码器 (The Decoder) : 获取这些抽象特征并逐步将其上采样回原始图像大小,以创建像素级完美 (或体素级完美) 的分割图。
3D 问题
在 2D 图像分析中,提高分辨率或通道深度是可控的。然而,医学数据通常是 3D 的 (CT 扫描、MRI) 。当你在 3D 中将分辨率翻倍时,计算复杂度会呈立方级增长。
当前的 SOTA 模型如 SwinUNETR 或 3D UX-Net 使用了自注意力机制或大核卷积等复杂机制。虽然有效,但它们的解码器通常与编码器“对称”。如果编码器扩展到 768 个通道,解码器通常也会镜像这一配置。此外,这些解码器通常在最高分辨率 (重建细节) 下执行繁重的卷积操作。
EffiDec3D 的作者分析了这些架构,发现了两个主要瓶颈:
- 高分辨率 FLOPs: 以全分辨率 \((D \times H \times W)\) 处理数据需要巨大的计算量。
- 过多的通道: 在解码器中保留数百个通道会导致参数爆炸,且不一定能提高精度。
核心方法: EffiDec3D
研究人员提出了一种即插即用的优化解码器策略,可以附加到各种编码器上 (无论是基于 CNN 的还是基于 Transformer 的) 。其设计理念很简单: 最小化通道数并限制高分辨率操作。
让我们通过可视化来看看区别。下图是标准 3D UX-Net 架构与使用 EffiDec3D 的优化版本之间的比较。

正如上图 Figure 1 (b) 所示,EffiDec3D 解码器 (右侧) 明显更精简。它用流线型的版本取代了繁重、通道密集的模块。
策略 1: 通道缩减
在传统的解码器中,如果编码器阶段输出 384 个通道,相应的解码器阶段通常也会处理 384 个通道。EffiDec3D 认为这对于重建来说是多余的。
相反,该方法引入了一个变量 \(C_{reduced}\)。该值是通过查找编码器中任何位置使用的最小通道数来确定的。

对于大多数标准网络,这个最小值约为 48 个通道。EffiDec3D 强制所有解码器模块都在这个缩减后的通道容量 (\(C_{reduced}\)) 下运行,无论处于哪个深度阶段。
这种缩减是通过 ChannelReductionResidualBlock (通道缩减残差块) 实现的。当特征图来自编码器 (\(\mathbf{F}_i\)) 时,它们会被立即投影到这个更小的通道维度:

模块内部
该模块内部的实际处理是一个轻量级的残差设计。它使用 3D 卷积 (\(Conv3D\)) 、实例归一化 (\(IN\)) 和 ReLU 激活函数。
首先,该模块应用两个卷积层:


为了确保训练期间梯度顺畅流动 (防止梯度消失问题) ,添加了一个残差连接。如果输入通道与输出不匹配,则使用 \(1 \times 1 \times 1\) 卷积调整维度:

最后,输出是处理后的特征与残差恒等映射的总和:

通过在整个解码器中保持较低且恒定的通道数 (例如 48) ,参数数量急剧下降。
策略 2: 分辨率限制
第二个主要优化针对的是 FLOPs (计算操作) 。在标准 U-Net 中,解码器将图像一路下采样回原始输入大小 \((D, H, W)\),并在该全尺度上执行繁重的卷积。
EffiDec3D 尽早停止了繁重的工作。它仅将上采样和特征聚合执行到 半分辨率 \((D/2, H/2, W/2)\)。从半分辨率到全分辨率的最后一步由简单的三线性上采样处理,绕过了最大尺度上昂贵的卷积。
上采样过程由 ResidualUpBlock (残差上采样块) 控制:

这里,\(\mathbf{Dec}_{i+1}\) 是更深层 (更小) 的特征图,它被上采样并与跳跃连接 \(\mathbf{F}'_i\) 结合。
最终预测头
一旦解码器在目标分辨率 (半尺度) 下重建了特征,最终的预测头就会生成分割图。这是一个轻量级的 \(1 \times 1 \times 1\) 卷积,将特征通道映射到类别数量 (例如,器官或肿瘤类型) :

在此层之后,输出只需进行插值 (调整大小) 以匹配原始输入尺寸。
实验与结果
理论听起来很扎实: 减少通道和分辨率以节省计算量。但这是否会破坏模型分割复杂医学解剖结构的能力呢?作者在三个主要数据集上测试了 EffiDec3D: FeTA 2021 (胎儿大脑) 、BTCV (多器官 CT) 和 MSD (医学分割十项全能) 。
效率提升
该论文的主要主张是效率。结果令人震惊。下面的图表比较了流行模型 (SwinUNETR、SwinUNETRv2、3D UX-Net) 的原始解码器与其 EffiDec3D 对应版本。

注意这个模式:
- 参数量 (Params) : 蓝色条 (原始) 远高于绿色条 (优化) 。对于 3D UX-Net,参数量从 53M 降至约 1.8M 。
- FLOPs: 同样,计算成本直线下降。
- DICE 分数: 蓝点 (原始精度) 和绿星 (优化精度) 几乎相同。在某些情况下,优化版本实际上更好。
数据集 1: FeTA 2021 (胎儿大脑)
由于解剖结构的快速发育变化,胎儿大脑分割极具挑战性。下表显示了结果。

看一下 3D UX-Net 的比较。原始模型的 DICE 分数为 87.28%。EffiDec3D 版本的得分为 87.97%——它在使用了 少 94% 的参数 的情况下实际上提高了性能。这表明原始的庞大解码器可能存在过拟合,或者包含了无助于泛化的冗余容量。
数据集 2: BTCV (多器官分割)
BTCV 数据集涉及分割 13 个不同的腹部器官 (肝脏、脾脏、肾脏等) 。

在这里,我们看到非常轻微的权衡。对于 3D UX-Net , 平均 DICE 分数从 79.74% 微降至 79.25%。然而,观察脾脏和肝脏等大器官,性能依然稳健。GFLOPs 的大幅减少 (从 631.97 降至 51.47) 对于许多实际应用来说,可以说超过了 0.5% 的精度下降带来的影响。
数据集 3: 医学分割十项全能 (MSD)
MSD 数据集包含 10 个不同的任务,范围从脑肿瘤到心脏和前列腺分割。它测试了模型的泛化能力。

SwinUNETRv2 + EffiDec3D (最后一行) 在所有 10 项任务中取得了最佳平均分 (74.71%) ,击败了原始的 SwinUNETRv2 (73.83%) 。这证实了 EffiDec3D 不仅仅是一个“轻量级近似”,本身就是一个高效的架构。
消融实验: 为什么做这些选择?
作者不仅仅是猜测最佳设置;他们进行了消融实验来验证他们的设计选择。
1. 输出分辨率: 他们测试了在不同分辨率 (\(D/4, D/8\) 等) 停止解码器的情况。

如 Table 4 所示,停在 \(D/2\) (Ours) 达到了完美的平衡。降到 \(D/4\) 可以节省更多计算量,但开始严重损害精度 (从 79.25% 降至 76.41%) 。
2. 通道数量: 他们还实验了固定通道数 (\(C_{reduced}\)) 。

Table 5 揭示了超过 48 个通道后边际效益递减。将通道增加一倍至 96 会显著增加参数量,但实际上对 DICE 分数没有任何改善。这验证了坚持使用最小编码器通道数的决定。
结论与启示
“EffiDec3D” 论文给深度学习架构上了一堂宝贵的课: 冗余无处不在。
多年来,3D 医学成像的趋势是使用更重、更深、更宽的网络来挤出每一个百分点的精度。这篇论文表明,解码器——通常是计算成本的大头——可以在不牺牲性能的情况下被大幅简化。
主要收获:
- 少即是多: 你可以去除模型 96% 的参数并保持最先进的精度。
- 分辨率至关重要: 避免在深层进行全分辨率卷积可以节省大量的 FLOPs。
- 可访问性: 通过将模型大小从 ~600 GFLOPs 减少到 ~50 GFLOPs,高级 AI 分割在标准医院计算机甚至便携式医疗设备上变得可行,从而使 AI 辅助诊断更加普及。
EffiDec3D 建立了高效设计的新标准,证明了我们不需要超级计算机就能以超人的精度洞察人体内部。
](https://deep-paper.org/en/paper/file-2003/images/cover.png)