大型人脸伪造视频数据集:用深度学习算法XceptionNet实现了“假脸”检测

几个月前,深度学习算法deepfakes风靡社交网络,引发无数网友将无辜女明星的脸用于合成AV。事件曝光后后,Reddit立即封禁了所有帖子,但它产生的恶劣影响却令人担忧——如今随便一个普通人凭着一张GPU、一堆足够多的训练数据就能实现人脸替换,而且它的效果好到能超出人眼识别的范围,那么我们该如何防止它被滥用于损害他人名誉?又或者说,我们对以后在视频中看到的内容又该保有几分信任?

为了解决这个问题,近日慕尼黑工业大学(TUM)等高校的研究人员制作了一个名为FaceForensics的大型人脸伪造视频数据集,并成功用深度学习算法XceptionNet实现了“假脸”检测。以下是对论文部分内容的编译:

哪张脸是真实的脸?

摘要

随着计算机视觉和图像处理技术取得最新进展,现在我们已经能做到在视频中实时合成极其逼真的人脸。这项技术的背后是无限的应用空间,但其中的某些滥用行为却为我们拉响了安全警报,因此开发一个可靠的虚假视频检测器迫在眉睫。

事实上,区分原始视频和造假视频对人和计算机来说都是一个挑战,特别是在视频被压缩或分辨率较低的情况下,而这种视频一般多见于社交媒体网站。由于缺乏足够大的数据集,以往对人脸伪造视频检测的研究一直因受阻而停滞不前。为此,我们引入了一个全新的人脸伪造数据集,它包含约50万张人脸图像(来自1004个视频),图像所涉及的作伪技术都是当前最先进的,且在质量上超过现有同类视频处理数据集至少一个数量级。

通过使用这个新数据集,我们提出了一种能在各种分类、剪辑、压缩情况下对图像进行经典图像取证的基准,此外,我们还提引入了基准评估,它能在现实基础上创建已知的、难以区分的伪造模型,例如生成细化模型。

数据集FaceForensics

FaceForensics中包含的数据来自1004个视频,它由两个子集组成。其中第一个数据集(source-to-target)包含的是存在差异的源视频和目标视频,而第二个数据集(self-reenactment)则是输入视频后由face2face还原的视频,即源视频与目标视频相同。这两个数据集允许我们访问合成图像和真实图像的真值对(groundtruthpairs)。

源-目标数据集:源演员的原始输入图像—目标演员的原始输入图像—重演结果—合成期间使用的3D模型

数据搜集:所有数据都来自YouTube。我们选择的是分辨率大于480p的视频,它们在YouTube8m上已用“face”“newscaster”或“newsprogram”进行了标记。通过使用Viola-Jones人脸检测器,我们从图片中提取了包含超过300个连续帧的人脸视频序列,之后再剪辑成果并手动放映,从中筛选出优质的、无遮挡的视频。

数据处理:为了处理视频,我们使用的方法是最先进的face2face,它能完全自动重演操作,并能在不同表情条件下重新渲染视频中的人脸。在预处理阶段,我们用第一帧获取人脸的3D模型,并在剩下的帧中跟踪表情。为了改善个体拟合和静态纹理估计,面部左右角度的检测框是自动选择的,而这在face2face里原本是手动完成的。简而言之,通过追踪表情,我们能实现个体拟合和静态纹理估计;而通过个体重建,我们就能追踪整个视频来计算每一帧的表达式、rigidpose和照明参数。

这两个数据集的目标主要有以下两点:

验证用当前最先进技术生成的伪造视频在分类和分割时会有什么样的表现。

能否使用生成网络提高伪造质量。

伪造分类任务

伪造分类任务的目的是识别伪造图像,它可以被看作是一个二元分类问题,逐帧处理视频。在数据集的支持下,我们理想中的检测算法不仅能分类高清视频,它应该也能分类视频被压缩或分辨率较低的视频。为了测试算法的性能,我们用H.264压缩算法设置了3个视频压缩基线:无压缩视频、参数为23的低压缩视频和参数为40的高压缩视频。

各基线的清晰度对比

我们在数据集上测试了一系列CNN模型,其中包括一个基于XceptionNetCNN架构的迁移模型。首先,我们在ImageNet上事先把XceptionNetCNN训练好,并对数据集进行微调。在微调期间,我们固定与整个神经网络前4个模块相对应的36个卷积层,然后把最后一层替换成两个带输出的全连接层,随机初始化后进行10个epoch的训练。

当网络连续5个epoch基本保持不变后,为了优化输出,我们又引入了一些超参数来进行评估:Adam、学习率=0.001、β1=0.9、β2=0.999、batch-size=64。下表是我们得出的各模型分类准确率:

分类准确率:无压缩(no-c);低压缩(easy-c);高压缩(hard-c)

可以发现,在无压缩情况下,所有模型都表现良好,而随着视频清晰度的下降,它们的准确率也都出现了不同程度的下降,其中较浅的CNN表现尤为明显,而XceptionNetCNN总体表现优秀。事实上,这种下降是可以接受的,因为一旦视频变得很模糊,人眼也无法作出准确的区分。

伪造分割任务

处理图像的像素级分割是一项非常具有挑战性的任务,而对于图像取证,最有效的一种方法是根据基于相机的伪像(如传感器噪声,去马赛克)。但这种方法在我们的数据集上并没有很好的表现,即便是未压缩的视频,它的表现也很一般。所以我们还是得用深度学习方法,用数据集进行充分训练。

因为XceptionNet之前在分类任务中表现良好,所以这里我们还是把它作为对比模型之一。在测试时,神经网络的滑动窗口以128×128像素大小移动,步长16。每个图像块Wi计算出操作概率的估计值p?i=CNN(Wi),然后把它分配给中央的16×16区域。(详细过程略)

精度和召回率

伪造人脸分割结果

如上图所示,这次我们沿用了之前的定量评估,发现随着压缩率的上升,各模型分割性能都出现了明显下降。最终,在高压缩视频中,只有基于XceptionNet的模型给出了较好的输出。

反向用于生成伪像

在我们的“伪造分类任务”中,实验证明Face2Face可以从未压缩的视频中检测到相当多的数据信息,这就产生了一个问题,即这个数据集是否也能用于相反的目标——进一步提升合成人训练的逼真程度。为了证实这一点,我们用包含521,406个目标真值的第二个数据集做了一次监督学习。

带有skipconnection的自动编码器(AE)

作为基准,我们设计了一个带有skipconnection的自动编码器CNN架构,它将128×128像素的图像作为输入,并预测具有相同分辨率的图像(见上图)。为了从人脸图像中获得有意义的特征,我们先使用VGGFace2数据集以无监督学习的方式对自动编码器网络进行预训练。该数据集包含9131个类别的313万幅图像,比我们的数据集多,但没有经过标记。我们禁用了skipconnection,强迫神经网络完全依靠瓶颈层进行训练。

之后,我们又对FaceForensics中的368,135个训练图像进行微调,并把经过预训练的自动编码器网络放在上面训练。我们输入一张假脸,把监督学习的loss设置成1,启用skipconnection,以便网络能输出更清晰的结果。

上图展示了我们的成果。通过拉近特写镜头,可以发现比起Face2Face,我们改进自动编码器后生成的图片能显示更多细节。Face2Face在鼻孔、鼻子、下巴和脸颊周围会生成大量伪影,我们的方法不仅让这些区域的线条更清晰,还修改了人脸3D模型与背景之间的过渡错误。同时,它还改进了Face2Face由于照明参数估计错误导致的伪影问题。

THE END
1.算法入门课程介绍18.1万次播放 16:26 软件之灵魂——算法(上)5.0万次播放热门课单 11条内容 那些你以为的天才,只是用对了学习方法 11条内容 这些经典名著的故事,你知道多少? 10条内容 拥抱自己,跟自卑说再见 11条内容 一朝看尽长安花——唐朝文化的多元发展 13条内容 绘画和动画 | 色彩、创新与科技碰撞的火 20条内容http://m.open.163.com/mobile/free/gb/video?mid=MDGETD4DC&plid=MDGEPAQ4K
2.深度学习视频处理算法深度学习模型预测华为云帮助中心为你分享云计算行业信息,包含产品介绍、用户指南、开发指南、最佳实践和常见问题等文档,方便快速查找定位问题与能力成长,并提供相关资料和解决方案。本页面关键词:深度学习视频处理算法。https://support.huaweicloud.com/topic/986960-1-S
3.机器学习/算法视频教程eeworld大学堂机器学习/算法视频(http://training.eeworld.com.cn/)为您提供专业的电子电路视频:机器学习/算法以及各类设计工具在内的各类电子视频课程学习。https://m.eeworld.com.cn/training/ic/algorithm
4.音视频学习将每个视频分离成有像素组成的快,因此视频帧的编码处理过程可以到达块的级别。 采用空间冗余方法,对视频帧的一些原始快进行空间预测、转换、优化和熵编码(可变长编码)。 对连续帧不同块采用的临时存放的方法,这样,只需对连续帧中有改变的部分进行编码。该算法采用动态预测和运动补偿来完成。对于特定的块,在一个或多https://www.jianshu.com/p/28dd7f1e58d0
5.推荐算法视频教程推荐算法 已有20143人点击分享 √视频√源码√笔记√课件 课程下载 本套教程及资料一键下载 微信领取 百战程序员 在线学习-辅导-闯关-督学 10大专业全系列课程 在线学习 技术交流 与帅哥、美女同学共同进步 我要加入 学习线路图 系统化学习,打造阶梯学习https://www.bjsxt.com/down/9497.html
6.学习算法交易下单,看这个视频就够啦!视频加载失败,可以 刷新 试试 00:00/00:00 评论 还没有人评论过,快来抢首评 发布 学习算法交易下单,看这个视频就够啦! 金科衍义 发布于:上海市 2024.12.13 10:01 +1 首赞 收藏 作者声明:自主拍摄 金仕达易经金交易终端算法交易功能讲解 https://news.sohu.com/a/836306183_121898907
7.开课吧算法工程师,高级深度学习视频教程本套课程开课吧算法工程师-高级深度学习,主要分为深度学习系统与前沿、深度学习理论、循环神经网络、卷积神经网络四大部分,课程官方售价19799元,文件大小共计15.69G。算法工程师尤其是深度学习方向的是学习的东西是非常难且需要经过系统的学习,这样你才能够掌握这些技术的要领,对本套课程感兴趣的学员,可以查看下面详细目录https://www.vipc6.com/18532.html
8.黑马程序员day17.机器学习算法分类介绍谷歌浏览器 QQ浏览器 360浏览器 人工智能必学基础课-7天入门机器学习 第7集 机器学习算法分类介绍 热度:7 状态:33集全 类型:IT/互联网AI&大数据 年份:2019 首播时间:20191120 语言/字幕:汉语 更新时间:20191120 简介:黑马程序员上传的教育视频:day17.机器学习算法分类介绍,粉丝数146370,作品数18907,免费在线观看https://www.iqiyi.com/v_19rvailk88.html
9.机器学习专家系列精品课程零基础到精通XuLinPart01 机器学习理论篇 Chapter01 大数据算法基础教程(10课) a 大数据算法概述 b 亚线性算法 c 亚线性算法例析 d 外存算法概述 e 外存查找结构 f 外存图数据算法 g 基于MapReduce的并行算法设计 h 超越MapReduce的并行大数据处理 i 众包算法 Chapter02 机器学习算法视频教程(重点)(10课) https://www.cnblogs.com/isLinXu/p/14771158.html
10.算法案例:如何实现高效计算?,教育,k12教育,好看视频算法案例:如何实现高效计算? 百度文库 53万粉丝 · 78万个视频百度文库官方账号 关注 接下来播放自动播放 02:47 澳门回归祖国25周年丨走读青春城市:“打开”活力满满的澳门 新华社 6.8万次播放 · 343次点赞 00:39 4岁孩子被妈妈打屁股致脊髓损伤,医生:孩子有隐匿性神经疾病 掌闻视讯 2.2万次播放 · 42次点https://haokan.baidu.com/v?pd=wisenatural&vid=8174936766768299841
11.BAT算法工程师的成长之路,超详细的学习路线算法工程师的成长路径算法工程师,需要针对落地场景,对算法的可靠性和实时性等方面进行优化,C++ 工程能力必不可少。 Python是一门非常友好的编程语言,不但易于入门而且功能强大,在进行机器学习算法开发的过程中会大量使用 Python。 视频:我上学看的第一个视频,就是小甲鱼 Python 课程,风趣幽默,涉及Python 语法基础、网络爬虫、Pygame 飞机https://blog.csdn.net/c406495762/article/details/108976931
12.支持C++,Java,Python,Go,JavaScript等多语言版本,从此算法学习而且每道题目我都写了的详细题解(图文并茂,难点配有视频),力扣上我的题解都是排在对应题目的首页,质量是有目共睹的。 那么现在我把刷题顺序都整理出来,是为了帮助更多的学习算法的同学少走弯路! 如果你在刷leetcode,强烈建议先按照本攻略刷题顺序来刷,刷完了你会发现对整个知识体系有一个质的飞跃,不用在题https://gitee.com/yuandreams/leetcode-master
13.算法基础之每周算法视频课程(一)共6课时2、学习说明 算法专题目标在于算法的探讨,教会大家思考问题,每当拿到一个算法时,该如何思考,该如何入手,最终,从最常规解决方案到最后找到一种比较好的算法过程。 展开更多 课程大纲-算法基础之 每周算法 视频课程(一) 1 每周算法_目录 [05:33] 2 每周算法_最大公约数 [26:41] 3 每周算法_最小公倍数 [10https://edu.51cto.com/course/5071.html
14.七月在线机器学习集训营19 [双11期间2799¥秒杀,24年最新一期新增大模型] 免费试听 随到随学,项目代码课件答疑一应俱全 CV高级小班 第12期 [最好CV课程,一次报名 服务三年] 免费试听 随到随学,项目代码课件答疑一应俱全 推荐高级小班第13期 [腾讯算法大赛和视频号推荐之外新增第5大项目,和GNN/多模态推荐] http://julyedu.com/
15.无人战争机器最大的技术难题是机器学习算法,目前已被中国领先自然狗可以跑的比人快比人稳,机器狗未来也可以跑的比人快,而且不怕受伤,除非打到核心部件,依然可以反击。没有士气,没有感情,永远不会后退,最关键的是,当敌人用人命消耗流水线产品时,再强大的内心都会感到恐惧。 视频一,中国无人部队单元介绍。视频二,机器学习算法逻辑科普。视频三,机器狗灵活性展示。https://weibo.com/5365769881/P5hgqlP1C
16.《算法与数据结构》精品课:线上线下融合,师生协力共创编程教学新(更多精彩视频可关注视频号“SISTCS101”进行查看) 除了授课要点和经典习题讲解,助教团队每周还会整理网络上的相关知识点资源,整理形成“学习方法”合集。 欢迎走进ShanghaiTech CS101算法与数据结构: https://mp.weixin.qq.com/s/Ab0mSdIcHBMcivHXzGYNsg https://sist.shanghaitech.edu.cn/_t335/2023/1205/c2858a1086548/page.htm
17.朋友圈出镜最高的几个IT公众号学习如逆水行舟,不进则退;今天给大家精机器学习算法工程师 致力于为机器学习、深度学习、数据挖掘等AI技术的“初学者”或者“爱好者”,进行基础理论与实战技能的介绍和学习。我们团队成员既有各个著名院校的在校硕士生、博士生,也有BAT一线资深工程师,我们会竭诚为您服务! 云间拾遗 以开发者视角关注云计算,针对云上各类IaaS/PaaS服务进行产品逻辑、应用场景https://xueqiu.com/5998107859/133593842
18.16个新手必看的机器学习视频教程雷峰网视频链接:https://youtu.be/b5NlRg8SjZg?list=PLFze15KrfxbH8SE4FgOHpMSY1h5HiRLMm 内容简介:来自滑铁卢大学的机器学习详细课程可以指导你学习从最基础到最前沿的机器学习知识。这是一个概念型课程,主要教授机器学习算法的相关数学知识。该课程由几位教授联合教学,其中包括《了解机器学习》书作者 Shai Ben Davidhttps://www.leiphone.com/news/201610/Oqndr7PXFB9BRI9p.html
19.图解机器学习聚类算法详解腾讯云开发者社区聚类(Clustering)是最常见的无监督学习算法,它指的是按照某个特定标准(如距离)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大。也即聚类后同一类的数据尽可能聚集到一起,不同类数据尽量分离。 https://cloud.tencent.com/developer/article/1954356
20.算法数据结构体系学习班马士兵教育官网注意原“算法与数据结构基础班”已经过期。所有内容都被现在的“算法数据结构体系学习班”重新讲述,还增加了内容,增加了题目练习。原“算法与数据结构基础班”的所有内容,对应现在的“算法数据结构体系学习班”的1-23节。 注意原“算法与数据结构进阶班”已经过期。所有内容已经被现在的“算法数据结构体系学习班”和“https://www.mashibing.com/course/339
21.涨知识丨透视阿尔法狗背后的“深度学习+强化学习”算法先来解释深度学习。美国人工智能学会理事、香港科技大学计算机科学及工程学系主任杨强告诉记者,实际上,人工智能技术已走过了60年历程,直到近年来机器学习技术中的深度学习算法取得突破,才迎来春天。深度学习概念由加拿大学者Geoffrey Hinton提出并不断完善,意为使机器模仿人脑神经网络的学习、判断和决策能力。 https://m.thepaper.cn/newsDetail_forward_1710176?ivk_sa=1024320u