U-Net: Convolutional Networks for Biomedical Image Segmentation
U-Net,用卷积神经网络来做生物医学图片分割
Ronneberger O, Fischer P, Brox T. U-net: Convolutional networks for biomedical image segmentation[C]//International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015: 234-241.
总结
提出了一种深度学习模型来对图片,本文针对的是细胞的显微图像,做语义分割,模型特点主要是没有全连接层(会丢失位置信息),通过捷径连接来弥补池化过程中丢失的位置信息,通过上采样来恢复特征图到输入图像大小。使用数据扩增和加权损失来解决数据量少的问题。
摘要
很多人都坚信深度学习需要大量标注的训练样本才能训练成功。本文提出了一种网络结构,依靠数据扩增来有效利用数据,用少量的标注数据来训练。网络是一个对称的结构,左边是减小图片尺寸,右边恢复图片大小,端到端的结构。数据是显微图片,ISBI2015冠军。计算速度快,512图片在一个GPU上小于1秒。caffe实现http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net.
引言
深度学习在图像领域取得了很大的进步。
在病理图像方面,有基于深度学习patch分类的方法,根据像素周围的patch分类来判断该像素是什么类,在ISBI2012上提升很大。
该方法有两个缺点,一是由于重叠patch冗余而导致计算效率低,二是需要权衡准确率和感受野,增加池化可以增大感受野但是准确率会降低。
模型介绍
本文基于FCN,设计网络结构,目的在于使用少量的图片进行更精确的分割。
网络的左边是把图片变小,是一个典型的卷积网络结构。每一层都是两个3x3卷积+ReLU,一个2x2步长2的最大池化。右边通过一个2x2的反卷积进行上采样,feature map是上层和同级裁剪之后合并,通过2个3x3的卷积+ReLU。最后一层是1x1的卷积,用来生成分类用的分数。
要点
- 用上采样来代替池化操作,来增大输出的分辨率
- 为了定位,将特征提取的高分辨率特征和上采样的输出连接在一起,补充池化中损失的信息
- 没有使用任何全连接层,因为全连接层会损失位置信息,同时没有全连接层,可以使用任意大的图片,除非GPU内存不够
- 中间黄框是原图,通过镜像扩大原图至蓝框大小,放入模型训练和预测,因为没有padding,所以卷积减小图大小,最后模型输出是和黄框一样大小的掩膜
数据扩增
帮助模型学习到需要学习的知识,增加模型的鲁棒性。主要使用了翻转、旋转、变形和灰度值变换,对于数据集小的情况,变形是一个很好的扩增方法。
损失函数
使用加权交叉熵来计算二分类问题的损失。