Simple Baselines for Image Restoration论文阅读
Simple Baselines for Image Restoration
-
-
- 1. 论文的研究目标与实际意义
- 2. 创新方法、模型与公式分析
-
- 2.1 架构简化:降低系统复杂度的核心策略
-
2.2 基线模型演进:从PlainNet到Baseline
-
- 2.2.1 起点:PlainNet块
- 2.2.2 关键改进组件
-
2.3 突破性简化:从Baseline到NAFNet
-
- 2.3.1 核心发现:非线性激活的非必要性
- 2.3.2 SimpleGate:用乘法替代GELU
- 2.3.3 简化通道注意力(SCA)
-
2.4 NAFNet最终结构及优势
-
2.5 关键公式汇总
-
2.6 创新性总结
- 3. 实验设计与结果
-
- 3.1 实验设置
-
3.2 关键结果
- 4. 未来研究方向
- 5. 不足与批判
- 6. 可复用的创新点与学习建议
-
- 6.1 核心启发
-
6.2 需补充的背景知识
-
1. 论文的研究目标与实际意义
研究目标 :
论文旨在解决当前图像复原领域(如去噪、去模糊)中模型系统复杂度 (System Complexity)过高的问题。现有SOTA方法虽性能优异,但引入了复杂的模块设计(如多阶段结构、多头注意力),导致模型难以分析、部署和优化。作者提出一个简单高效的基线模型 ,并通过简化发现非线性激活函数(如ReLU、GELU)并非必要 ,最终提出非线性激活自由网络 (NAFNet)。
实际意义 :
- 降低计算成本 :NAFNet在多个任务上以显著更低的计算量 (如GoPro任务仅需8.4%的MACs)超越SOTA,适用于移动端和边缘设备。
- 推动模型可解释性 :简化模型结构有助于研究者聚焦核心组件,加速新方法验证。
- 产业应用潜力 :高效模型可推动实时图像增强(手机摄影、医疗成像、自动驾驶)的落地。
2. 创新方法、模型与公式分析
2.1 架构简化:降低系统复杂度的核心策略
论文将系统复杂度拆解为块间复杂度(Inter-block Complexity) 和块内复杂度(Intra-block Complexity) :
- 块间复杂度 :源于多阶段架构(如串行U-Net)或多尺度特征融合(如跨尺寸特征图连接)。
- 块内复杂度 :模块内部设计(如多头注意力、门控机制)。
解决方案 :
- 统一采用单阶段U-Net架构 (图2c),避免多阶段堆叠:
“We adopt the classic single-stage U-shaped architecture with skip-connections… following Restormer[37] and Uformer[34]”
- 聚焦块内简化 :从最基础的卷积块出发,逐步验证组件的必要性。
2.2 基线模型演进:从PlainNet到Baseline
2.2.1 起点:PlainNet块
- 结构 (图3b):
图3:块内结构对比

(b) PlainNet :基础卷积块(含ReLU)
© Baseline :添加LN、GELU、CA
(d) NAFNet :用SimpleGate、SCA替换非线性组件
卷积 → ReLU → 卷积 + 残差连接
- 问题 :训练不稳定,需降低学习率至 1e^{-4}(表1)。
2.2.2 关键改进组件
通过消融实验(表1)验证以下组件的必要性:
层归一化(LayerNorm, LN) :
* **作用** :稳定训练,允许学习率提升至 $1e^{-3}$。
* **公式** :
\text{LN}(x) = \frac{x - \mu}{\sqrt{\sigma^2 + \epsilon}} \odot \gamma + \beta
* **效果** :GoPro PSNR **+3.39 dB** (28.51 dB → 31.90 dB)。
GELU替换ReLU :
* **动机** :SOTA方法(如Restormer)普遍采用GELU。
* **公式** (论文式(3)):
\text{GELU}(x) \approx 0.5x \left(1 + \tanh\left[\sqrt{2/\pi}(x + 0.044715x^3)\right]\right)
* **效果** :GoPro PSNR **+0.21 dB** (31.90 dB → 32.11 dB)。
通道注意力(Channel Attention, CA) :
* **结构** (图4a):全局平均池化 → FC-ReLU-FC → Sigmoid → 通道加权。
* **公式** (论文式(5)):
\text{CA}(X) = X * \sigma\left(W_2 \cdot \text{ReLU}(W_1 \cdot \text{pool}(X))\right)
* **效果** :引入全局信息,GoPro PSNR **+0.24 dB** (32.11 dB → 32.35 dB)。
最终Baseline结构 (图3c):
卷积 → LayerNorm → GELU → CA → 卷积
2.3 突破性简化:从Baseline到NAFNet
2.3.1 核心发现:非线性激活的非必要性
作者揭示GELU本质是GLU(Gated Linear Unit)的特例 :
-
GLU定义 (论文式(1)):
\text{Gate}(X, f, g,\sigma) = f(X) \odot \sigma(g(X)) -
GELU与GLU关联 (论文式(2)):
\text{GELU}(x) = x \cdot \Phi(x) \quad (\Phi: \text{标准正态累积分布函数})
当 f,g 为恒等映射且 \sigma = \Phi 时,GLU退化为GELU。
2.3.2 SimpleGate:用乘法替代GELU
-
关键创新 :移除GLU中的非线性 \sigma,仅保留乘法:
\text{SimpleGate}(X) = X_{:c} \odot X_{c:} \quad \text{(4)}
其中 X \in \mathbb{R}^{H \times W \times 2c} 沿通道拆分为两份 X_{:c}, X_{c:} \in \mathbb{R}^{H \times W \times c}。 -
优势 :
- 计算量显著低于GELU(无复杂近似计算)。
- 性能提升 :GoPro PSNR +0.41 dB (32.35 dB → 32.76 dB)(表2)。
2.3.3 简化通道注意力(SCA)
- 动机 :CA与GLU形式相似(均为 X * \Psi(X)),可进一步简化。
图4:通道注意力与门控机制简化

(a) CA :含ReLU和Sigmoid
(b) SCA :移除非线性激活
© SimpleGate :通道拆分后直接相乘
-
SCA结构 (图4b):移除CA中的ReLU和Sigmoid:
\text{SCA}(X) = X * (W \cdot \text{pool}(X)) \quad \text{(论文式(7))} -
效果 :GoPro PSNR +0.09 dB (32.76 dB → 32.85 dB),计算量不变(表2)。
2.4 NAFNet最终结构及优势
最终块结构 (图3d):
卷积 → LayerNorm → SimpleGate → SCA → 卷积
核心创新点 :
- 完全移除非线性激活函数 (ReLU/GELU/Sigmoid)。
- 通过乘法操作 隐式引入非线性(特征图乘积具非线性表达能力)。
性能对比 (表6,7):
| 模型 | GoPro PSNR | SIDD PSNR | MACs (G) |
|---|---|---|---|
| MPRNet (SOTA) | 33.31 dB | - | 778.2 |
| Baseline | 33.40 dB | 40.30 dB | 65 |
| NAFNet | 33.69 dB | 40.30 dB | 65 |
优势总结 :
- 性能更高 :GoPro任务超越SOTA 0.38 dB,计算量仅8.4%。
- 结构更简 :无复杂注意力机制,块内仅含卷积、LN、乘法。
- 训练稳定 :SimpleGate避免ReLU的梯度消失问题(图8梯度分布可视化)。
2.5 关键公式汇总
| 组件 | 公式编号 | 表达式 |
|---|---|---|
| GLU | (1) | \text{Gate}(X, f, g,\sigma) = f(X) \odot \sigma(g(X)) |
| GELU近似 | (3) | 0.5x \left(1 + \tanh\left[\sqrt{2/\pi}(x + 0.044715x^3)\right]\right) |
| SimpleGate | (4) | \text{SimpleGate}(X) = X_{:c} \odot X_{c:} |
| CA | (5) | X * \sigma\left(W_2 \cdot \text{ReLU}(W_1 \cdot \text{pool}(X))\right) |
| SCA | (7) | X * (W \cdot \text{pool}(X)) |
2.6 创新性总结
NAFNet的核心突破在于:
“The nonlinear activation functions in the baseline can be completely replaced or removed… without loss of performance.”
(论文摘要)
颠覆性结论 :图像复原任务中,非线性激活函数可通过特征图乘法替代 ,为模型设计开辟新范式。
3. 实验设计与结果
3.1 实验设置
- 任务 :图像去噪(SIDD)、去模糊(GoPro)、JPEG去伪影(REDS)。
- 指标 :PSNR(峰值信噪比)、SSIM(结构相似性)、MACs(乘加运算量)。
- 训练细节 :
- Adam优化器,学习率 1e^{-3} → 1e^{-6}(余弦退火)。
- 输入尺寸256×256,批次32。
- 采用TLC(Test-time Local Converter)[7]避免分块测试的伪影。
3.2 关键结果
-
Baseline vs. PlainNet (表1):
- LayerNorm使GoPro PSNR从28.51 dB → 31.90 dB。
- CA使SIDD PSNR达39.85 dB(超越Restormer的40.02 dB)。
-
NAFNet vs. Baseline (表2):
- SimpleGate + SCA:GoPro PSNR 32.35 dB → 32.85 dB 。
-
SOTA对比 (表6-7):
- SIDD去噪 :NAFNet 40.30 dB ,超越Restormer(140 GMACs)0.28 dB,计算量仅一半。
- GoPro去模糊 :NAFNet 33.69 dB ,超越MPRNet(778.2 GMACs)0.38 dB,计算量8.4%。
-
其他任务 :
- RAW去噪 (4Scenes):NAFNet PSNR 40.05 dB (表8),超越PMRID。
- JPEG去伪影 (REDS):NAFNet PSNR 29.09 dB (表9),SOTA。
4. 未来研究方向
泛化能力验证 :
* 当前实验限于特定数据集(SIDD/GoPro),需在更大规模数据(如FFHQ、COCO)验证。
* **挑战** :简化模块是否适用于超分辨率、修复等任务?
理论分析 :
* 为何非线性激活可被乘法替代?需从**函数逼近理论** 解释其数学等价性。
* 研究乘法操作与非线性激活的**表达力差异** 。
硬件适配优化 :
* NAFNet的低计算量适合移动端,可结合**神经架构搜索(NAS)** 进一步压缩模型。
* **投资机会** :边缘设备图像处理芯片(如ISP加速)。
5. 不足与批判
激活函数必要性局限 :
* 实验仅针对图像复原任务,在**高层视觉任务** (检测、分割)中非线性激活可能仍关键。
* 需验证是否因任务依赖(低层信号平滑性)导致结论偏倚。
模块简化边界 :
* 移除所有非线性是否适用于更复杂结构(如Transformer)?
* **存疑点** :在MAXIM[30]等多轴MLP中,非线性可能不可替代。
训练稳定性 :
* 未讨论SimpleGate在**极深层网络** (>100层)中的梯度传播问题。
6. 可复用的创新点与学习建议
6.1 核心启发
“减法设计”思维 :
* 从复杂方法中提炼本质组件(如LayerNorm、CA),避免过度设计。
* **实践建议** :在新任务中优先验证现有模块的必要性。
乘法替代非线性激活 :
* **SimpleGate** (公式4)可直接用于轻量化模型设计。
* **SCA** (公式7)可替代传统通道注意力,减少计算量。
6.2 需补充的背景知识
-
经典模型结构 :
- U-Net[28]、残差连接[13]、注意力机制[32]。
-
归一化技术 :
- LayerNorm[2] vs. BatchNorm[17]的适用场景。
-
门控机制 :
- GLU[9]在NLP/CV中的演进(如Transformer-XL[8])。
