U-net小结

是的,分配到做神经网络的这块了(我的大数据没了)。

 九月中下旬实验室每个人的研究方向确定之后,就有师兄师姐带我们学习了。我的方向是基于GAN的三维变化检测,师姐在让我看了神经网络和卷积神经网络的原理之后就开始看论文了,第一篇就是u-net了。起初第一遍看论文的时候全部翻译成中文,被师姐发现了,让我看英文原文,不懂的单词再去翻译(太南了,哭了)。

经过一段时间的折磨之后,下面是论文的一些小结(翻译就不必了,网上一大堆):

首先是U-Net的网络结构(论文中给出的结构图):

U-net小结_第1张图片

其中在红线左边的事contracting path(收缩层),右边的事expansive path(扩展层),contracting对输入进行卷积以及池化操作,提取抽象的特征,expansive将抽象的特征进行反卷积,以及将左边contracting部分对应的高分辨率的图连接再进行卷积,因为是二分类,所以最后输出两层。

结构的输入是一张图片,本来输入的图片应该事512*512的大小,因为为了更好的处理边界像素,u-net采用了镜像操作的的方法来解决这个问题(如下图所示):

U-net小结_第2张图片

上图可以看出,两个边缘部分的都做了镜像处理。镜像操作的原理就是给输入图像加一个镜像的对称边,这个对称边的长度可以通过感受野来确定,每条边上下共增加一个感受野的长度,其中感受野的计算公式RF = (RF - 1)  * 2 + 2。那么根据u-net的网络结构图来看,感受野的计算如下:

RF = ((((0 * 2) + 2 + 2) * 2 + 2 + 2) * 2 + 2 + 2) * 2 + 2 + 2 = 60

即每条边上下各增加一半的感受野,所以得到输入图像为572 * 572。

然后u-net网络是用两个3 * 3的卷积核进行无填充卷积,激活函数使用的是ReLU,因为用的是无填充卷积,所以在每次卷积之后大小会少两个像素点,每两次卷积之后进行一次池化操作,卷积使特征通道的数目加倍,使用2 * 2的最大池化进行池化,池化操作不改变特征通道的数量,只改变图像的大小(池化的作用就是向下采样、降维、去冗信息以及对特征图进行压缩)。再然后就是右边的expansive,u-net使用的反卷积核大小是2 * 2的,每次向上卷积,特征通道数目减半,然后将左边对应的高分辨率图像进行裁剪并与右边进行连接,使输出结果更为准确。

接下来的权重的分配问题,论文中给出的公式如下:

U-net小结_第3张图片

其中d1表示像素点到离它最近的细胞的距离,d2表示像素点到离它第二近的细胞的距离,由公式可得出,离细胞边界越近的像素点所有的权值越大,反之离细胞边界越远,权重越小。文中给出的分离边界的损失函数如下:

 

得出相应的像素点的权重之后就可以更好的对细胞边界进行分割。

文中还提到,由于数据集的数据量较小,故将图像做弹性形变来增强数据。因为细胞的形变是非常常见的,这里去学习弹性形变中的不变性,就可以再数据集较小的情况下,就算遇到形变的细胞也能准确的检测出来,进行正确的分割。

相比u-net之前的网络,u-net提出了更好的方案。使用镜像加边来减少边缘像素点的损失,使用弹性形变来增强数据,使用复制裁剪连接来提高输出的准确性。上面大概就是看了两三遍论文以及部分解释之后的一些收获。

你可能感兴趣的:(神经网络)