Semi-supervised Transfer Learning for Image Rain Removal

原文链接

  https://arxiv.org/abs/1807.11078

摘要

  深度学习的方法已经被证明对图像去除雨滴问题十分有效,但是之前的深度学习模型需要事先准备大量成对的合成雨滴图像用于训练。这使得这些网络在处理合成雨滴图像时具有更好的效果,但对于真实的测试样本效果往往较差,因为它们的雨滴类型与训练时的所用数据不同。为了解决这个问题,本文首次提出了一种半监督的方法,和传统的方法仅仅用成对的合成图像有监督地学习相比,我们也将真实的有雨的图像,放入了网络的训练过程。这个网络因此通过迁移学习的方式来适应真实的雨天图像,因此训练样本短缺和效果更偏向合成雨图的问题都被解决了。

引言

  传统的方法中,训练数据是使用ps在原来的图片中加入”伪造的”雨滴,从而得到成对的训练图像。另外,需要大量有监督的样本,这是十分耗时而且笨重的。但是,我们可以很容易地获得大量可以使用的无监督样本(雨天的图像),如何理性地运用这些样本不仅是有意义,而且是十分必要的。
  由于训练数据和测试数据的分布不同,这个任务可以自然地被看成一个迁移学习的问题(从合成的rain domain迁移到真实的rain domain)。对于有监督部分,使用least square residuals(最小二乘?)优化;对于无监督部分,使用负的对数似然(negative log-likelihood, NLL)作为损失。总的来说,这篇文章的贡献有以下几点:

  1.据我们所知,这是第一次在SIRR任务中运用迁移学习,而且可以在训练中使用无监督的数据
  2.为图像复原提供了一个结合有监督和无监督的大致方法,对于有监督,可以使用最小二乘损失;对于无监督,利用基于残差理解的参数化的似然项,可以合理地表示出期望输出的clean image与rain image之间的残差
  3.除了梯度下降策略外,我们设计了一种期望最大化算法。雨分布参数和网络的参数在一个epoch中依次优化。实验证明在测试样本中,尤其是在真实的测试样本中,本文的方法与state of the art相比的优越性。

SIRR的半监督模型

  模型的结构如下图所示:
  

  雨滴可以使用混合高斯模型来表示,如下式: \displaystyle\mathcal R \sim \displaystyle\sum_{k=1}^K \pi_k \mathcal N(\mathcal R | \mu_k, \Sigma_k)

  对概率模型估计参数用似然函数,使用负的对数似然损失来表示对无监督样本中雨滴的拟合误差。
\displaystyle\mathcal L_{\text {unsupervised}}(\mathcal R ; \Pi, \Sigma)=-\sum_{n=1}^ N \log \sum_{k=1}^ K \pi_ k \mathcal N\left(\mathcal R_ n | 0, \Sigma_ k\right)

  有监督样本的损失使用最小二乘损失来表示:
\displaystyle \mathcal L_{\text {supervised}}=\sum_{i=1}^ N\left|f_ w\left(x_ i\right)-y_ i\right|_ F^ 2

  由于合成的雨滴和真实的雨滴不同,文中使用KL散度来约束它们之间的差异,使得模型从合成雨图的domain transfer到真实雨图的domain,如上图中间偏右的部分所示。但是这个问题的KL散度是无法解析的,因此使用GMM_{real}中和GMM_{syn}之间KL散度最小的一项来近似替代,如下式所示,以保证从真实样本中学习的GMM至少有一个组成部分接近于雨。

\displaystyle D_{K L}\left(G_{s y n} | G M M_{r e a l}\right) \simeq \min _ k D_{K L}\left(G_{s y n} | G M M_{r e a l}^ k\right)   为了进一步去除可能残留的雨滴,文中对加入了Total Variation正则项来使输出图像更平滑。
  综合以上的几项,总的损失函数定义为:
\displaystyle \mathcal L(w, \Pi, \Sigma)=\sum_{i=1}^{N_ 1}||f_ w(x_ i)- y_ i||_ F^ 2+\alpha \sum_{n=1}^{N_ 2}\left|f_ w(\tilde x)_ n\right|_{T V} + \beta D_{K L}\left(G_ x | G M M_{\tilde x}\right)-\lambda \sum_{n=1}^{N_ 2} \log \sum_{k=1}^ K \pi_ k \mathcal N\left(\tilde x_ n-f_ w(\tilde x)_ n | 0, \Sigma_ k\right)
  其中x_ i, y_ i, i=1, \ldots N_ 1表示成对的有雨和无雨图,\tilde x_ n, n=1, \ldots N_ 2表示没有gt标签的真实的雨图,式中的项\tilde x_ n-f_ w(\tilde x)_ n表示从真实雨图中提取出来的雨。\alpha, \beta , \lambda表示权重,注意如果\alpha, \beta , \lambda都为0时,就退化成了有监督的深度卷积模型。

EM算法

  由于上述的损失函数是不可解析的,因此使用了期望最大化算法来迭代地解决这个问题。

E过程,计算代表特定组成成分的后验分布
M过程,混合分布和CNN的参数被更新

  具体优化过程请看原论文╮(╯_╰)╭。