摘要
(1)生成式卷积神经网络,如GAN架构依赖于基于卷积的上采样方法来生成非标量输出(图像或视频序列等)。
(2)本文表明常见的上采样方法(反卷积或转置卷积)导致此类模型无法正确再现训练数据的频谱分布。
(3)这种影响与底层架构无关,它可轻松被利用去检测生成的数据,如Deepfake。为克服当前生成模型这一缺点,提出在训练优化目标中添加一个新的频谱正则项。
1. Introduction
- 生成卷积深度神经网络最近已广泛用于各种计算机视觉任务中:生成照片级逼真的图像,图像到图像和文本到图像的翻译,样式转移,图像修复,迁移学习甚至用于训练语义分割任务。
GAN和VAE 两种方法都试图从训练数据样本中近似出底层(图像)分布的潜在空间模型(latent-space model)。
- GAN和VAE有许多的变体,例如具有不同的损失函数,不同的潜在空间约束或生成器网络的各种深度神经网络(DNN)拓扑结构;
- 所有这些方法必须遵循基本的数据生成原理:它们必须将样本从低维(通常为1D)和低分辨率的潜在空间转换为高分辨率(2D图像)的输出空间。 因此,这些生成神经网络必须提供某种(可学习的)放大特性。
按比例放大操作会严重改变信号的频谱特性从而在输出中引起高频失真。在本文中,作者研究了生成网络(generators networks)中常用的上采样技术的影响。 图1的顶部图说明了我们最初的实验结果,并支持了我们的假设,即当前的生成网络无法重现频谱分布。 图1还表明,这种影响与实际的生成网络(generators networks)无关。
常见的向上卷积方法严重的频谱失真成生成的图像。 图1上面的图:显示了真实图像和GAN生成的图像的功率谱上方位角积分后的统计量(均值和方差)(the statistics (mean and variance) after azimuthal integration over the power-spectrum)。 所选CelebA数据集,此处所有GAN都使用“转置卷积”采样。图1下面的图:与上述相同的实验,这里添加我们在GAN训练期间提出的频谱损失,结果与真实图像分布相似。
1.1 Related Work
1.1.1 Deepfake Detection
本文的结果对Deepfake检测任务的实际影响。 Deepfake一词描述了最近人们滥用通过深层生成神经网络伪造人脸的先进技术来产生名人和政客虚假图片内容的现象。
由于此类假冒产品的潜在社会影响,深度欺诈检测已成为其自身的重要研究课题。大多数方法本身都依赖于CNN,因此需要大量带注释的训练数据。 同样,有人引入了具有对比损失函数的深层伪造鉴别器,通过在CNN之上采用递归神经网络(RNN)合并了时域信息。
1.1.2 GAN Stabilization
正则化GAN以促进更稳定的训练并避免模式崩溃,
(1)通过展开Discriminator的优化来稳定GAN训练,
(2)通过噪声和有效的基于梯度的方法来进行正则化。
(3)有人提出了一种基于八度卷积的稳定GAN训练(based on octave convolutions)。
这些方法均未考虑将频谱用于正则化。 然而,最近有人已经提出了频带受限的CNN,用于图像分类使用压缩的模型。
现在功率谱对模型稳健性的重要性( power spectra on model robustness) 已经被证实。同样对于图像分类,作者建议利用对GAN生成的频率频谱的观察来稳定训练。
1.2 Contributions
- 通过实验证明了当前生成的神经网络体系结构无法正确地近似训练数据的频谱分布。
- 利用这些频谱失真为生成的图像和视频提出了一个非常简单但高度准确的检测器,即DeepFake检测器,其准确度达到了公共基准的100%。
- 经过理论分析和进一步的实验表明,常用的向上采样单元(即向上卷积)正在引起观察到的效果(observed effects)。
- 作者提出了一个新颖的频谱正则项 (spectral regularization),它可以补偿频谱失真。
- 通过实验表明,在GAN训练中使用频谱规则化会导致更稳定的模型并提高视觉输出质量。
2. The Spectral Effects of Up-Convolutions
2.1. Analyzing Spectral Distributions of Images using Azimuthal Integration over the DFT Power Spectrum
为了分析对频谱分布的影响,作者依赖于傅立叶功率谱的简单但特征性的一维表示。 我们根据大小为
M
×
N
M×N
M×N的2D(图像)数据
I
I
I的离散傅立叶变换
F
F
F计算此频谱表示,
通过径向频率上的方位角积分
φ
φ
φ
图2给出了处理该步骤的示意图
- 图2中方位角积分(Azimuthal integral,AI)的示例。 图像的(左)二维功率谱。 图像的(右)一维功率谱:每个频率分量是二维谱上的径向积分(红色和绿色示例)。
2.2. Up-convolutions in generative DNNs
通过生成型神经网络结构产生高维输出,例如图像,来自低纬度的潜在空间,现有的方法都需要进行某种up-scaling机制,例如图3中的 up-convolution by interpolation(up+conv) 和 transposed convolution(transconv)
- 作者使用非常简单的自动编码器(AE)设置(如图4所示)来初步研究在上采样后,向上卷积单元对2d图像的频谱特性的影响。
图5显示了两种方法对频谱的不同但巨大的影响。 图6给出了重建图像的定性结果,表明频谱中的错误与视觉外观有关。
-
图4展示了简单自动编码器(AE)设置的示意图,用于演示图5中向上卷积的效果,仅使用标准MSE重建损失(底部)在实际图像上训练AE。作者将输入缩小2倍,然后使用不同的向上卷积方法重建原始图像大小。
在第3节中,我们使用附加的频谱损失(Spectrum Loss)(顶部)来补偿频谱失真(请参见图7)。
- 图5显示了单个向上卷积单元(设置见图4)对输出图像的频谱(方位积分)的影响。 两种向上卷积方法都对输出的频谱分布产生巨大影响。 转置卷积会增加大量的高频噪声,而基于插值的方法(up + conv)却缺乏高频。
- 图6显示了频谱失真对图像输出的影响置于我们的简单AE设置中。 左:原始图像; 中间:AE输出图像; 右:卷积后的差异图像。 第一行显示了在(up + conv)情况下缺少高频的模糊效果; 底行显示了(transconv)引起的高频伪像。
2.3. Theoretical Analysis
在不失一般性的情况下考虑了一维信号a及其离散傅里叶变换
a
^
\hat{a}
a^的情况:
如果我们想将
a
a
a 的空间分辨率提高2倍,我们得到:
其中 b j = 0 b_j = 0 bj=0表示“bed of nails”插值(transconv使用), b j = a j − 1 + a j 2 b_j =\frac {a_{j-1} + a_{j}} {2} bj=2aj−1+aj表示双线性插值(up + conv使用)。
- 让我们首先考虑
b
j
=
0
b_j = 0
bj=0的情况,即“beg of nails”插值。 等式(5)中的第二项为零。 第一项类似于原始的傅立叶变换,但用
k
‾
\overline{k}
k代替参数k。 因此,将空间分辨率增加2倍将导致频率轴的缩放
1
2
\frac {1}{2}
21倍。现在让我们从基于采样理论的角度考虑效果。 它是:
因为与Dirac脉冲梳的逐点乘法仅移除了
a
u
p
=
0
a^{up} = 0
aup=0的值。假设周期信号并应用卷积定理,我们得到:
因此,”bed of nails upsampling“ 将在
a
^
u
p
\hat{a}^{up}
a^up创建信号的高频副本。 要删除这些频率副本,需要对上采样的信号进行适当的平滑处理。 超过
N
2
\frac {N}{2}
2N 的所有观测空间频率都是潜在的上采样伪像。 从理论上看是显而易见的,但我们还在图8中实际证明,使用常用的3×3卷积滤波器不可能校正这么大的频带(假设中分辨率图像到高分辨率图像)。
在双线性插值的情况下,我们在等式中有 b j = a j − 1 + a j 2 b_j =\frac {a_{j-1} + a_{j}} {2} bj=2aj−1+aj(如公式(6)),它对应于与 b j b_j bj相邻的值的平均滤波。 这等效于 a u p {a}^{up} aup的频谱 a ^ u p \hat{a}^{up} a^up与Sinc函数通过其对偶性和卷积定理进行逐点乘法,从而抑制了人工高频。 然而,预期结果频谱在高频域中会过低。
3. Learning to Generate Correct Spectral Distributions
对上述发现进行的实验评估及其在检测生成的内容中的应用提出了一个问题,即是否有可能纠正由频谱法引起的频谱失真。 生成网络中使用的向上卷积单元。 毕竟,通常的网络拓扑包含可学习的卷积滤波器,这些滤波器遵循向上卷积,并且有可能纠正此类错误。
3.1 Spectral Regularization
常见的生成网络体系结构大多只使用基于图像空间的损失函数,因此无法直接捕获和校正频谱失真。 因此,我们建议在生成器LOSS添加一个频谱项:
其中
λ
λ
λ是影响频谱损失权重的超参数。 由于之前已经在使用方位角积分(azimuthal integration, AI)(参见等式(2))测量频谱失真,并且(azimuthal integration, AI)是可微的,因此
L
S
p
e
c
t
r
a
l
L_{Spectral}
LSpectral的一个简单做法是生成的输出
A
I
o
u
t
AI^{out}
AIout与从真实样本获得的平均
A
I
r
e
a
l
AI^{real}
AIreal之间的二分类交叉熵(binary cross entropy):
M是图像大小,为了将方位角积分的值缩放为[0,1],我们使用第0个系数( A I 0 AI_0 AI0)进行归一化。
对于不同的
λ
λ
λ值,将频谱损失项加到AE设置中的效果如图7所示。正如我们根据理论分析所预期的那样,即使对于较大的λ值,也无法通过单个学习到的3×3滤波器来校正观察到的效果。 因此,我们需要重新考虑架构参数。
3.2. Filter Sizes on Up-Convolutions
在图8中,我们根据卷积核尺寸和卷积层数评估了2.2节中AE的频谱损失(Spectrum Loss)。 我们考虑将解码器滤波器的大小从3×3更改为11×11,并且1或3个卷积层。 无法通过单个甚至三个3×3卷积消除来自up-sampling的频谱失真,但是当学习更多更大的滤波器时,可以通过提出的LOSS进行校正。
4. Experimental Evaluation
4.1. Deepfake Detection
论文表明,由最新的GAN在向上卷积(up-convolution)引起的频谱失真可用于轻松识别“假”图像数据。 仅使用少量带注释的训练数据,甚至是无监督的设置,我们就能够以几乎完美的准确性检测来自公共基准(public benchmarks)的生成的面孔。
4.1.1 Benchmarks
采用的三个数据集评估了该方法:
(1)FaceForensics++
(2)The CeleFaces Attributes
(3)Faces-HQ
4.1.2 Method
图9展示了该论文的简单处理流程,通过立体角积分从样本中提取频谱特征(参见图2),然后使用基本SVM分类器用于监督并且使用K-Means 用于无监督的假检测(fake detection)。 对于每个实验,我们随机选择不同大小的训练集,并将其余数据用于测试。为了处理不同尺寸的输入图像,我们通过第0个系数对一维功率谱进行归一化,并将生成的一维特征向量缩放为固定大小。
- 图9显示我们方法的处理流程概述。它包含两个主要块,一个是使用DFT的特征提取块,另一个是训练块,其中分类器使用新的变换后的特征来确定人脸是否真实。请注意,输入图像在DFT之前已转换为灰度。
4.1.3 Results
图15显示,真实和“假”面在我们的频谱特征空间的高频范围内形成了轮廓分明的簇。 实验结果证实,由上采样单元引起的功率谱失真是一个常见问题,可以轻松检测生成的内容。 这个简单的指标甚至优于使用大型带注释的训练集的基于DNN的复杂检测方法。
4.2. Applying Spectral Regularization
作者对现有的GAN架构采取两种方式:
-
首先,我们将频谱损耗项(参见等式(11))添加到generator loss中。我们从数据集中使用1000个未注释的真实样本来估计 A I r e a l AI^{real} AIreal,这是计算频谱损失所必需的(请参见等式(11))。
-
第二,我们将最后一个向上卷积单元之后的卷积层更改为j卷积核大小为5×5的三个过滤层。图1下面的图直接与原始GAN架构进行了比较,显示了该实验的结果。 图11中给出了在没有和没有我们建议的正则化的情况下产生的一些定性结果。
图11显示了:来自不同类型GAN及其1D功率谱的样本。 第一行:通过标准拓扑生成的样本。 第二行:通过标准拓扑以及我们的频谱正则化技术生成的样本
4.3. Positive Effects of Spectral Regularization
通过对频谱进行正则化,我们获得了产生合成图像的益处,这些合成图像不仅看起来真实,而且可以模拟频域中的行为。 这样,我们就可以更接近真实分布中的样本图像了。 此外,此正则化还有一个有趣的副作用。 在我们的实验中,我们注意到具有频谱LOSS项的GAN在避免“模式崩溃”和更好的收敛性方面似乎更加稳定。
为了研究频谱正则化对GAN训练的影响,作者进行了一系列实验。 通过采用一组不同的基准体系结构,作者评估了光谱正则化的稳定性,并在CelebA数据集上提供了定量结果。 我们的评估指标是Frechet Inception Distance´(FID),它使用在ImageNet 上预先训练的Inception-v3网络从中间层提取特征。
图13和图14显示了使用带有不同上卷积单位和具有频谱损耗的相应版本的基线GAN实施方式,沿着训练时期的FID演变。
这些结果在FID度量方面显示出明显的效果,其中频谱正则化在整个训练过程中稳定且低FID,而未进行频谱正则化的GAN往往会“崩溃”。 图12可视化了高FID值与失败的GAN图像生成之间的相关性。
- 图12显示:在整个训练过程中,CelebA上DCGAN基线的FID值与GAN输出之间的相关性。 低FID分数对应于多样化但视觉上有声的人脸图像输出。 FID分数高表明输出的质量较差,并且模式崩溃的情况下,所有生成的图像都绑定到原始分布的非常狭窄的子空间 。
- 图13显示:在有无频谱损失的情况下,DCGAN在训练时间内的FID(越低越好)(此处λ= 2)。虽然DCGAN的up +
conv变体无法改善,但transconv版本中训练时间的FID分数却收敛但不稳定。 只有我们的频谱损耗变量才能实现低而稳定的FID分数。
- 图14显示:在有无频谱损失(此处λ= 0.5)的LSGAN基线的训练时间内,FID(越低越好)。 至于DCGANS,是LSGAN的up + conv变体无法在训练时间内提高FID分数。 transconv版本正在收敛,但不稳定。同样,只有我们的频谱损耗变量才能获得低而稳定的FID分数。