微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 深度学习如何进行MRI图像右心室分割

深度学习如何进行MRI图像右心室分割

时间:09-17 来源: 点击:

割问题的复杂性。然而,验证戴斯系数为0.79(0.24),所以u-net过强。图像增强改进了泛化,并将验证精度提高到了0.82(0.23),代价是将训练精度降至0.91(0.06)。

  我们如何进一步地降低训练与验证之间的差距呢?正如Andrew Ng在这个很棒的谈话中描述的那样,我们可以用更多的数据(这不太可能)、正则化(dropout和批处理规范化没有效果)、或尝试新的模型架构。

  扩张U-net:全局感受野

  要对器官图像进行分割,需要了解器官之间排列的相关知识。事实证明,即使在u-net最深层的神经元也只有68&TImes;68像素的感受野。网络的任何部分都无法"看到"整个图像。网络不知道人类只有一个右心室。例如,下面的图片中,箭头标记的地方被错误分类了:

  

  我们使用扩张卷积来增加网络的感受野。

  

  在上图中,底层的卷积是规则的3&TImes;3卷积。下一层,我们将卷积扩大了2倍,所以在原始图像中它们的有效感受野是7&TImes;7。如果顶层卷积扩大4倍,则能产生15×15的感受野。以此类推。

  

  从原理上来说,黄色标记的卷积层被u-net中的扩张卷积所替代。最内层的神经元现在具有了覆盖整个输入图像的感受野。我称之为"扩张u-net"。

  在数量上,扩张u-net确实提高了效果,达到了0.85(0.19)的验证戴斯分数,同时保持了0.92(0.08)的训练效果!

  扩张DenseNet:一次性多个尺度

  这个灵感来自于物理中的张量网络,我决定尝试使用一个新型的图像分割架构,我称之为"扩张DenseNet"。它结合了扩张卷积和DenseNet这两种想法,这样能够大大减少网络的深度和参数。

  对于分割而言,我们需要来自多个尺度的全局上下文和信息来产生像素级掩码。如果我们完全依赖于扩张卷积来产生全局上下文,而不是通过降采样来将图像变得更小呢?现在,所有卷积层的大小都相同,我们可以应用DenseNet架构的关键思想,并在所有层之间使用"复制和合并"连接。扩张DenseNet的结果如下图所示:

  

  在DenseNet中,第一个卷积层的输出作为输入馈送到所有的后续层中,第二、第三层也这样。

  扩张DenseNet表现不错,在验证集上得到了0.87(0.15)的戴斯得分,训练精度为0.91(0.10),同时保持了极高的参数效率!

  结果

  对人类在RV分割方面的评估给如何对模型的表现进行评估指明了方向。研究人员估计,人类完成RV分割任务的戴斯得分为0.90(0.10)。上面所述的已经发布的模型是完全卷积网络(FCN),测试集上的精度为0.84(0.21)。

  我开发的模型在验证集上已经超过了最新的技术水平,并且正在接近人类的表现!然而,真正的评测是在测试集上评估模型的表现。此外,上面引用的数字是针对心内膜的, 那么心外膜的表现如何呢?我在心外膜上训练了一个单独的模型,并将细分轮廓提交给了组织者,希望能获得最好的成绩。

  以下是结果,首先是心内膜:

  

  这个是心外膜:

  

  扩张u-net与心内膜上的最新技术水平相当,并超过它在心外膜上的表现。扩张DenseNet紧跟其后,仅有190K个参数。

  总结

  深度学习模型的表现有时候看起来似乎很神奇,但这是精心设计的结果。即使数据集很小,精心挑选的数据增强方案也可以让深度学习模型更好地一般化。

  根据这些想法,创建出了最先进的模型来分割心脏MRI中的右心室。我非常高兴地看到了扩张DenseNet能够在其他图像分割评测上成功运行。

  内存高效的扩张DenseNet:密集连接的网络有一个很大的缺点,它需要占用大量的内存。 而TensorFlow的实现却与众不同,它将我们限制在16GB GPU并且一个批次具有3个图像的8个层上。如果切换到之前提出的记忆高效的实现上的话,就可以创建出更深层次的体系架构来。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top