nnU-Net: a self-configuring method for deep learning-based biomedical image segmentation

文章阅读
作者: MingXiao

nature methods https://doi.org/10.1038/s41592-020-01008-z


1 Introduction

描述了一个深度学习的参数设置过程

  • 固定那些不太会改变的参数
  • 对于尽可能多的剩余决策,以启发式规则的形式,在特定的数据集属性("数据集指纹")和设计选择("管道指纹")之间建立明确的依赖关系
  • 仅从数据中学习剩下的选择

nnU-net是一个深度学习方法,可以自动进行预处理、网络架构搭建、训练和后处理

2 Architectural

  • 使用Leaky ReLU代替了ReLU,用InstanceNorm代替了BatchNorm

  • 使用一个2D U-net,因为有证据表明当数据是各向异性时,3D分割效果很差

  • 3D U-net,128*128*128,batch size = 2

  • 级联3D U-net,为了解决3D U-net在大尺寸图像上的缺陷

    训练过程为:第一级U-net在下采样的图像上进行训练,将结构上采样为原始模型的大小,并将其输出作为一个额外的Channel(one-hot编码后),送入第二级,第二级用分块的策略进行训练

3 Preprocessing

  • Cropping:将所有的非零区域进行剪裁
  • Resampling:.nii文件有采样距离这个参数,将所有数据用采样距离的中值进行重采样
    • 若重采样后模型的大小在3D U-net的四倍以上,就使用级联3D U-net
  • Normalization:对CT,先搜集mask内的像素值,截断到[0.5, 99.5]%,然后进行z-score标准化;对MRI,直接标准化

4 Training

  • 5折交叉验证
  • Loss = Dice + CrossEntropy
  • Adam Optimizer, lr=3e-4, 250 batch / epoch
  • weight decay = 5,若训练集的指数滑动平均loss在近30个epoch内减少不够5e-3
  • 训练停止:lr > 1e-5 and 指数滑动平均loss在近60个epoch内减少不到5e-3
  • 数据扩充:随机旋转,缩放,弹性形变,gamma矫正和镜像
  • 每个Batch超过1/3的样本必须是随机选择的前景

5 Predict

所有的推断都是基于patch-wise的

对于每一个图像块,边缘体素是低权重的,中心体素权重高

每个图像块的重叠大小为size/2,用TTA进行集成

使用5个交叉训练的模型进行集成

6 Postprocessing

仅保留最大的连通域作为预测区域



Comments