IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 生成式对抗网络 -> 正文阅读

[人工智能]生成式对抗网络

一、Network as Generator

在这里插入图片描述

  • 对z有个限制,必须够简单,能够sample
  • 输出是一个分布

1、为什么要distribution?

在这里插入图片描述

  • 如果没有distribution这个机器可能输出turn right 也有可能输出turn left,或者同时向左向右转
  • 处理这个问题就是让机器输出是有机率的
    在这里插入图片描述
  • 当任务需要创造力时,需要用distribution,举例:
    在这里插入图片描述

二、Generative Adversarial Network(GAN)

1、Unconditional generation

以生成二次元人物的脸为例
在这里插入图片描述

  • 二次元人物的脸就是一个非常高维的向量

(1)Discriminator辨识器

在这里插入图片描述

  • Discriminator中的神经网络可以选择CNN、Transformer

(2)Basic Idea of GAN

在这里插入图片描述
在这里插入图片描述

  • Generator和Discriminator是一起不断进化的,Generator产生图片,Discriminator进行辨别,从而产生越来越接近真实的图片,所以叫生成对抗网络

(3)Generator VS Discriminator

  • 第一步:初始化G和D,先固定G,更新D。因为现在G中的参数是随机初始的,所以生成的图片很乱,根据真正的二次元人物头像和产生的二次元人物头像去训练D,目的是为了发现真正图片和生成图片的差异,可以当作分类问题也可以是回归问题
    在这里插入图片描述
  • 第二步:固定D,更新G。G训练目标是使D产生的分数更高,即更加接近真实图片。将G的网络和D的网络直接连起来,只调整G的参数
    在这里插入图片描述
  • 反复训练G和D
    在这里插入图片描述

三、GAN的理论

在这里插入图片描述

1、Divergence怎么计算

在这里插入图片描述

2、Discriminator怎么训练

在这里插入图片描述

  • 如果数据从数据集中出来,得分越高越好,而从G中产生,得分越低越好
    在这里插入图片描述
  • 如果G产生的二次元人脸和数据集中的二次元人脸很像,Discriminator难以区分,所以会得到一个较小的最大化V
  • 如何训练D和G?(通过什么函数)
  • G要最小化divergence
  • D要最大化差异(尽可能的区分生成的和数据集中的)
    在这里插入图片描述

3、GAN训练的小技巧

(1)JS divergence有什么问题

1、重叠范围小
而JS divergence如果两个分布没有重叠,算出来都是log2
无法看到模型越来越好,只能将G产生的图片导出来人眼对比,如果变坏了,重新开始训练
在这里插入图片描述
在这里插入图片描述
以上问题的解决:
Wasserstein distance
在这里插入图片描述

  • 穷举所有举例选择最小的那个
    在这里插入图片描述
  • 通过W distance可以解决JS divergence有可能带来的问题
    在这里插入图片描述

(2)WGAN

当使用Wasserstein distance代替JS divergence时,GAN就叫做WGAN
1、计算W distance

  • 要保证D函数足够平滑,因为当G产生的值和真正的值不重合时,如果D不平滑对于真正的值取无穷大,对G产生的值取无穷小,那么Wasserstein distance会趋向于无穷大
    在这里插入图片描述
  • 怎么做到D平滑的限制呢?
    在这里插入图片描述

(3)GAN 仍然存在挑战

1、G和D任何一个停止进步,另一个也会停止训练,如果某次LOSS函数没有下降,这个训练可能会要重新来过
在这里插入图片描述
2、GAN for Sequence Generation
在这里插入图片描述

  • G中用梯度下降的方法改变参数但是文字的不变那么D的得分不变,无法训练

4、Generator的衡量

  • 最开始是人眼识别
    在这里插入图片描述
  • 影像辨识系统来评判(产生几率分布)
    在这里插入图片描述
    对于某一张图片影像辨识系统对某类的概率格外高才是好的Generation
    但是这样存在一个问题:多产生几次二次元人物的脸会发现产生来产生去就是那几张
    在这里插入图片描述
    还会存在另一个问题:只产生真实数据中的某一类,而对另些类别有触及
    在这里插入图片描述
  • 怎么判断是否存在以上问题:
    在这里插入图片描述
    把不同的图片扔进影像辨识系统,出来的分布主要集中在某一个上,那么说明多样性不够

四、GAN的应用

1、未标注资料的学习

(一点成对的资料都没有)
在这里插入图片描述

  • 但是仅用D是不够的,因为它可以产生一个和真实人物没有什么关系的二次元头像,也能通过D
  • 不能用conditional GAN,因为conditional GAN需要成对的资料
  • 所以用Cycle GAN
    在这里插入图片描述
  • 但是可能仍然存在问题。比如:开始人像眼镜转成二次元后变成一颗痣,然后转回人物又变回眼镜
    在这里插入图片描述

2、Cycle GAN做文本意思转换

在这里插入图片描述

  • 用强化学习硬train

五、Generative Models

1、PixelRNN

在这里插入图片描述

2、Variational Autoencoder(VAE)变分自编码器

在这里插入图片描述

  • Why VAE?
    VAE会加上noise,使满月附近的code也是满月,弦月附近的code也是弦月,这样就使得满月和弦月之间的图像(为了使其和满月最像也和弦月最像)介于满月和弦月之间
    在这里插入图片描述
    noise是VAE自己决定的,如果只看reconstruction error最小的话,机器会使noise都为0,所以VAE还要满足另一个条件
    在这里插入图片描述
    在这里插入图片描述
  • Gaussian Mixture Model
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 上面一个式子说明minimize,下面一个式子说明maximize
    在这里插入图片描述
  • VAE存在的问题
    VAE是尽量产生和database里尽可能一样的照片,而不是去产生一张以假乱真的照片
    在这里插入图片描述

3、GAN

(1)Generator

在这里插入图片描述
在这里插入图片描述

4、Flow-based Model

  • Generative models 的问题
    在这里插入图片描述
  • Generator
    在这里插入图片描述

(1)Math Background

在这里插入图片描述
在这里插入图片描述

  • 举例
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

(2)Flow-based Model简单介绍

在这里插入图片描述

  • Flow-based model是有一堆generator
    在这里插入图片描述
  • 考虑一个generator的情况
  • 考虑左边时,当z为0时,最大,而考虑右边时,如果z一直为0,那么右边这一项趋于负无穷,所以要两个式子同时考虑
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 比如影像的生成
    如何划分i:1、纵轴横轴加起来偶数的copy奇数的transform
    2、image一般有三个channel,某几个channel做copy其余的做transform
    在这里插入图片描述
    在这里插入图片描述
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-09-01 11:55:38  更:2021-09-01 11:57:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 16:40:56-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码