(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布

Watch your Up-Convolution: CNN Based Generative Deep Neural Networks are Failing to Reproduce Spectral Distributions

公众号:EDPJ

目录

0. 摘要

1. 简介

1.1 相关工作

1.1.1 深度造假(Deepfake)检测

1.1.2 GAN 的稳定性

2. 上卷积的谱效应

2.1 在 DFT 功率谱上使用方位角积分(Azimuthal Integration)分析图像的谱分布

2.2 生成式 DNN 中的上卷积

2.3 理论分析

3. 学习生成正确的谱分布 

3.1 谱正则化

3.2 上卷积中滤波器的大小 

4. 实验评估

4.1. Deepfake 检测

4.1.1 Benchmarks

4.1.2 方法

4.1.3 结果

4.2 应用谱正则化 

4.3 频谱正则化的积极影响 

5. 讨论与结论

参考

S. 总结

S.1 主要思想

S.2 上卷积造成的谱失真

S.3 谱正则化

S.4 其他贡献


0. 摘要

生成卷积深度神经网络,例如,流行的 GAN 架构依赖于基于卷积的上采样方法来生成非标量输出,如图像或视频序列。 在本文中,我们展示了常见的上采样方法,即称为上卷积或转置卷积,导致此类模型无法正确再现自然训练数据的谱分布。 这种效果独立于底层架构,我们证明它可用于轻松检测生成的数据,如 deepfakes,在公共基准测试中准确率高达 100%。 为了克服当前生成模型的这一缺点,我们建议在训练优化目标中添加一个新的谱正则化项。 我们表明,这种方法不仅允许训练避免高频错误的谱一致的 GAN。 此外,我们还表明,频谱的正确近似对生成网络的训练稳定性和输出质量有积极影响。

1. 简介

最突出的生成神经网络架构是生成对抗网络 (GAN) 和变分自动编码器 (VAE)。 这两种基本方法都试图从训练数据样本中逼近底层(图像)分布的隐空间模型。 给定这样一个隐空间模型,人们可以绘制新的(人工)样本并在各个维度上操纵它们的语义属性。 虽然 GAN 和 VAE 方法都以许多不同的变体形式发布,例如,具有不同的损失函数、不同的隐空间约束或生成器网络的各种深度神经网络 (DNN) 拓扑结构,所有这些方法 必须遵循基本的数据生成原则:他们必须将样本从低维(通常是一维)和低分辨率隐空间转换为高分辨率(二维图像)输出空间。 因此,这些生成神经网络必须提供某种(可学习的)放大属性。

虽然所有这些生成方法都通过优化某些损失函数来引导模型参数的学习,但最常用的损失只关注输出图像空间的属性,例如,使用卷积神经网络 (CNN) 作为图像生成 GAN 中隐式损失的鉴别器网络。 这种方法已被证明足以生成良好的视觉输出,并且能够在某种程度上捕获图像空间中的数据(图像)分布。 然而,众所周知,放大操作会改变信号的频谱特性,导致输出中出现高频失真。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第1张图片

在本文中,我们研究了生成器网络中常用的上采样技术的影响。 图 1 的顶部图说明了我们最初实验的结果,支持我们的工作假设,即当前的生成网络无法再现谱分布。 图 1 还表明,这种影响与实际生成器网络无关。 

1.1 相关工作

1.1.1 深度造假(Deepfake)检测

我们展示了我们的发现对 Deepfake 检测任务的实际影响。 术语 deepfake 描述了最近人们通过深度生成神经网络滥用人工面部生成技术的进步来制作名人和政客的虚假图像内容的现象。 由于此类造假的潜在社会影响,深度造假检测已成为重要研究课题。 文献中报道的大多数方法,本身都依赖于 CNN,因此需要大量带注释的训练数据。 同样,一些方法引入了具有对比损失函数的深度伪造鉴别器,还有一些方法通过在 CNN 之上采用递归神经网络 (RNN) 来使用时域信息。

1.1.2 GAN 的稳定性

正则化 GAN 以促进更稳定的训练并避免模式崩溃最近引起了一些关注。 虽然可通过对鉴别器的优化来稳定 GAN 训练,但一篇文献提出了通过噪声进行正则化以及一种有效的基于梯度的方法。 最近在一篇文献中提出了一种基于八度卷积(octave convolutions)的稳定 GAN 训练。 这些方法都没有考虑正则化的频谱。 然而,最近,一篇文献中提出了带宽受限的 CNN,用于使用压缩模型进行图像分类。 在另一篇文献中,第一次观察暗示了功率谱对模型鲁棒性的重要性,再次用于图像分类。 相比之下,我们建议利用对 GAN 生成的频谱的观察来训练稳定。 

2. 上卷积的谱效应

2.1 在 DFT 功率谱上使用方位角积分(Azimuthal Integration)分析图像的谱分布

为了分析对光谱分布的影响,我们依赖于傅立叶功率谱的简单但有特征的一维表示。 我们根据大小为 M × N 的 2D(图像)数据 I 的离散傅里叶变换 F 计算谱表示(spectral representation),

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第2张图片

通过径向频率 φ 上的方位角积分

假设正方形图像。 图 2 给出了此处理步骤的示意图。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第3张图片

2.2 生成式 DNN 中的上卷积

像 GAN 这样的生成式神经架构会从非常低维的隐空间产生高维输出,例如,图像。 因此,所有这些方法都需要在通过网络传播数据时使用某种放大机制。 文献和流行实现框架(如 TensorFlow 和 PyTorch)中最常用的两种放大技术如图 3 所示:通过插值进行的上卷积 (up+conv) 和转置卷积 (transconv)。 我们使用非常简单的自动编码器 (AE) 设置(参见图 4)初步研究上采样后上卷积单元对二维图像谱特性的影响。 图 5 显示了两种方法对频谱的不同但巨大的影响。 图 6 给出了重建图像的定性结果,并表明频谱中的错误与视觉外观相关。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第4张图片

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第5张图片

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第6张图片

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第7张图片

2.3 理论分析

对于理论分析,在不失一般性的情况下,我们考虑一维信号 a 及其离散傅立叶变换 ^a 的情况

如果我们想将 a 的空间分辨率提高 2 倍,我们得到

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第8张图片

其中 b_j = 0 用于 “钉床(bed of nails)” 插值(由 transconv 使用),b_j  用于双线性插值(由 up+conv 使用)

让我们首先考虑 b_j = 0 的情况,即“钉床”插值。此时,等式 6 的第二项为零。 第一项类似于原始的傅里叶变换,但参数 k 被替换为 ¯k。 因此,将空间分辨率增加 2 倍会导致频率轴缩减一半。 现在让我们从基于抽样理论的角度考虑影响。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第9张图片

因为与 Dirac 脉冲梳的逐点乘法仅删除 a^up = 0 的值。假设一个周期信号并应用卷积定理,我们得到 

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第10张图片

因此,“bed of nails upsampling” 将在 ^a^up 中创建信号的高频副本。 要去除这些频率副本,需要对上采样信号进行适当的平滑处理。 所有观察到的超过 N / 2 的空间频率都是潜在的上采样伪影。 虽然从理论的角度来看这是显而易见的,但我们也在图 8 中实际证明,使用常用的 3 × 3 卷积滤波器不可能校正如此大的频带(假设中高分辨率图像)。 

在双线性插值的情况下,我们在等式 6 中有

这对应于与 b_j 相邻的值 a 的平均滤波。 这相当于 a^up 的频谱 ^a^up 与 sinc 函数的逐点乘法,通过它们的对偶性和卷积定理,抑制了人工高频。 然而,预计由此产生的频谱在高频域中会过低。 

3. 学习生成正确的谱分布 

我们在上一节中发现的实验评估及其在检测生成内容中的应用(参见第 4.1 节)提出了一个问题,即是否有可能纠正由生成网络中使用的上卷积单元引起的谱失真。 毕竟,通常的网络拓扑结构包含可学习的卷积滤波器,这些滤波器跟随上卷积并且有可能纠正此类错误。 

3.1 谱正则化

由于常见的生成网络架构大多专门使用基于图像空间的损失函数,因此无法直接捕获和校正谱失真。 因此,我们建议在生成器损失中添加一个额外的频谱项:

其中 λ 是加权谱损失影响的超参数。 由于我们已经使用方位角积分(azimuthal integration,AI) 测量谱失真(参见等式 2),并且 AI 是可微分的,因此 L_Spectral 的一个简单选择是生成的输出 AI^out 与从真实样本获得的平均 AI^real 之间的二元交叉熵: 

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第11张图片

请注意,M 是图像大小,我们使用第 0 个系数 (AI_0) 进行归一化,以便将方位角积分的值缩放到 [0, 1]。 

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第12张图片

图 7 显示了将我们的谱损失添加到第 2.2 节中不同 λ 值的 AE 设置的效果。正如我们在第 2.3 节中的理论分析所预期的那样,观察到的效果不能通过单个学习的 3 × 3 滤波器来校正,即使对于大值 λ 也是如此。 因此,我们需要重新考虑架构参数。 

3.2 上卷积中滤波器的大小 

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第13张图片

在图 8 中,我们评估了第 2.2 节中关于 AE 的滤波器大小和卷积层数量的谱损失。 我们考虑从 3 × 3 到 11 × 11 和 1 或 3 个卷积层的不同解码器滤波器大小。 虽然上采样产生的频谱失真无法通过单个甚至三个 3×3 卷积消除,但可以在学习更多、更大的滤波器时通过建议的损失进行校正。 

4. 实验评估

4.1. Deepfake 检测

在本节中,我们展示了由最先进的 GAN 中的上卷积引起的谱失真可用于轻松识别 “假” 图像数据。 仅使用少量带注释的训练数据,甚至是无监督设置,我们就能够以近乎完美的从 benchmark 中检测生成的人脸。

4.1.1 Benchmarks

4.1.2 方法

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第14张图片

图 9 说明了我们的简单处理流程,通过方位角积分从样本中提取谱特征(参见图 2),然后使用基本的 SVM 分类器进行监督和 K-Means 进行无监督的虚假检测。 对于每个实验,我们随机选择不同大小的训练集,并使用剩余的数据进行测试。 训练集和测试集在其相应的类别标签中是同等平衡的。 所有报告的结果都是十次独立实验的平均值。 

为了处理不同大小的输入图像,我们用第 0 个系数对一维功率谱进行归一化,并将得到的一维特征向量缩放到固定大小。

4.1.3 结果

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第15张图片

图 10 显示,真实和“假”面孔在我们的谱特征空间的高频范围内形成了轮廓分明的簇。 表 1 中的实验结果证实,由上采样单元引起的功率谱失真是一个常见问题,可以轻松检测生成的内容。 这个简单的指标甚至优于使用大型注释训练集的复杂的基于 DNN 的检测方法。 

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第16张图片

4.2 应用谱正则化 

实验前。 基于我们的理论分析(见第 2.3 节)和第 3 节中的第一个 AE 实验,我们以两种方式扩展现有的 GAN 架构:

  • 首先,我们将谱损失项(见等式(11))添加到生成器损失中。 我们使用数据集中的 1000 个未注释的真实样本来估计 AI^real,这是计算谱损失所需要的(见等式(11))。
  • 其次,我们将最后一个上卷积单元之后的卷积层更改为三个内核大小为 5 × 5 的滤波器层。图 1 的底部图显示了该实验与原始 GAN 架构的直接比较结果。 图 11 给出了在没有和使用我们建议的正则化的情况下产生的几个定性结果。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第17张图片

4.3 频谱正则化的积极影响 

通过对频谱进行正则化,我们获得了生成合成图像的直接好处,这些合成图像不仅看起来逼真,而且还模仿了频域中的行为。 这样,我们离真实分布的样本图像又近了一步。 此外,这种正则化还有一个有趣的副作用。 在我们的实验中,我们注意到具有谱损失项的 GAN 更加稳定,可以更好的收敛和避免“模式崩溃”。 众所周知,GAN 可能会遇到具有挑战性和不稳定的训练过程,并且几乎没有理论可以解释这种现象。 这使得尝试新的生成器变体或将它们用于新领域变得极其困难,这极大地限制了它们的适用性。

为了研究谱正则化对 GAN 训练的影响,我们进行了一系列实验。 通过采用一组不同的基线架构,我们评估了谱正则化的稳定性,提供了 CelebA 数据集的定量结果。 我们的评估指标是 Fr´echet Inception Distance (FID),它使用在 ImageNet 上预训练的 Inception-v3 网络从中间层提取特征。

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第18张图片

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第19张图片

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第20张图片

图 13 和 14 显示了 FID 在训练时期的演变,使用具有不同上卷积单元的基线 GAN 实现和具有谱损失的相应版本。 这些结果在 FID 测量方面显示出明显的积极影响,其中频谱正则化在整个训练过程中保持稳定和低 FID,而不正则化的 GAN 倾向于“崩溃”。 图 12 可视化了高 FID 值与失败的 GAN 图像生成之间的相关性。

5. 讨论与结论

我们展示了常见的“最先进”卷积生成网络,如流行的 GAN 图像生成器,无法近似真实数据的光谱分布。 这一发现具有很强的实际意义:这不仅可以用来轻松识别生成的样本,还意味着所有训练数据生成或迁移学习的方法都存在根本性缺陷,不能指望当前的方法能够正确地近似真实数据分布。 然而,我们表明有一些简单的方法可以解决这个问题:通过将我们提出的频谱正则化添加到生成器损失函数并将最终生成器卷积的滤波器大小增加到至少 5 × 5,我们能够补偿频谱误差。在实验上,我们发现了强烈的迹象表明谱正则化对 GAN 的训练稳定性有非常积极的影响。 虽然这种现象需要进一步的理论研究,但从直觉上讲这是有道理的,因为众所周知,高频噪声会对基于 CNN 的鉴别器网络产生强烈影响,这可能会导致生成器过度拟合。

参考

Durall R, Keuper M, Keuper J. Watch your up-convolution: Cnn based generative deep neural networks are failing to reproduce spectral distributions[C]//Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2020: 7890-7899.

S. 总结

S.1 主要思想

CNN 中使用的上卷积会造成频谱失真,可通过为生成器损失函数添加频谱正则化以及增大卷积核来缓解这种失真。通过缩小频谱差距,使生成图像与真实图像有相近的谱分布,从而提升生成​质量。

S.2 上卷积造成的谱失真

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第21张图片

线性插值上卷积和补零(灰度值为 0)上卷积分别如上图所示。这两种上卷积都会造成频谱失真。直观地理解是:

  • 对于线性插值上卷积,由于填补的像素是原始像素的线性插值,所以相邻像素差异较小,从而导致频谱中低频分量的增加和高频分量的减少。
  • 对于补零上卷积,由于原始像素和补零像素差别较大,从而导致频谱中高频分量的增加和低频分量的减少。

S.3 谱正则化

(2020,谱正则化)观察你的上卷积:基于 CNN 的生成深度神经网络无法重现谱分布_第22张图片

对图像进行离散傅里叶变换(DFT)获得二维频谱,沿径向进行方位角积分获得一维频谱。新的正则化项就是真实图像和生成图像一维频谱的交叉熵。通过缩小频谱差距,使生成图像与真实图像有相近的谱分布。

S.4 其他贡献

Deepfake 检测。由于现有生成网络中上卷积引起失真的普遍性,频谱失真可以作为一种指标来检测 deepfake。

谱正则化可以提升训练的稳定性。图像的频谱包含丰富的信息,通过使用谱正则化,可以提升模型的频谱意识。在更多信息的作用下,模型学习地更快,并且可以避免模式崩溃。

你可能感兴趣的:(论文笔记,深度学习,人工智能)