js3311com金沙网站手把手教你在TensorFlow2.0中落成CycleGAN

针对这两个问题,CMU团队提出的方法,是利用时间信息(Temporal
Information) 来施加更多的限制,不良局部极小值的现象会减少。

这份教程全面详细,想学CycleGAN不能错过这个:

量子位编辑 | 公众号 QbitAI

js3311com金沙网站 1

js3311com金沙网站 2

—direction=A2B,用户可以通过设置—direction参数生成list文件,从而确保图像风格转变的方向。

这样一来,改变天气就不难了。团队说拍电影的成本,可以用这样的方法降下来。

图:CGAN的网络结构

二是,只依靠二维图像的空间信息,要学习视频的风格就很困难。

初始化所有生成器和鉴别器的的优化:

AttGAN中生成网络的编码部分主要由convolution-instance
norm-ReLU组成,解码部分由transpose
convolution-norm-ReLU组成,判别网络主要由convolution-leaky_ReLU组成,详细网络结构可以查看network/AttGAN_network.py文件。

圆栗子 发自 凹非寺

3、导入并重新使用Pix2Pix模型

提出了将基于属性标签替换为基于属性更改的训练机制。

原本是日落:

有国外网友称赞太棒,表示很高兴看到TensorFlow
2.0教程中涵盖了最先进的模型。

一键式启动

Recycle-GAN,是一只无监督学习的AI。

7、使用测试集生成图像

可选参数见python train.py —help

不成对的二维图像数据,来训练视频重定向(Video Retargeting)
并不容易:

循环一致性意味着结果接近原始输入。

自定义数据集:用户可以使用自定义的数据集,只要设置成所对应的生成模型所需要的数据格式即可。

大家可能已经习惯这样的操作了。

js3311com金沙网站 3

这位选手,入选了ECCV 2018

鉴别器D_X区分图像X和生成的图像X,辨别器D_Y区分图像Y和生成的图像Y。

js3311com金沙网站 4

js3311com金沙网站 5

量子位 出品| 公众号 QbitAI

看到标签是“Bald”的变脸照片,是不是很多读者感受到了一种来自骨髓的凉意,大家多保重!

三位选手对比一下

这个官方教程贴几天内收获了满满人气,获得了Google
AI工程师、哥伦比亚大学数据科学研究所Josh Gordon的推荐,推特上已近600赞。

每个GAN都给出了一份运行示例,放在scripts文件夹内,用户可以直接运行训练脚本快速开始训练。

然后,看一下Recycle-GAN,是怎样在两段视频的图像之间,建立映射的。

1、设置输入Pipeline

苹果用户也同样热情,App
Annie数据显示,目前在121个国家的iOS商店排名第一。

也是目前大火的“换脸”技术的老前辈了。

js3311com金沙网站 6

js3311com金沙网站 7

js3311com金沙网站 8

可以利用非成对的图片进行图像翻译,即输入为两种不同风格的不同图片,自动进行风格转换。

那么,怎样的迁移才可走出这个框框,让这个星球上的万物,都有机会领取视频改造的恩泽?

在CycleGAN中,因为没有用于训练的成对数据,因此无法保证输入X和目标Y在训练期间是否有意义。因此,为了强制学习正确的映射,CycleGAN中提出了“循环一致性损失”(cycle
consistency loss)。

js3311com金沙网站 9

时间信息:进度条撑不住了 (误)

安装tensorflow_examples包,用于导入生成器和鉴别器。

Pix2Pix

js3311com金沙网站 10

js3311com金沙网站 11

StarGAN中生成网络的编码部分主要由convolution-instance
norm-ReLU组成,解码部分主要由transpose
convolution-norm-ReLU组成,判别网络主要由convolution-leaky_ReLU组成,详细网络结构可以查看network/StarGAN_network.py文件。

第一局,先来看看换脸的效果:

例如将一个句子和英语翻译成法语,再将其从法语翻译成英语后,结果与原始英文句子相同。

  1. 预训练模型

效果怎么样?

在TensorFlow 2.0中实现CycleGAN,只要7个步骤就可以了。

生成网络提供两种可选的网络结构:Unet网络结构和普通的encoder-decoder网络结构。网络利用损失函数学习从输入图像到输出图像的映射,生成网络损失函数由GAN的损失函数和L1损失函数组成,判别网络损失函数由GAN的损失函数组成。生成器的网络结构如下图所示。

代码也快来了

CycleGAN,一个可以将一张图像的特征迁移到另一张图像的酷算法,此前可以完成马变斑马、冬天变夏天、苹果变桔子等一颗赛艇的效果。

StarGAN, AttGAN和STGAN所需要的Celeba数据集需要用户自行下载。

另外,时间、空间信息的搭配食用,也能让AI更好地学到视频的风格特征

js3311com金沙网站 12

AttGAN

团队在项目主页里,提供了丰富的生成效果:

GitHub地址:

条件生成对抗网络,一种带条件约束的GAN,使用额外信息对模型增加条件,可以指导数据生成过程。

来自卡耐基梅隆大学的团队,开发了自动变身技巧,不论是花花草草,还是万千气象,都能自如转换。

我们训练两个生成器和两个鉴别器。生成器G架构图像X转换为图像Y,生成器F将图像Y转换为图像X。

执行以下命令得到StarGAN,AttGAN或者STGAN的预测结果:

论文请至这里观察:

鉴别器和生成器的损失与Pix2Pix中的类似。

CycleGAN由两个生成网络和两个判别网络组成,生成网络A是输入A类风格的图片输出B类风格的图片,生成网络B是输入B类风格的图片输出A类风格的图片。

RecycleGAN用奥巴马生成的川川,除了嘴皮子,脸的角度也在跟着变化。而中间的CycleGAN,只有嘴的动作比较明显。

js3311com金沙网站 13

图:DCGAN中的生成器

看了黎明之前的视频,就跟着变了日出:

在CycleGAN论文中也提到,将随机抖动和镜像应用到训练集中,这是避免过度拟合的图像增强技术。

深度卷积生成对抗网络,将GAN和卷积网络结合起来,利用卷积神经网络作为网络结构进行图像生成,可以得到更加丰富的层次表达。为了提高生成样本的质量和网络的收敛速度,在网络结构上进行了一些改进:取消
pooling 层、加入 batch
normalization、使用全卷积网络、在生成器中,最后一层使用Tanh函数,其余层采用
ReLu 函数 ; 判别器中都采用LeakyReLu。

或许是怀着超越大前辈Cycle-GAN(来自朱俊彦团队)
的意味,团队给自家的GAN起了个非常环保的名字,叫Recycle-GAN

在上面的教程中,我们学习了如何从Pix2Pix中实现的生成器和鉴别器进一步实现CycleGAN,接下来的学习你可以尝试使用TensorFlow中的其他数据集。

生成网络中的编码网络主要由convolution-instance
norm-ReLU组成,解码网络主要由transpose
convolution-norm-leaky_ReLU组成,判别网络主要由convolution-leaky_ReLU组成,详细网络结构可以查看network/STGAN_network.py文件。