基于图像自适应GAN重构
基于ProGAN的图像重建
Abu Hussein, S., Tirer, T. and Giryes, R. 2020. Image-Adaptive GAN Based Reconstruction. Proceedings of the AAAI Conference on Artificial Intelligence. 34, 04 (Apr. 2020), 3121-3129. DOI:https://doi.org/10.1609/aaai.v34i04.5708.
摘要
近年来,由变分自动编码器和生成对抗网络等(深层)生成模型产生的样本质量有了显著提高。
然而,这些方法的表示能力仍然不能捕捉复杂类别的图像的完整分布,如人脸。
这一缺陷在之前使用预先训练的生成模型来解决成像反问题的工作中已经被清楚地观察到。
在本文中,我们建议减轻生成器的有限表示能力,使它们图像自适应,并通过反向投影强制恢复与观测的遵从性。
我们通过经验证明了我们所提出的方法在图像超分辨率和压缩感知方面的优势。
介绍
近年来,深度学习的发展(Goodfellow、Bengio和Courville 2016)导致了学习生成模型的显著改进。
像变分自动编码器(VAEs) (Kingma和Welling 2013)、生成式对抗网络(GANs) (Goodfellow等人2014)和潜在空间优化(GLOs) (Bojanowski等人2018)等方法在建模数据分布方面取得了成功。
然而,对于复杂的图像类,例如人脸,虽然这些方法可以生成很好的示例,但它们的表示功能不能捕获完整的分布。这种现象有时在文献中被称为模式崩溃,特别是在GANs的背景下(Arjovsky, Chintala, and Bottou 2017;Karras等人,2017)。然而,正如(Richardson和Weiss 2018)所表明的,这在最近的其他学习方法中也很常见。从深度学习的发展中获得很多成果的另一个领域是成像逆问题,其目标是从退化或压缩的观测结果y中恢复图像x (Bertero和Boccacci 1998)。这些工作大多集中在训练卷积神经网络(CNN)学习特定观测模型从y到x的逆映射(例如具有一定比例因子的超分辨率和双三次抗混叠核(Dong et al. 2014))。然而,最近的研究建议使用神经网络来处理之前的图像,而不需要对每个不同的观察模型进行详尽的离线训练。这可以通过使用CNN降噪器来实现(Zhang et al. 2017;
Meinhardt等人,2017;Rick Chang等人2017)插入迭代优化方案(Venkatakrishnan、Bouman和Wohlberg 2013;Metzler, Maleki和Barniuk 2016;Tirer和Giryes 2018),从零开始训练神经网络,直接在测试图像上(基于单个图像内信息的内部递归)成像任务(Shocher, Cohen,和Irani 2018;Ulyanov, Vedaldi和Lempitsky 2018),或使用生成模型(Bora等人2017;Yeh等,2017Hand, Leong和Voroninski 2018)。
使用生成模型作为先验的方法只能处理属于该模型所训练的类的图像。然而,生成性学习为它们提供了其他策略所缺乏的有价值的语义信息。例如,如果眼睛在修复任务中完全缺失,那么一种不基于生成模型的方法无法产生感知上令人愉快的人脸图像(Yeh等。2017)。使用生成模型恢复复杂图像的主要缺点是生成器的表示能力有限。即使一个人在预先训练过的生成器的范围内搜索最接近原始x的图像,他也会得到显著的不匹配(Bora等人,2017年)。
在这项工作中,我们提出了一个策略,以减轻生成器在求解反问题时有限的表示能力。该策略基于测试时的温和内部学习阶段,这本质上使生成器图像自适应,同时保持在离线训练中获得的有用信息。此外,在低噪声的场景中,我们提出通过严格执行恢复与观测值y的反投影步骤进一步改进重建。我们通过经验证明了我们提出的方法在图像超分辨率和压缩感知方面的优势。
相关工作
我们的工作主要与Bora等人(2017)的工作有关,他们建议使用预先训练的生成模型来完成压缩感知(CS)任务(Donoho 2006;Candes, Romberg, and Tao 2006):在下式的形式中通过观测值
y
∈
R
m
y\in\mathbb R^m
y∈Rm重建未知信号
x
∈
R
n
x \in\mathbb R^n
x∈Rn
y
=
A
x
+
e
,
y = Ax + e,
y=Ax+e,
其中A是一个m×n的测量矩阵,
e
∈
R
m
e\in\mathbb R^m
e∈Rm表示噪声,并且测量的数量比信号的环境维度小得多,即,
m
≪
n
m \ll n
m≪n。其次,事实上在非常流行的生成模型(GANs,VAEs和GLOs)的生成器G(.)是学习一个映射,从低维空间
z
∈
R
k
z\in\mathbb R^k
z∈Rk到信号空间
G
(
z
)
∈
R
n
G(z)\in\mathbb R^n
G(z)∈Rn。作者(Bora et al . 2017年)提出了一个方法,称为CSGM,估计信号
x
^
=
G
(
z
^
)
\hat x = G (\hat z)
x^=G(z^),其中
z
^
\hat z
z^是通过使用反向传播和基于标准梯度的优化器最小化非凸的代价函数得到的
f
(
z
)
=
∣
∣
y
−
A
G
(
z
)
∣
∣
2
2
f(z)=||y-AG(z)||^2_2
f(z)=∣∣y−AG(z)∣∣22
对于特定类别的图像,如手写数字和人脸,(Bora et al. 2017;Hand, Leong和Voroninski 2018)的研究表明,与使用非生成先验的方法(例如基于模型的)相比,使用学习生成模型能够以更少的测量值重建漂亮的图像。然而,与后者不同的是,已有研究表明,即使在没有噪声和观测量非常大的情况下,CSGM及其变体也无法提供准确的恢复。这一缺陷主要是由于生成模型的表示能力有限(见(Bora et al. 2017)第6.3节),并且在最近的相关作品中也很常见(Hand、Leong和Voroninski 2018;博拉、普莱斯和迪马吉斯2018;Dhar, Grover和Ermon 2018;Shah和Hegde 2018)。然而,与后者不同的是,已有研究表明,即使在没有噪声和观测量非常大的情况下,CSGM及其变体也无法提供准确的复原。这一缺陷主要是由于生成模型的表示能力有限(见(Bora et al. 2017)第6.3节),并且在最近的相关作品中也很常见(Hand、Leong和Voroninski 2018;博拉、普莱斯和迪马吉斯2018;Dhar, Grover和Ermon 2018;Shah和Hegde 2018)
需要注意的是,利用A的特定结构,模型(1)可以用于不同的成像逆问题,因此CSGM方法也适用于这些问题。例如,当A是一个
n
∗
n
n*n
n∗n的单位矩阵
I
n
I_n
In时,它可以用于去噪任务;当A是一个
m
∗
n
m*n
m∗n的样本矩阵(例如,
I
n
I_n
In的m行的一个选择)时,可以用于修复任务;当A是一个模糊算子时,可以用于变清晰任务,A是一个模糊的复合运算符时可以用于超分辨率任务(即一个抗混叠滤波)以及下采样。
我们的图像自适应方法受到(Tirer和Giryes 2019)的启发,它本身受到(Shocher、Cohen和Irani 2018;乌尔诺夫、维达尔迪和兰姆皮茨基2018年)。这些作品遵循的理念是,在同一幅图像中,在同一尺度内和跨尺度内,信息在单一图像内的内部重复(Glasner, Bagon, and Irani 2009)。然而,尽管这两种方法完全避免离线训练阶段和仅在测试阶段优化神经网络的权值。另一研究通过离线训练CNN降噪器,将外部学习和内部学习结合起来,在测试阶段对它们进行微调,然后将它们插入基于模型的优化方案中。但是,请注意,(Tirer and Giryes 2019)中的内部学习阶段使用补丁从y作为去噪损失函数(
f
(
x
~
)
=
∣
∣
y
−
x
~
∣
∣
2
2
f(\widetilde x)=||y-\widetilde x||^2_2
f(x
)=∣∣y−x
∣∣22)的ground truth,基于y直接包含x中重复出现的模式的假设,因此,该方法要求y不是很退化,这使得它可能只适合于超分辨率任务,类似于(Shocher, Cohen, and Irani 2018),这也仅限于此问题。
请注意(Ulyanov, Vedaldi, and Lempitsky 2018)中的方法,称为深度图像先验(DIP),可以应用于不同的观察模型。然而,我们方法的优势来自于离线生成学习,它捕捉了DIP所缺乏的有价值的语义信息。如上所述,像DIP这样的方法,不基于生成模型,如果在修复任务中眼睛完全缺失,就不能产生感知上令人愉快的人脸图像(Yeh等。2017)。在本文中,我们证明了这一优势也适用于图像超分辨率和压缩感知的高度不适定场景。此外,请注意DIP方法通常只适用于巨大的u-net一样的架构,需要为每个反问题进行修改,需要比普通生成器更多的内存。事实上,我们很难(GPU内存溢出,长时间运行)将DIP应用到1024*1024张CelebA-HQ数据集上(Karras et al. 2017)。
提出的方法
在这项工作中,我们的目标是使生成模型的反问题解决方案更忠实于观测结果和更准确,尽管预先训练生成器的表示能力有限。为此,我们提出了一种图像自适应方法,其动机可以从语言和数学上进行解释(基于(Bora等,2017)的理论结果)。我们还讨论了一个可以进一步改善低噪声场景下的结果的反投影后处理步骤。而这种后处理,通常只能适度地改善基于模型的超分辨率算法的结果(Glasner, Bagon, and Irani 2009;Yang et al. 2010),我们将证明它对于生成性先验是非常有效的。据我们所知,我们是第一个在基于生成先验的重建中使用它的人。
Image-Adaptive图像自适应方法
我们提出利用内部学习的方法,在测试时间内对生成器进行图像自适应(IA),以处理生成器有限的表示能力。具体来说,代替复原潜在信号x作为我们建议通过最小化代价函数来同时优化z和生成器参数θ,而不是将潜在信号x恢复为x = G(z),其中G(·)是一个预先训练的生成器,z是(2)的最小值,我们建议同时优化z和生成器参数θ,通过使用反向传播和基于标准梯度的优化器来最小化代价函数
f
I
A
(
θ
,
z
)
=
∣
∣
y
−
A
G
θ
(
z
)
∣
∣
2
2
.
(
2
)
f_{IA}(\theta,z)=||y-AG_\theta(z)||_2^2.(2)
fIA(θ,z)=∣∣y−AGθ(z)∣∣22.(2)
θ的初始值为预先训练的权值,z的初始值为
z
^
\hat z
z^,仅对z进行最小化,与CSGM中一样。然后,我们执行联合最小化来获得
θ
^
I
A
\hat\theta_{IA}
θ^IA和
z
^
I
A
\hat z_{IA}
z^IA,并用
x
^
I
A
=
G
θ
^
I
A
(
z
^
I
A
)
\hat x_{IA}=G_{\hat\theta_{IA}}(\hat z_{IA})
x^IA=Gθ^IA(z^IA).
我们的方法背后的基本原理可以解释如下。当前领先的学习策略并不能训练出一个表示范围可以涵盖每一个复杂分布的样本的生成器,因此,仅仅优化z并不足够。然而,深度神经网络的表达能力(通过优化权重
θ
\theta
θ给出)允许创造一个与观测值y一致的单一特定样本。然而,与之前仅通过内部学习优化神经网络权值的工作相反(Shocher, Cohen, and Irani 2018;Ulyanov, Vedaldi和Lempitsky 2018),在这里,我们将测试时捕获的信息与离线生成学习获得的有价值的语义知识结合起来。
确保捕获的信息在测试时间不为代价来离线测试图像的信息是有用的,我们开始优化z,正如上面提到的,然后应用联合最小化一个小的学习速率和早期停止(细节在下面的实验部分)。
IAGAN的数学原理
对观察结果的“硬”和“软”遵从性
实验
在我们的实验中,我们使用了两个最近提出的GAN模型,已知它们可以生成非常高质量的人脸样本。第一个是 BEGAN (Berthelot, Schumm, and Metz 2017),在CelebA数据集(Liu et al. 2015)上进行训练,从一个统一随机向量
z
∈
R
64
z\in\mathbb R^{64}
z∈R64生成128128张图像。第二种是PGGAN (Karras et al. 2017),在CelebA-HQ数据集(Karras et al. 2017)上进行训练,该数据集从高斯随机向量
z
∈
R
512
z\in\mathbb R^{512}
z∈R512生成10241024张图像。我们使用官方的预训练模型,关于模型及其训练过程的详细信息,请读者参考原始出版物。请注意,以前使用生成模型来解决反问题的工作,考虑了更简单的数据集,如MNIST (LeCun et al. 1998)或一个小版本的CelebA(缩小到64*64),这可能不能说明模式崩溃的影响有多严重。
测试时间的过程如下,两个模型几乎相同。对于CSGM,我们遵循(Bora et al. 2017)并使用Adam优化器(Kingma and Ba 2014)优化(2),学习率(LR)为0.1。我们对BEGAN使用1600次迭代,对PGGAN使用1800次迭代。最终选择z,即
z
^
\hat z
z^,被选择作为迭代过程中
f
(
z
)
f(z)
f(z)的最小的目标值,GSGM恢复为
x
^
=
G
(
z
^
)
\hat x= G(\hat z)
x^=G(z^),执行一个后处理BP步骤(10)也给我们一个重建,我们表示为CSGM-BP。
在基于图像自适应GANs(我们用IAGAN表示)的重建中,我们用zˆ初始化z,然后对z和θ(生成器参数)联合优化(3)。在所有情况下,我们用LR= 10-4表示z和θ,对于PGGAN,我们分别用LR=10-4和10-3表示z和θ。在开始阶段,我们使用600次迭代进行压缩感知,500次迭代用于超分辨率。对于PGGAN,我们分别使用500和300次迭代来进行压缩感知和超分辨率。在被检查的噪声场景中,我们只使用了一半的迭代量,以避免噪声过拟合。根据最小目标值选择最终最小值θIA和zIA,由
x
^
θ
I
A
=
G
θ
^
I
A
(
z
^
I
A
)
.
\hat x_{\theta_{IA}}=G_{\hat\theta{IA}}(\hat z_{IA}).
x^θIA=Gθ^IA(z^IA).得到IAGAN结果。另一种恢复也使用了
x
^
I
A
\hat x_{IA}
x^IA的后处理BP步骤(10),用IAGAN-BP表示。
我们还比较了DIP方法(Ulyanov, Vedaldi, and Lempitsky 2018)。对于无噪声场景,我们使用DIP官方实现,对于已检查的有噪声场景,我们将迭代次数减少4倍(为最佳平均性能调整),以防止网络过拟合噪声
除了呈现视觉结果2外,我们用两种定量的方法比较了不同方法的性能。第一个是广泛使用的均方误差(MSE)(有时以其PSNR形式3)。第二是关注感知相似性(PS)的图像之间的距离,这已经在(Zhang et al. 2018)中提出(我们使用官方实现)。显示PS很重要,因为众所周知,PSNR/MSE可能与重建的视觉/感知质量无关。注意,在PS中分数越低越好。
压缩感知Compressed Sensing
在第一个实验中,我们证明了所提出的IA和BP技术在很大范围的压缩比下是如何显著优于或改进CSGM的。我们考虑使用m n高斯矩阵A和从Aij n (0,1 /m)提取的i.i.d.项进行无噪声压缩感知,类似于(Bora等人,2017)的实验。在这种情况下,没有有效的方法来实现操作符A和AT。因此,我们只考虑生成128 × 128图像的begin(即n = 3 × 1282 = 49,152),这比PGGAN生成的图像要小得多。
图1给出了几个可视化的结果,图2给出了不同方法在改变测量次数m(即改变压缩比m/n)时的重构MSE。结果是平均20个图像从CelebA数据集。可以清楚地看到,对于m的所有值,IAGAN的表现都优于CSGM。值得注意的是,由于begin的表示能力有限(也就是它的mode collapse), CSGM的表现在m的相当小的值时达到了一个平台期,而IAGAN误差则持续下降。投影策略
超分辨率
去模糊
结论
在这项工作中,我们考虑使用生成模型来解决成像反问题。这类应用程序的主要缺陷是生成器的表示能力有限,不幸的是它不能捕捉复杂图像类的完整分布。我们提出了两种策略来缓解这个问题。其中一种技术是后处理的反投影步骤,它适用于低噪声水平,从本质上消除了存在于测量矩阵行空间的发电机表示误差的组成部分。第二种技术是我们的主要贡献,它是一种图像自适应方法,称为IAGAN,它提高了生成器表示特定测试图像的能力。该方法还可以改善测量矩阵的零空间恢复。你也可以同时使用这两种策略。在压缩感知和超分辨率任务上的实验表明,我们的策略,特别是图像自适应方法,产生了显著改善的重建,这比其他选择更准确和感知愉快。