(三)使用生成对抗性网络(GAN)的“深度伪造”(“Deep Fakes” using Generative Adversarial Networks)


paper:

“Deep Fakes” using Generative Adversarial Networks (GAN)

2014


code:


“Deep Fake”是一种基于人工智能的图像合成技术

,比传统的图像到图像的是转换更加强大,

不需要成对的训练数据集(pair training data)就可以生成图片

。“deep fake”的

目的是从一组已存在的图像中获取共同的特征,并找到一种赋予其他图像这些特征的方法

,例如形状和样式。生成对抗性网络(

GANS)

为我们提供了一种实现“deep fake”的有效途径。

  • 采用

    Cycle-GAN network

    ,由两个GAN网络组成,损失函数由两部分:(1)生成器部分的LOSS为LG(包含循环一致性损失Lcyc,保证图片在输入输出的映射是合理的)(2)鉴别器的LOSS为LD。通过

    迭代计算和反向传播

    这两个loss训练Cycle-GAN

  • Cycle-GAN实现目标转换和风格转换

    两个目标:(1)

    目标转换

    :相互转化手袋和背包的图像(2)

    风格转换

    :艺术照的转换,eg梵高油画和秋叶。使用pytorch框架生成的图像效果好。

Section 1:introduction

  • 图像到图像的转换

    基本原理

    可以看作是

    在一定程度上改变输入图像的特征,同时保持其他特征不变

    ,特征变化的方法可以手动或自动的进行调整。对于自动变化,应该包括一个基于机器学习的过程,

    从大量图像的大量训练数据集中学习一种通用的传输方法



    以确保转换对于各种输入都是合理的

    [1,2,3]。成对的训练数据是难以获取的,

    提出Cycle GAN,可以学习在图像之间进行转换,无需成对的训练图像作为输入(fig1,右)。

    通过两个转换任务来测试Cycle-GAN系统:

    手袋和背包之间的图像转换,真实图片和不同艺术风格之间的转换

    ,eg油画和秋叶。

  • 图形到图形的转换方法:
  1. 前期通过手动或者半自动的方法(

    增强图像对比[enhancement of the contrast of pictures ],图像平滑策略[image smoothing strategy],降噪技术[noise reduction techniques],

  2. 利用生成的对抗性网络(GaN)实现图像到图像的翻译[6](2015

    深度卷积生成对抗网络(DCGAN)来实现无监督表示学习的过程

    并获得满意的结果[7][G,D都是CNN];提出

    CycleGAN来建立一个未配对的网络图像到图像转换

    [4][网络结构见概要])

Section 2:物理与数学框架

  • GAN:生成假图像的基本模块是GAN

  • DCGAN(Deep Convolitional GAN)深度卷积对抗网络:G,D,都是CNN,

不足:所有输入经常映射到相同的输出,这称为“模式崩溃”[8]。

  • Cycle-GAN:

两个DCGAN构成(两个D,两个G,在训练期间,向两个DCGANs分别发送两组不同的图像作为输入。)


循环一致性损失Lcyc:

以确保如果我们将图像从一个域转换到另一个域,然后再返回到该域,最后图像应该返回到它离开[4]的位置,这意味着输入和输出的映射是合理的。

循环一致性损失包括两部分

。(1)

前向循环一致性损失

,它确保F(G(X)≈x(通过映射G将输入图像x从域X转换到域Y,然后通过映射F返回域X),(2)

后向循环一致性损失

,它保证G(F(Y)≈y。


L


identity


损失:

引入额外损失鼓励映射G,F来保持输入和输出之间的颜色组合,目的是 当将目标域中的真实图像作为输入提供给生成器时,调节生成器接近标识映射

DCGAN有两个对抗损失两个鉴别损失,分别将对抗损失和鉴别损失进行合并得到整个循环对抗网络的对抗损失Lgan鉴别网络损失LD,有四个损失值。


LOSS:


(3)是1-标准损失,(4)(5)是MSE损失

将(2)(4)(5)合并成LG 其中λ1、λ2和λ3是控制这三种损失的相对重要性的系数。

将LD分为两部分LDx和LDY分别表示两个独立鉴别器


训练过程:

  1. 先计算并反向传播LG
  2. 计算并反向传播LDx
  3. 计算并反向传播LDY

E表示训练批次,N训练图片数量




learnRate




init


初始化学习率,经过E


0成线性递减直到最后echo等于0为止

Section 3:实验与结果

  • 数据集:使用Cycle-GAN解决两种不同的问题,采用两种不同的数据集
  • 对象变形[object transfiguration]:(databases:从Google图像中收集。)

  • 风格迁移[style transfer]:(database:(UCB数据集可用))

Section 4:实验结果




风格迁移中油画和Ukiyo-e都可以转换为图片,因为他们具有比较,明显的共同特征,反过来不能转换,因为普通的照片没有什么共同点。网络无法找出固定的照片模式来进行图像传输,从而产生坏的赝品。

Section 5:发展


G


A


N缺点

:训练需要多个数据,训练速度较慢。我们仍在寻找最佳的优化器函数和批处理大小。 GPU来平衡我们的GaN网络的健壮性和效率。


GANS


应用

:(1)

产生新的对象



样式转换

之外,(2)典型的应用是

季节转移

。我们可以利用不同季节的照片对网络进行训练,并将其转化为一个季节转移系统。(3)实现为一种

照片增强技术

。它可以生成较浅的景深照片,给出了DLSR相机拍摄的照片。(4)在视频中对运动模式进行建模(5)从图像中重建物体的三维模型



版权声明:本文为weixin_43308332原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_43308332/article/details/93384451