TensorFlow应用实战-10-GAN介绍

用TensorFlow开发会ps的AI

生成图片或补全图片

背景和知识点简介

Adobe公司在Photoshop中加入人工智能等功能。

图片补全修复。

GAN 以及 由它发展而来的DC

GAN: 生成对抗网络

Generative Adversarial Networks

DCGAN: 深度卷积生成对抗网络

Deep Convolutional Generative Adversarial Networks

对于图片进行补全,或者其他的功用。

DCGAN的论文

https://arxiv.org/abs/1511.06434

UNSUPERVISED REPRESENTATION LEARNING WITH DEEP CONVOLUTIONAL GENERATIVE ADVERSARIAL NETWORKS

非监督学习

这篇论文有16页。基础的架构也用到了卷积神经网络。结合了生成式对抗的网络的相关技术。最终可以生成一些图片。

结合几张图片生成新的图片。微笑的女人,紧张的女人,紧张的男人

微笑的女人 - 紧张的女人 + 紧张的男人 = 微笑的男人

对于图片元素的提取以及删减。

生成图片样例

mark

mark

mark

生成卡通人物或者人脸。

配置开发环境

软件和素材

  • TensorFlow: tf.keras(TensorFlow对keras的一个上层实现)

可以更加方便的去调用TensorFlow底层的api,让我们的模型更加清晰

  • PIL python imaging Library (安装pillow)
pip install pillow

下载大量的图片

实验中我们用到的图片是(64,64)的,也可以调整网络模型的参数使它成为(32,32)的 或者更大

CIFAR-10 需要使用pickle来处理的

https://www.cs.toronto.edu/~kriz/cifar.html

香港中文大学 celeba 人脸数据

http://mmlab.ie.cuhk.edu.hk/projects/CelebA.html

百度云盘和Google drive都可以下载

kaggle中的datasets下载

https://www.kaggle.com/datasets

图片识别的比赛。

https://www.kaggle.com/alxmamaev/flowers-recognition/data

https://cs.nyu.edu/~roweis/data.html

Olivetti Faces (64,64)的图片

网上可以下载到卡通人物图片,Pokémon GO,香港中文大学人脸

下载下来转成我们想要的格式。用于模型的训练。

什么是GAN?

GAN 释义

  • generative Adversarial Network: 生成对抗网络
  • 让两个神经网络以相互博弈的方式进行学习
  • 一个生成(generator) 网络 与一个判别(Discriminator) 网络

想象一下场景: 给女友拍照

  • 女友说: 我要这种效果

mark

可是实际的效果是这样:

mark

女友说: 我还没转身你就拍啦。

女友说: 你就不能去学学xxx的抓拍吗?

女友又说我要这种效果:

mark

可是你竟然拍出来这样的效果

mark

女友说: 你就不能去学学xxx的后期么?

没办法,女朋友的指令大于一切。

经过不断学习和失败, 最终。。。

mark

拍出了高大上的照片,女友说很棒我拿去发朋友圈了。

GAN的基本原理

  • 男友;Generator(生成网络) 负责从随机生成数据(这里是照片)
  • 女友: Discriminator (判别网络) 找出和真实数据之间的区别

直到判别网络无法判断数据是生成的还是真实的为止

无法判断这个照片是你拍的还是专业的人拍的

mark

给GAN一些真实的样本,大写的G表示生成器。大写的D表示判别器。

我给判别器一些真实样本,同时给它一些生成器从潜在空间加些噪声(具有随机性)的 数据,经过生成器,生成假的样本。

真实的样本和假冒的样本会一起经过判别器,判别器给出判断。

我们从上帝视角去看判别器判别的是否正确,根据我们上帝视角的判断去调教判别器和生成器

不只提升生成器,两个都会一起提升。

男友的拍照能力 和 女友的审美都会提升

mark

生成的数据与真实数据如果重合就停止

mark

GAN的相关信息

  • lan Goodfellow 在2014年提出,他曾是 Yoshua Bengio的学生

深度学习三巨头 Google brain openai

Yan LeCun 称赞 GAN 是"过去十年机器学习领域最有意思的想法"

可以生成图像,视频,模型。有不少的变体: DCGAN WGAN等

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

【NLP2005年以来大突破】语义角色标记深度模型,准确率提升10%

【新智元导读】被称为取得了NLP “2005 年以来首个大突破”的研究报告 Deep Semantic Role Labeling: What Works an...

3453
来自专栏专知

伯克利新论文 | 合成GAN(Compositional GAN)

【导读】伯克利大学今日发表一篇最新论文,改进生成对抗网络GAN,提出了一个名为“Compositional GAN”的模型,将GAN框架中的对象组合建模为一个s...

1330
来自专栏新智元

谷歌GAN 实验室来了!迄今最强可视化工具,在浏览器运行GAN

Google AI和乔治亚理工学院的研究人员发布了一个学习GAN的交互式网站:GAN Lab!由TensorFlow.js 驱动,在浏览器就可以运行GAN,非常...

1333
来自专栏专知

【干货】GAN调研:多极扩展(跨域和条件的GAN扩展模型调研)

本文授权转载于知乎专栏作者:陈乐天 https://zhuanlan.zhihu.com/p/32103958 【摘要】 本文关注跨域(cross-domain...

3477
来自专栏机器学习算法工程师

深入浅出——基于密度的聚类方法

作者 祝烨 编辑 (没脸) “The observation of and the search forsimilarities an...

3518
来自专栏一心无二用,本人只专注于基础图像算法的实现与优化。

《Single Image Haze Removal Using Dark Channel Prior》一文中图像去雾算法的原理、实现、效果(速度可实时)

      最新的效果见 :http://video.sina.com.cn/v/b/124538950-1254492273.html         可处理...

77910
来自专栏崔庆才的专栏

自然语言处理全家福:纵览当前NLP中的任务、数据、模型与论文

组合范畴语法(CCG; Steedman, 2000)是一种高度词汇化的形式主义。Clark 和 Curran 2007 年提出的标准解析模型使用了超过 400...

6190
来自专栏Brian

机器学习读书笔记一

---- 概述 最近在看周教授的《机器学习》,书中很多理论知识非常适合入门和学习。故把每一章的自己读书笔记和记录给写下来。 基本术语 机器学习:机器学习致力于研...

34010
来自专栏机器之心

自然语言处理全家福:纵览当前NLP中的任务、数据、模型与论文

组合范畴语法(CCG; Steedman, 2000)是一种高度词汇化的形式主义。Clark 和 Curran 2007 年提出的标准解析模型使用了超过 400...

1892
来自专栏AI科技评论

干货 | 可能是近期最好玩的深度学习模型了:CycleGAN的原理与实验详解

AI科技评论按:本文作者何之源,原文载于知乎专栏AI Insight,AI科技评论获其授权发布。 CycleGAN是在今年三月底放在arxiv(arXiv: 1...

5488

扫码关注云+社区

领取腾讯云代金券