Task1记第一次多模态数据竞赛- Datawhale AI 夏令营之全球Deepfake攻防挑战赛

162 阅读9分钟

笔者参与了Datawhale 2024 年 AI 夏令营第二期 的学习活动( 多模态方向 ”方向),基于蚂蚁集团举办的 “外滩大会-全球Deepfake攻防挑战赛” 开展的实践学习.今天这篇博客主要介绍一下赛事背景和第一次baseline提交.

赛题背景

随着人工智能技术的迅猛发展,深度伪造技术(Deepfake)正成为数字世界中的一把双刃剑。这项技术不仅为创意内容的生成提供了新的可能性,同时也对数字安全构成了前所未有的挑战。Deepfake技术可以通过人工智能算法生成高度逼真的图像、视频和音频内容,这些内容看起来与真实的毫无二致。然而,这也意味着虚假信息、欺诈行为和隐私侵害等问题变得更加严重和复杂。

为了应对这一挑战,我们举办了“外滩大会 - 全球Deepfake攻防挑战赛”。该挑战赛旨在邀请全球的参与者开发、测试和改进更加准确、有效和创新的检测模型,以应对各种类型的Deepfake攻击。这些模型将在真实世界的场景中进行测试,从而推动创新防御策略的发展,提高Deepfake识别的准确性。此次挑战赛不仅是对技术的比拼,更是对全球数字安全的一次重要贡献。我们期待着通过这次比赛,能够激发更多的创新思维和技术突破,共同应对Deepfake带来的安全威胁,保护数字世界的安全与真实性。

赛题任务

在这个赛道中,比赛任务是判断一张人脸图像是否为Deepfake图像,并输出其为Deepfake图像的概率评分。参赛者需要开发和优化检测模型,以应对多样化的Deepfake生成技术和复杂的应用场景,从而提升Deepfake图像检测的准确性和鲁棒性。

赛题数据集

训练集和验证集已经发布。训练集的标签文件train_label.txt用于训练模型,而验证集的标签文件val_label.txt仅用于模型调优。例如,在train_label.txtval_label.txt中,每行包含两部分,由逗号分隔。第一部分是文件名(后缀为.mp4),第二部分是真实值。目标值为1表示深度伪造音视频,目标值为0表示真实的人脸音视频。

以下是train_label.txtval_label.txt的样本:

train_label.txt

video_name,target
96b04c80704f02cb426076b3f624b69e.mp4,0
16fe4cf5ae8b3928c968a5d11e870360.mp4,1
…

val_label.txt

video_name,target
f859cb3510c69513d5c57c6934bc9968.mp4,0
50ae26b3f3ea85babb2f9dde840830e2.mp4,1
…

如果您希望提交此阶段的预测结果,可以在系统中提交验证集的预测分数文件prediction.csv,我们将在线反馈结果。文件中的每一行包含两部分,由逗号分隔。第一部分是视频文件名,第二部分是模型预测对应的深度伪造分数(即样本属于深度伪造视频的概率值)。请参考下面的提交模板:

prediction.csv

video_name,score
658042526e6d0c199adc7bfeb1f7c888.mp4,0.123456
a20cf2d7dea580d0affc4d85c9932479.mp4,0.123456
…

完整的prediction.csv文件也可以从数据浏览器中获取。请注意,提交验证结果的目的是帮助参赛者了解评估指标的工作原理,并确保您的离线评估指标与在线评估指标相同。请不要将验证的真实值提交到验证排行榜。

第二阶段 在第一阶段之后,我们将在第二阶段发布公共测试集。参与者需要在系统中提交测试集的预测分数文件prediction_test.csv,我们将实时在线反馈测试分数结果。

第三阶段

在第二阶段结束后,前30名队伍将晋级到第三阶段。在这一阶段,参赛者需要提交代码docker和技术报告。Docker要求包括原始训练代码和测试API(函数输入为图像路径,输出为模型预测的Deepfake评分)。主办方将检查并重新运行算法代码,以重现训练过程和测试结果。

评价指标

评估指标

比赛的性能评估主要使用ROC曲线下的AUC(Area under the ROC Curve)作为指标。AUC的取值范围通常在0.5到1之间。若AUC指标不能区分排名,则会使用TPR@FPR=1E-3作为辅助参考。

相关公式:

真阳性率 (TPR):

TPR = TP / (TP + FN)

假阳性率 (FPR):

FPR = FP / (FP + TN)

其中:

  • TP:攻击样本被正确识别为攻击;
  • TN:真实样本被正确识别为真实;
  • FP:真实样本被错误识别为攻击;
  • FN:攻击样本被错误识别为真实。

参考文献:Aghajan, H., Augusto, J. C., & Delgado, R. L. C. (Eds.). (2009). Human-centric interfaces for ambient intelligence. Academic Press.

评估规则
  • 验证结果每天限提交5次。测试结果每天限提交2次。

  • 提交结果后,组委会将审核参赛队伍提交的结果,并邀请参赛队伍提供代码、技术方案等。最终排名将基于选手提交的测试集分数、我们在隐藏测试集上重现的测试集分数和技术报告,权重分别为0.2、0.6和0.2。

  • 技术报告将由相关领域的专家根据以下方面进行评估:

    1. 创新性:技术创新和应用创新,创造性的解决方案;
    2. 通用性:未知攻击防御能力、跨数据集适应性、抗干扰鲁棒性、对抗攻击与防御能力;
    3. 实用性:可扩展性、运行速度、迭代成本;
    4. 可解释性:可以捕获、分析和反馈攻击线索。
  • 如出现平分情况,评审团团长将决定一等奖、二等奖、三等奖和优秀奖的最终入围名单。

其他要求
  • 仅允许提交单个模型,有效网络参数不得超过200M(使用thop工具统计模型参数)。
  • 决赛入围者必须提交Docker格式的训练和测试原始代码,包括技术报告。
  • 为公平比较算法性能,本次比赛不允许使用任何额外的数据集,仅允许使用ImageNet1K训练预模型。
  • 基于发布的训练集生成的扩展样本(通过数据增强/Deepfake工具)可以用于训练,但这些工具需在第三阶段提交以供重现。
  • 最终排名不仅取决于选手提交的公共测试集分数,还取决于审核后的最终测试集分数和技术报告。因此,第二阶段的排名在第三阶段可能会有所变化。
  • 如果参赛者未能遵守上述比赛规定,比赛结果将视为无效。
  • 如果参赛者未能在规定时间内提交Docker代码和技术报告,将无法参加性能评估。

Deepfake是什么?​

Deepfake是一种使用人工智能技术生成的伪造媒体,特别是视频和音频,它们看起来或听起来非常真实,但实际上是由计算机生成的。这种技术通常涉及到深度学习算法,特别是生成对抗网络(GANs),它们能够学习真实数据的特征,并生成新的、逼真的数据.

Deepfake技术虽然在多个领域展现出其创新潜力,但其滥用也带来了一系列严重的危害。在政治领域,Deepfake可能被用来制造假新闻或操纵舆论,影响选举结果和政治稳定。经济上,它可能破坏企业形象,引发市场恐慌,甚至操纵股市。法律体系也面临挑战,因为伪造的证据可能误导司法判断。此外,深度伪造技术还可能加剧身份盗窃的风险,成为恐怖分子的新工具,煽动暴力和社会动荡,威胁国家安全。

image.png

深度伪造技术通常可以分为四个主流研究方向:

  • 面部交换专注于在两个人的图像之间执行身份交换;
  • 面部重演强调转移源运动和姿态;
  • 说话面部生成专注于在角色生成中实现口型与文本内容的自然匹配;
  • 面部属性编辑旨在修改目标图像的特定面部属性;

baseline主要步骤

baseline的具体链接为:www.kaggle.com/code/finlay…

  1. 数据准备:使用Pandas库读取训练集和验证集的标签,并将图片路径与标签结合,以便于后续处理。
  2. 定义生成MEL频谱图的函数generate_mel_spectrogram函数用于从视频文件中提取音频,并生成MEL频谱图,然后将其转换为图像格式。
  3. 定义训练、验证和预测函数trainvalidatepredict函数分别用于模型的训练、在验证集上评估模型性能以及生成预测结果。
  4. 模型初始化和训练:初始化resnet18模型,并使用Adam优化器和交叉熵损失函数进行训练。训练过程中使用了学习率调度器,并在每个epoch结束时在验证集上评估模型性能。
  5. 保存最佳模型:在验证过程中,如果模型的性能超过了之前的最佳性能,则保存模型的权重。
  6. 生成预测结果:使用训练好的模型对验证集进行预测,并将预测结果保存到submit.csv文件中。
  7. 提交结果:最后,代码将预测的分数与原始的提交模板合并,并保存为最终的提交文件。 具体细节请查阅:datawhaler.feishu.cn/wiki/MhpDw8…

baseline提交结果

baseline可以直接在kaggle上借助平台提供的算力运行(本地似乎也跑不了,哈哈哈哈哈). 具体的提交步骤,请查阅:datawhaler.feishu.cn/wiki/B6rvwm…

完成提交后平台给出了分数.

屏幕截图 2024-07-14 221757.png

感悟

这是笔者第一次参与多模态相关赛事.笔者通过比赛第一次接触到Deepfake及其检测的相关细节.通过baseline的运行与精读,笔者对于深度学习的理解更加深入,能够更熟练的应用平台算力进行模型训练,实践能力得到进一步提升.希望后面可以进一步上分.

参考

www.kaggle.com/competition… datawhaler.feishu.cn/wiki/B6rvwm…