Hypermorph是一篇2021年提出的医学图像配准工作,相关的论文有两篇。一篇是《HyperMorph: Amortized Hyperparameter Learning for Image Registration》;另一篇是《Learning the Effect of Registration Hyperparameters with HyperMorph》,讲的内容基本都一样。不过,尽管这两篇论文已经提出有一段时间了,但是中文网站上几乎没有对其内容的讲解。正好我去年在川师学报上,受其灵感投了一篇关于如何平衡搜索损失超参数成本的论文。一来二来,就仔细讲解这篇论文的思路。
(相关资料图)
我不打算直接机翻这篇论文那样,草草了事,而是从这篇论文构思开始入手。
引言:配准任务中的损失函数
这个公式不解释,相信只要对配准有初步了解的,都知道。
但是,有没有好奇这里的平滑项权重到底是多少才是最好的?
一个最自然而然的办法是采用网格搜索的办法,去一个一个试。例如Voxelmorph在相似度量函数选择MSE和CC时,得到在脑部MRI图像配准上的各自的最优超参数值0.02和1。
从图中可以发现,配准性能对超参数选择异常敏感,最优和最差性能相差5%。
如果我是一个研究脑部MRI图像配准方向的,那么先前的研究已经积累了大量的经验设置,我无需再一一调整,只需one value fits all,拿来主义就行。这也是大多数学者的办法,不对这方面进行深思。
但如果我是一个研究肺部CT图像配准方向的,或者其他什么奇奇怪怪的图像配准方向的。当我使用Voxelmorph作为配准模型时,我能不能不假思索地得到应用于肺部CT图像的最优损失超参数和脑部MRI图像一样?
相信你已经有心里的答案了。
这也就引出搜索最优超参数的重要性。但是这一搜索过程是异常耗费时间和算力的。
如图所示,典型的网格搜索过程包含四个步骤。
一、用不同的超参数去训练相同结构的模型;
二、在验证集上测试性能;
三、绘制折线图,选择最优的超参数的大致出现的范围;
四、进一步细化超参数的范围,继续训练。
显而易见,这种策略有两种缺陷:
其一、训练成本随超参数的数量而呈现指数增长,当需要找一个超参数时,尚可接受,但如果是多个呢?
其二、测试的性能受采样超参数步长和随机因子干扰大,容易将最佳采样点遗漏。
相信你已经在思考能不能找到一种办法,极大地减少模型重复训练时的成本?
这就引出Hypermorph的创新点。
引言:超网络和超卷积
超网络这个概念不是一个新鲜词,首次在2016年提出,不做过多阐述。简言之,这是一种给另一个大网络生成权重的小网络的网络架构。
而超卷积这一概念由论文《Hyper-Convolution Networks for Biomedical Image Segmentation》首次提出,使用两个全连接层(小网络)去生成常规卷积(大网络)的权重和偏置。换句话说,超卷积的参数不是训练得到的;而是被这两个全连接层间接操控,而这两个全连接层的参数才是训练得到的。
需要特别注意的是,全连接层的输出是一维向量,我们需要重塑变成一个常规卷积的权重和偏置尺寸大小才可以实现传统意义上的卷积运算操作。
如图所示,其中Dense是tensorflow的稠密层,等同于深度学习中的全连接层概念。表示输入的图像;表示卷积后的图像特征;表示来自超卷积的另一个输入(不同于图像);和表示卷积的权重和偏置。
这几乎已经呼之欲出了,操控卷积的参数,不同值的就生成不同值的卷积参数。只要我们把的取值一一列出,那么这里面总有一个对应最好的提取特征能力强的卷积参数,只要一一在验证集测试一下,我们就完成了挑选最优提取特征强的卷积参数的步骤。
但是,这跟损失超参数有什么联系呢?莫非这个就是超参数?
这就是Hyermorph的精华亮点所在。
如图所示,Hypermorph包含两个步骤,
一、仅训练一个模型,这个模型具有三个输入(移动图像、固定图像和损失超参数);
二、调控损失超参数在验证集上测试。
Hyeprmorph的网络结构与Voxelmorph基本一样,最大不同在于,其中的卷积全部替换为了超卷积。这使得损失超参数可以控制网络中的每个卷积参数。
需要注意的是,损失超参数不仅用于网络的输入,也同样在损失函数中使用。
为了使得总损失函数更符合训练流程,可以对如上公式进行简单改进,将损失超参数范围映射到0-1之间:
对应代码可以这样描述:
如图所示,使用Hypermorph(蓝色曲线)预测的曲线与使用Vxoelmorph(灰色折线)通过网格搜索得到超参数值非常接近。
如图所示,使用如下损失函数:
其中,和表示固定图像和移动图像所对应的分割图。换言之,这是在搜索两个损失项的最优超参数。
在这种情况下,Hypermorph仍然发挥优秀,能够找到最优的超参数值。
如gif所示,超参数被设置不同值所对应的配准结果。形象地展现配准结果对超参数的敏感性。
最后,根据我个人实验结果和个人的分析,
总结Hypermorph的优点:
一、准确并快速地搜索最优损失超参数的值;
二、即插即用,不限于Voxelmorph,可以构建结合超网络的任意配准模型架构;
三、与网格搜索策略相比,极大摊销了搜索成本,并且随着搜索损失项的数目增加,潜力也越大。
Hypermorph的缺点:
一、性能强烈依赖于原模型Voxelmorph的性能,即使仔细地调整,一般性能与原模型持平或者略高一点,难以大幅度提升性能。
二、针对两个数量级相差较大的损失超参数需要额外设置缩放因子,以免对其搜索不够充分。
最后的最后,发下我的毕业证书,恭喜我毕业了!
关键词:
版权与免责声明:
1 本网注明“来源:×××”(非商业周刊网)的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,本网不承担此类稿件侵权行为的连带责任。
2 在本网的新闻页面或BBS上进行跟帖或发表言论者,文责自负。
3 相关信息并未经过本网站证实,不对您构成任何投资建议,据此操作,风险自担。
4 如涉及作品内容、版权等其它问题,请在30日内同本网联系。