Page 483 - 《软件学报》2025年第9期
P. 483

4394                                                       软件学报  2025  年第  36  卷第  9  期



                 (l c  = −1), 对数据域差异不做任何处理. 模型先通过余弦相似度来计算完整样本特征和乱序辅助特征的相似性                           sim,
                 并基于相似性设计损失函数训练模型, 当乱序辅助特征和完整样本特征属于同类的情况时, 使                              sim 趋向于  1 (乱序
                 辅助特征向完整样本特征靠拢), 相反则趋向于−1 (乱序辅助特征疏远完整样本特征). 以此来促使模型提取的高级
                 语义特征集中关注于样本的真伪标签信息, 忽视域信息.
                                                   sim 的变化如图   4(b) 中的损失函数    A  所示. 这么处理有两个较大的问
                    标签作为损失函数, 其损失值随相似性
                 题影响了模型的训练, 其一, 与常规任务不同的是, 基于相似性的对比学习目的是使得同类的相似性趋于                                 1, 异类
                 趋于−1, 而损失函数     A  在相似性等于    0  时, 是不可导点, 存有梯度震荡的风险, 影响了模型的整体稳定性. 其二, 损
                 失函数   A  的梯度一直处于一个固定值, 容易导致模型多个迭代下参数反复波动而无法拟合的问题. 为了解决这一
                 问题, 本文提出了一种新型基于对比损失函数              L contra , 其计算公式为:

                                                          (  (        ))
                                                                sim·l c ·π
                                                 L contra = tanh tan −                                (9)
                                                                  2
                 其中,   sim 和  l c  分别时完整样本特征和乱序辅助特征的相似性以及类别归属. 函数图像如图                   4(b) 中损失函数   B  所
                 示. 从损失曲线可以看出, 在       sim ∈ (−1,1) 时函数没有不可导点, 避免了损失函数          A  的第  1  个问题; 而从梯度变化
                                 sim 处于中间态时收敛的速度要比在邻接处更快, 不仅在训练前期提高了模型的训练速度, 在
                 曲线来看, 模型会在
                 训练后期也不会因为梯度太大导致参数波动不收敛的问题, 有效地解决了损失函数                            A  的第  2  个问题, 具体的实验
                 表现本文将消融实验中给出. 除了对比损失函数, 在训练模型时本文还使用了交叉熵损失函数作为训练模型检测

                 欺诈人脸的二值监督的损失          L cls , 损失函数计算公式为:

                                                 1  ∑  [                    ]
                                            L cls =  − y i ·log(p i )+(1−y i )·log(1− p i )          (10)
                                                N
                                                   i
                 其中,  p i  是第   个样本的预测类别,   y i  是第   个样本的标签,  N  是批处理的样本量. 此外, 本文采用对抗损失函数对
                           i
                                                 i
                 生成的内容特征进行域对抗训练, 计算公式为:

                                                              ∑ M
                                                                  [i = (y±ε)]logD(G(x))              (11)
                                       minmaxL adv (G,D) = −E (x,y) (X,Y D )
                                        D  G                    i=1
                 其中,  Y D  为域标签的集合,  M  为不同数据域的数量.      G 和  D 分别表示内容特征生成器和域判别器,            ε 是标签平滑值.
                                D, 使用如图   4(c) 所示的梯度反向层在反向传播过程中通过将其乘以一个负标量来反转梯度.
                 为了同时优化     G  和
                 本文是通过多任务联合学习的方式来训练模型, 因此最终用于训练的损失函数为:

                                                                                                     (12)
                                                   L = L cls +λ 1 L adv +λ 2 L contra
                 其中,   λ 1  和  λ 2  为损失的权重系数. 根据损失的实际数值和重要性, 权重系数设置均为             1.

                 3   实验分析

                 3.1   数据集与评估方法
                    本文采用    OULU-NPU [23] 、CASIA-MFSD  [24] 和  Replay-Attack [25] 和  MSU-MFSD [26] 数据集评估所提模型的实验
                 效果. OULU-NPU  数据集包含     5 940  段真实和欺诈视频, 视频长度限制为         5 s, 帧率为  30 Hz, 分辨率为  1920×1080
                 像素. 实验共包含     4  个测试协议, 协议   1  测试模型在不同数据采集环境下的性能, 协议             2  评测不同的攻击媒介对模
                 型性能的影响, 协议      3  测试模型在不同数据采集设备下的性能, 协议             4  考虑了上述所有因素, 评测模型的综合泛化
                 能力. CASIA-MFSD  数据集由   600  段视频组成, 其中包含     50  位测试者, 每位测试者在      3  种摄像头下获取分辨率为
                 480×640 像素、640×480 像素、720×1080 像素的    12 段视频, 其中真实人脸      3 段, 3 种攻击方式各   3 段, 攻击方式包
                 括卷曲图像攻击、剪切图像攻击和视频回放攻击. Replay-Attack             数据集包含     1 300  段人脸视频样本, 帧率为    25 Hz,
                 分辨率大小为     320×240  像素, 由  50  位测试者在光照均匀和光照不均匀两种场景下录制, 攻击方式分为图像攻击和
                 视频回放攻击, 设备支持条件分为手持和固定两种方式. MSU-MFSD                    数据集包含    55  位测试者在不同条件下的
                 440  段人脸视频序列, 目前只公开了        35  名测试者的数据, 其中     15  名作为训练数据, 其余     20  名作为测试数据. 视频
   478   479   480   481   482   483   484   485   486   487   488