目录
论文地址:https://arxiv.org/abs/2103.09096
综述
1. 介绍
2. 相关工作
人脸检测
度量学习(metric learning)
3. 提出的方法
3.1 综述
3.2 自适应频率特征生成模块
数据预处理
自适应频率信息挖掘块(Adaptive frequency information mining block)
3.3 单中心损失
4.实验
4.1 FF ++ 数据集【36】
预处理
评估标准
实验细节
4.2 Ablation Study
4.2.1 SCL
?4.3 与以往方法的比较
5. 局限
6. 结论
综述
a) 由softmax损失监督的学习特征是可分离的,但没有足够的区分性,因为softmax损失并不明确鼓励类内紧致性和类间可分离性;
b)固定滤波器组和手工制作的功能不足以捕获来自不同输入的伪造频率模式。
为了弥补这种局限性,本文提出了一种新的频率感知鉴别特征学习框架。具体来说,设计了一种新的单中心丢失(SCL),它只压缩自然人脸的类内变化,同时增加嵌入空间中的类间差异。在这种情况下,网络可以以较少的优化难度学习更多的鉴别特征。此外,还开发了一个自适应频率特征生成模块,以完全数据驱动的方式挖掘频率线索。通过以上两个模块,整个框架可以以端到端的方式学习更多的鉴别特征。
1. 介绍
[1],[3]人脸伪造开源项目
[2] 人脸伪造app
[21] [35] 变分自动编码器
[15] GAN
[46,5,4,34]早期手工特征的神经网络
[20,45,12] 人脸合成技术的进步
[10,33,29]将不同信息和先验知识引入主干网的方法
[37]三重态丢失
[29,9,41,13] 引入了频率信息并取得了显著的成果
基于上述思想,本文提出了一种新的频率感知鉴别特征学习框架(FDFL)。框架主要解决两个问题:
a)如何采用度量学习来学习更多的鉴别特征用于人脸伪造检测;
b)如何自适应地提取与频率相关的特征。
针对这两个问题,开发了两个子模块:单中心损耗(SCL)和自适应频率特征生成模块(AFFGM)
?单中心丢失旨在减少自然人脸的类内变化,同时增加嵌入空间中的类间差异。
为此,SCL使自然面表示到中心点的距离最小化。同时,SCL鼓励从操纵面到中心点的距离比从自然面至少大一个边距。与常规的度量学习方法不同,SCL不限制被操纵人脸的类内紧度,更符合被操纵人脸的特征分布特征。因此,SCL监督下的网络能够以较少的优化难度学习更多的鉴别特征。
对于与频率相关的特征,本文开发了一个由特殊的数据预处理和自适应频率信息挖掘模块(AFIMB)组成的AFFGM。数据预处理使图像块在空间域中的位置关系与其在频域中的位置关系保持一致。在这种情况下,预处理的数据能够直接使用现有的卷积网络。AFIMB以数据驱动的方式自适应地挖掘频率线索,从而避免使用太多不全面的先验知识。与固定滤波器组和手工制作的特征相比,AFFGM可以在频域更灵活地捕获伪造线索。
2. 相关工作
人脸检测
?人脸伪造检测早期的工作重点是
利用手工制作的特征或修改现有神经网络的结构[46,5,19,4,34]来检测人脸伪造。
Y anget al.[46]利用从中心面部和整个面部估计的头部姿势的不一致性来识别被操纵的面部。MesoNet[4]设计了一个由两个初始模块和两个经典卷积层组成的浅层神经网络。
当像xception[7]这样功能强大的通用特征提取器应用于伪造检测时,早期作品的性能甚至更不令人满意。
因此,研究主流逐渐转向将不同的信息和先验知识引入主干网络以检测人脸伪造[10,33,29]。
Dange等人[10]介绍了操纵区域(manipulated regions)的位置信息,以引导网络关注关键区域。
Qiet等人[33]利用生物信息学发现,由于血液通过面部泵送,皮肤颜色会呈现周期性的微小变化。
Face X-ray[24]创新性地使用自生数据(self-generated data)训练网络去定位混合边界(blending boundaries),极大地提高了泛化能力。
Two-branch[29]利用固定滤波器组提取频率信息,这限制了提取鉴别特征的能力。
度量学习(metric learning)
尽管度量学习在人脸识别[37]和人物再识别(re-ID)[17]中显示了其优势,但在人脸伪造检测中,使用深度度量学习学习鉴别特征或多或少被忽略了。
中心损耗[42]和三重态损耗[37]是与本位的工作最相关的两种度量学习方法。中心损耗[42]旨在为每个类别的功能学习一个中心,并使同一类别的功能更接近其相应的中心。显然,中心丢失的一个缺点是它忽略了类间可分性。
三重态丢失[37]鼓励具有相同身份的数据点的特征比具有不同身份的数据点更接近。然而,三元组丢失可能会遇到挖掘硬三元组耗时和数据急剧扩展的问题。
Kumaret al.[22]利用具有三重丢失监控的网络来检测人脸伪造。但三重态丢失在imagenet预先训练的主干上表现不佳。
Two-branch [29]提出了一种新的损失,它压缩了自然人脸的可变性(variability),并推开(push away)了被操纵的人脸。但是它的动机来自异常检测,并且这种方法在许多方面与我们的SCL非常不同。
3. 提出的方法
3.1 综述
针对以往判别特征学习和频率信息挖掘方法存在的问题,提出了一种频率感知判别特征学习框架。如图2所示,框架同时从RGB域和频域提取特征,并在整个框架的早期阶段将其合并。经过特征嵌入后,得到高层次的表示。框架的最后是一个分类器,它输出输入样本的预测结果。频率线索的挖掘由我们的AFFGM完成(见第3.2节)。我们使用简单的逐点卷积块融合频域特征和RGB域特征,这有助于减少参数和计算开销。最后,在单中心损失(见第3.3节)和softmax丢失的联合监控下,网络学习一个嵌入空间,其中自然面聚集在中心点周围,而操纵面远离中心点。
3.2 自适应频率特征生成模块
随着合成真实人脸的成功,发现视觉伪造线索变得更加困难。但是,如图3所示,在频域中,特别是在中高频段,自然人脸和操纵人脸之间的差异非常明显。
?以前的研究大多使用固定滤波器组或其他领域的手工方法来提取频率信息[9,13,41,29]。
然而,考虑到背景、性别、年龄、肤色的多样性,尤其是操纵方法,这些基于不全面先验知识的方法不足以捕获伪造频率的模式。
为了解决这个问题,受[16,44,31,26]的启发,我们提出了一种自适应频率特征生成模块(AFFGM),以有效地挖掘频域中的细微伪影。AFFGM由两部分组成:数据预处理和自适应频率信息挖掘模块。接下来,我们将分别介绍它们。
数据预处理
数据预处理流程如图4所示。首先,将输入的RGB图像转换为YCbCr颜色空间。接下来,对每个8×8块图像应用2D DCT变换。
值得注意的是,上述两个步骤在当前流行的图像压缩标准中也得到了广泛的应用。
我们认为这将有助于从两个方面进行伪造检测。一方面,现有压缩算法的加速工具有助于提高预处理的计算效率。一方面,它将使我们的方法更兼容由压缩引起的跟踪。
然后,将所有8×8块中来自相同频带(frequency band)的DCT变换系数分组到一个信道(channel)中,并保留其原始位置关系。
因此,变换后的图像可以直接利用现有的神经网络。最后,所有的频率通道连接在一起形成一个张量。
预处理前后,输入图像的形状会发生变化。假设原始输入图像的形状为 H×W×3,则经过数据预处理后,输入张量的形状为 H/8×W/8×192。
此外,变换图像的大部分能量集中在低频段,而中频和高频段在伪造检测中的作用更为显著。因此,通过从训练数据集中计算的均值和方差对每个频率通道进行归一化。
与以前的方法不同,我们的AFFGM以数据驱动的方式学习频率特征,避免过度依赖不全面的先验知识。如图2所示,我们根据经验设计了一个简单有效的网络块来提取频率特征。具体而言,预处理的数据首先通过一层3×3的卷积块,共有三组[18]。
这意味着来自Y、Cb、Cr的不同通道的数据被分别处理。
然后,它依次经过一个普通的3×3协同进化块和一个最大池层。在这个过程中,来自Y、Cb、Cr不同通道的信息相互作用。然后,为了增强特征,我们采用了由上述最大池层和两个线性层组成的信道注意块。最后,利用一个有序的1×1卷积层进一步提取频率相关特征。
?然后,它依次经过一个普通的3×3卷积块和一个最大池层(max-pooling layer)。在这个过程中,来自Y、Cb、Cr不同通道的信息相互作用。
然后,为了增强特征,我们采用了由上述最大池层和两个线性层组成的信道注意块(channel attention block)。最后,利用一个有序的1×1卷积层进一步提取频率相关特征。
3.3 单中心损失
显然,深度度量学习是一个很有希望的解决 类内紧密性和类间可分性问题的方案。然而,大多数度量学习方法,如三重态丢失[37]和中心丢失[42],通常在嵌入空间中不加区别地压缩自然和操纵人脸的类内变化。
而操纵面的特征分布因操纵方法的不同而不同。这是因为GAN指纹[47],操纵区域和其他独特的操作,例如。后处理技术会导致每种操作方法产生特定的伪影(specific artifacts)。
例如,Deepfakes[1]生成整个面部,而NeuralTextures[39]仅操纵目标人的口腔区域。直观地说,它们在嵌入空间中的分布应该是明显不同的。
一个附带的证据是,通过监督学习学习的特征的泛化能力在看不见的操作方法上被显著削弱。这意味着通过监督学习学习的特征与操作方法高度相关。由于不同操作方法生成的样本的特征差异,很难对所有被操作的人脸进行聚合。因此,在嵌入空间中不加区分地约束类内紧性,往往会由于优化困难而导致次优解,甚至由于过拟合而损害性能。为了解决这个问题,我们设计了一种新型的单中心损耗传感器。
定义: 略
4.实验
4.1 FF ++ 数据集【36】
由4种面部操作过的1000个视频组成,分别是?DeepFakes[1]、Face2Face[40]、FaceSwap[3]和NeuralTexture[39]。
FF++数据集,以压缩程度为标准,可以分为3个版本,c0 原始版本 c23 轻压缩 c40 重压缩。
本文着重在重压缩视频上进行实验
预处理
从每个处理过的视频中抽取20帧,从每个原视频抽取80帧。
利用?retinaface[11] 在每一帧中检测人脸。
评估标准
使用AUC[29] pAUC[30]分数来衡量实验数据。pAUC是一个低误报率的全局度量(global metric),可以很好的反应现实世界中此方法的性能。
此外实验数据还报告了准确度得分: Acc 可视化图像:?t-SNE[28]
实验细节
使用 pytorch [32]框架,使用xception[7]在图像网(imagenet)上进行预训练,包括最终完全连接层(final fully connected layer)。作为本文的RGB分支和FDFL功能嵌入(feature embedding)。这意味着公式1中的D等于1000。
人脸伪造分类器是一个具有两个节点的简单FC层。在 xception 的入口流(entry flow)和 中间流(middle flow)之间插入了融合模块(Fusion module)。
包括 SCL的中心点,所提出的模型都是随机初始化的。
4.2 Ablation Study
4.2.1 SCL
基于xception 进行所有的 ablation study。
参数影响
在公式6中:
?控制SCL损耗和softmax损耗之间的权衡。
控制自然面和操纵面到嵌入空间中心点的相对距离。
为了研究这两个超参数(hyper-parameters) 对损失结果的影响,本文在FF++数据集的c40版本进行了实证分析(empirical analysis)
如图5:
a图:?固定为 0.1 改变??的值。 b图:?固定为 0.5 改变?m 的值。
实验结果表明,SCL对该参数具有很强的鲁棒性。取值从0.001到 1 ,经过训练的模型始终能取得令人满意的结果。
我们假设这是因为SCL和softmax损耗是互补损耗。SCL直接关注特征表示,而softmax loss则关注如何将特征表示映射到离散的标签空间(discrete label space)。
此外,softmax loss保留的全局信息可以指导SCL中心点的更新。
当 λ 设置为0时,这意味着仅使用softmax损耗来训练模型,性能最差,仅实现AUC的0.861。
但是如果将SCL与softmax loss相结合,AUC可提高4%~6%。为了研究m的影响,我们将λ固定为0.5,然后从0.35 到 0.5 中,以0.05为间隔。取到m的七个值。需要强调的是,m是一个比例因子,距离的裕度(margin)与特征空间尺寸的算术平方根成正比,如式(1)所示。
如图5(b)所示,当m在较大范围内变化时,我们的SCL可以有效地提高性能。当m设置为0.3,λ设为0.5时,我们得到了最好的结果,AUC值为0.916、p值为0.790.
与其他损失的比较
为了验证所提出的SCL损耗,我们对各种损耗进行了额外的实验,包括带softmax损耗的三重态损耗和带softmax损耗的中心损耗。与式(6)类似,三重态损耗和中心损耗的重量均设置为0.01,三重态损耗的裕度设置为0.3.
从表1可以看出,在FF ++, c40 版本下。在这些损失中,我们的SCL损失和softmax损失表现最好,AUC为0.916和0.790的pAUC。此外,与仅使用softmax损耗相比,使用softmax损耗的三重态损耗和使用softmax损耗的中心损耗都有细微的改善。
?学习表征的可视化(Visualization of learned representations)
为了更深入地探索不同损失对特征分布的影响,文中采用t-SNE[28]来可视化FF数据集中样本的特征。
如图6所示,可以观察到一些特性:
a)由softmax loss监督的学习特征显示为两个具有相邻边界的簇。
b) 三重态损耗对特征分布影响不大。我们试图增加三重态损耗的权重,但在这种情况下,网络无法正常收敛。
c)中心损失(center loss)显著改变了特征的分布,然而,限制操纵面(manipulated faces)的类内紧度(intraclass compactness)会在一定程度上导致过度拟合。因此,性能增益非常小。
d) 结合SCL 与 softmax-loss,自然人脸的表示被紧凑地收集,并与分布不太紧凑的操纵人脸的表示分离。
(a)softmax损耗,(b)三重态softmax损耗,(c)中心softmax损耗,(d)SCL softmax损耗监督的特征可视化。文中从FF c40版本的训练数据集中随机选择了5000张自然人脸和操纵人脸。红点代表自然的脸,绿点代表操纵的脸(最好用彩色观看)。
结果分析
我们的SCL优于其他损失,即:softmax损耗、中心损耗和三重态损耗。毫不奇怪,softmax loss的性能很差,因为它只关注于寻找一个划分不同类的决策边界。对于三重损失和中心损失,虽然它们明确地考虑了类内紧密性和类间可分性,但结果表明,不受约束地限制自然和操纵面的类内紧性通常导致次优解。这验证了我们在Sec 3.3(单中心损失)中的分析。由于GAN指纹[47]和一些独特的操作,不同的人脸处理方法会产生不同的伪造特征,因此将所有被处理的人脸聚集在一起是不寻常的。与之相比,我们的SCL采用了一种非对称的优化目标,用于自然人脸和人工人脸的鉴别特征学习,更符合样本的特征分布。
4.2.2 融合模块(Fusion module)
本文研究了融合模块的不同结构对性能的影响,所有实验仅在softmax loss的监督下进行。
下表探讨了 在c40版本下的具有不同内核大小(kernel size )和组数(group number)的 级联(concatenation)、求和、卷积块的融合模块。
从实验结果来看:
?a)当采用1×1卷积块作为融合模块,其组设置为1时,在AUC和pAUC方面性能达到最佳。
?b)即使是简单的级联和求和操作也可以获得良好的性能。
这充分体现了本文的自适应频率特征生成模块的有效性。为了获得最佳结果,本文在所有参考实验中使用1×1的协同进化块(其组设置为1)作为融合模块。
4.2.3 每个组件的性能增益
为了评估每个组件的性能改进,我们定量评估了我们的FDFL 框架及其变体。
- xception 的 基线(baseline)
- FDFL w/o SCL
- FDFL w/o AFFGM
如下表所示:
?可以看出,SCL和AFFGM都可以提高AUC和pAUC方面的性能。但文章提出的SCL更有优越性。
?4.3 与以往方法的比较
如表所示:
其中:
?xception[36]和面部X射线[24] 都是目前最先进的基于图像的检测方法。
?two-branch [29]是基于视频的检测方法
5. 局限
一方面,文中的框架缺乏对未知操作方法的泛化能力。文中的工作和面部X射线[24]表明,通过监督学习来学习的鉴别特征(discriminative features)与操作方法(manipulation methods)高度相关。文中认为,由于图片的伪造手法都是来自于 GAN[47]或者其他独特的方法,所以他们无法对除此之外的其余伪造方法进行泛化,如果这个猜测是对的,那么所有监督学习的伪造检测框架都会存在这个问题。
另一方面,文中的框架忽略了帧间信息(interframe information)。当前的人脸处理方法通常不会对时间维度施加约束。因此,帧间的不一致性应该是视频人脸伪造检测的一个有价值的线索。
6. 结论
本文提出了一种新的频率感知鉴别特征学习框架,将度量学习和自适应频率特征学习应用于人脸伪造检测。具体地说,单中心丢失仅在增强嵌入空间(embedding space)中的类间可分性(inter-class separability)时压缩自然人脸的类内变化。在这种情况下,网络可以以较少的优化难度学习更多的鉴别特征。此外,我们的自适应频率特征生成模块能够以数据驱动的方式有效地从频域中挖掘细微的伪影,从而避免过度依赖不全面的先验知识。大量的实验证明了我们的FDFL的有效性和优越性,我们在三个版本的FF数据集上获得了最新的结果。
在未来,本文将探索如何通过半监督和非监督学习有效地利用帧间信息,提高检测方法的泛化能力。此外,SCL在其他领域的应用也值得研究,如活体检测。
?
|