3D U-Net
论文:https://arxiv.org/pdf/1606.06650.pdf
翻译:https://www.jianshu.com/p/03ba086c47aa
核心:训练过程只要求一部分2D slices,去生成密集的立体分割。
具体有两种方法:
(1)在一个稀疏标注的数据集上训练并在此数据集上预测其他未标注的地方;
人为地利用算法对3D图像中地某些切片(slices)进行标注然后再放入模型中去跑程序
(2)在多个稀疏标注的数据集上训练,然后泛化到新的数据。
假设有代表性地,稀疏地标注训练集是存在地,直接将数据输入模型进行end-to-end地训练
Introduction
3D数据对于生物医学数据分析来说显得非常冗余
- 在三维层面上标注分割label比较困难,因为电脑屏幕上只能展示2D的切片
- 同时,逐层标注大量的切片又很繁琐,且相邻层的信息几乎是相同的
- 因此,完整注释3D数据并不是创建大而丰富的训练数据集的有效方法,尤其是对于需要大量标签数据的学习类算法
在本文中,我们提出了一个只需要用2D标注数据进行训练,就可以进行3D数据分割的网络。
image.png
- a Semi-automated segmentation:可以对只进行了稀疏标注的数据集进行密集标注,细化标注的结果
- b Fully-automated segmentation:对未标注的数据进行预测,生成一个分割后的数据集
在很多的医学影像应用中,很少的训练数据就可以产生很泛化性很优秀的结果
- 这是因为每个图像已经包含了具有相应变化的重复结构
- 3D数据中,这种影响更加明显,甚至我们只需要在两个3D图像上进行训练就可以泛化到第三个上
- 加权损失函数和有针对性的数据增强使我们能够仅使用少量的手动标注切片来训练网络,即,使用稀疏注释的数据训练
网络结构
3D U-Net网络结构,与标准的U-Net类似
包含了一个encoder部分和一个decoder部分,encoder用来分析整张图片并且进行特征提取与分析,decoder是生成一张分割好的块状图。论文中使用的输入图像的大小是132 * 132 * 116,整个网络的结构前半部分(analysis path)包含及使用如下卷积操作:
- 每一层神经网络都包含了两个 3 * 3 * 3的卷积(convolution)
- Batch Normalization
- ReLU(ReLU之前加了BN,使得收敛速度加快。)
- 2 * 2 * 2的max_polling,步长stride = 2(通过在最大池化之前加倍doubling通道数量channels来避免bottlenecks)
解码操作:
-
upconvolution: 2 * 2 * 2,步长=2
-
两个正常的卷积操作:3 * 3 * 3
-
Batch Normalization
-
ReLU
-
通过shortcut,将编码路径中相同分辨率的层传递到解码路径,为其提供原始的高分辨率特征。
最后一层为1×1×1的卷积层,可以减少输出的通道数,最后的输出通道数为标签的类别数量 -
一个重要的部分是加权softmax损失函数,使得网络可以使用稀疏注释的数据进行训练。将未标记的像素的权重设置为零,使得网络可以仅从有标记的像素中学习,并推广到整个立体数据。
3D U-Net和U-Net均没有使用dropout。
训练细节
3D U-Net同样采用了数据增强,主要由rotation、scaling和将图像设置为gray,于此同时在训练数据上和真实标注的数据上运用平滑的密集变形场(smooth dense deformation field),主要是通过从一个正态分布的随机向量样本中选取标准偏差为4的网格,在每个方向上具有32个体素的间距,然后应用B样条插值(B-Spline Interpolation),B样条插值法比较笼统地说法就是在原本地形状上找到一个类似地形状来近似(approximation)。之后就对数据开始进行训练,训练采用加权交叉熵损失(weighted cross-entropy loss function)以至于减少背景的权重并增加标注到的图像数据部分的权重以达到平衡的影响小管和背景体素上的损失。
实验的结果是用IoU(intersection over union)进行衡量的,即比较生成图像与真实被标注部分的重叠部分。3D U-Net的IoU的具体公式如下:
IoU = True Positives / (True Positives + Falese Negatives + False Positives)
如何应用?
对于项目中如何使用 3D 卷积,有如下两点:
- 第三维度上联系密切,比如医学图像上各个slice之间是有联系的,这种情况下是可以考虑3D卷积的。
- 使用 3D 卷积要注意输入通道数、输出通道数与提取的特征图(立方体)之间的区别。