在当今世界,人工智能(AI)的应用日益广泛,其中深度伪造技术尤为引人注目。这种技术通过将人物的面部或声音植入视频或音频中,创造出看似真实的假象。虽然深度伪造技术在某些情况下可以用于正当目的,但它同样可能被用于散布虚假信息。例如,一段看似真实的政治家或演员的视频,可能完全是由AI生成的。因此,如何判断自己所见所闻是否真实呢?
在本系列文章中,将展示深度伪造技术是如何工作的,并介绍如何从零开始实现它们。还将探讨一个名为DeepFaceLab的工具,这是一个基于Tensorflow的全能工具,常用于创建令人信服的深度伪造视频。
自编码器是一种神经网络结构,它通过将输入数据压缩成低维表示,然后从这个压缩表示中重建输入数据。简而言之,自编码器的主要优势在于它能够在不丢失重要信息的情况下,将输入数据压缩成更小的尺寸。这种特殊的网络由两个部分组成:
以下是一般自编码器结构的示意图:
// 示例代码,展示自编码器的基本结构
class Autoencoder(nn.Module):
def __init__(self):
super(Autoencoder, self).__init__()
# 定义编码器
self.encoder = nn.Sequential(
nn.Linear(input_size, encoding_size),
nn.ReLU(True)
)
# 定义解码器
self.decoder = nn.Sequential(
nn.Linear(encoding_size, input_size),
nn.Sigmoid()
)
def forward(self, x):
x = self.encoder(x)
x = self.decoder(x)
return x
这种数据压缩过程称为降维,它是深度伪造生成器的关键。
DeepFaceLab改变了深度伪造视频的制作方式。正如其开发者在官方仓库中所说,它是“创建深度伪造视频的领先软件”,令人惊叹。DeepFaceLab是一个简单灵活的面部交换开源框架,在GitHub上非常受欢迎。它无需编码即可生成逼真的深度伪造视频,同时对于不了解深度学习的用户来说也非常灵活。
DeepFaceLab可以在Windows、Linux上安装,也可以在Google Colab笔记本中使用,这对于没有强大本地计算机的用户来说非常有用。它提供了一套良好的功能:可以替换部分或全部面部,去老化面部,替换整个头部或操纵视频中的嘴唇。从他们的官方GitHub仓库中获取了一些图片和视频,以展示这个解决方案的出色之处。请看:
这些熟悉的面孔看起来相当正常,直到意识到它们并不属于它们出现的场景!
以下是原始版本和面部交换版本的直接比较:
还有一个视频:
正如看到的,这种方法非常出色!这些人为此付出了巨大的努力,甚至包括文档。邀请去查看它!
Faceswap和DeepFaceLab一样出色!它与Windows、Linux和MacOS兼容,并且基于Tensorflow、Keras和Python构建。他们有一个很棒的GitHub仓库和一个极好的论坛,可以在其中寻求任何与应用程序本身有关的问题的帮助。