近年来,基于深度学习的图像降噪/去模糊的算法,在图像恢复领域取得了显著的进展。但与此同时,这些方法的系统复杂度相应的也在上升,如图1. 所示。
由此自然产生了一个问题,简单的模型是否也有可能达到最先进的性能?本文尝试回答这个问题,并给出肯定的答复。在本文中,我们先展示如何从零开始搭建一个简单同时性能优秀的基线模型,然后进一步简化该模型:我们发现甚至连传统的激活函数(如ReLU,GELU,Sigmoid等)都不是必须的:它们可以被去除或者被简单的乘法替代。
图1. 当前一些图像恢复方法
如何从零搭建简单基线
深度学习模型通常是由一些基础操作(比如卷积/激活函数等)组合而成的模块(block)堆叠在一起构成的。我们先讨论堆叠模块的方式,然后再考虑模块内部的基础元素应该怎样选择。
图2. UNet结构示意图
在各种深度学习方法蓬勃发展的当下,堆叠模块的方式也有许多不同方案,比如MPRNet[1]/HINet[2]等网络采用了多阶段的设计,将简单的结构串联起来;MIMO-UNet[3]等方法则考虑将各个不同空间大小的特征连接在一起。
而另一方面,我们发现简单的结构:UNet(如图2.)还是有一战之力的:当前一些性能优秀的方法[4],[5]是基于UNet或其变种。基于以上观察,我们认为UNet结构仍然