区别VAN与GAN,LSGAN、WGAN、WGAN-GP、CGAN

2023-11-13

训练”稳定”,样本的”多样性”和”清晰度”似乎是GAN的 3大指标 — David 9

VAE与GAN

聊到随机样本生成, 不得不提VAEGAN, VAE用KL-divergence和encoder-decoder的方式逼近真实分布. 但这些年GAN因其”端到端”灵活性和隐式的目标函数得到广泛青睐. 而且, GAN更倾向于生成清晰的图像:

VAE与GAN生成对比

GAN在10次Epoch后就可以生成较清晰的样本, 而VAE的生成样本依旧比较模糊. 所以GAN大盘点前, 我们先比较一下VAE与GAN的结构差别:

VAE与GAN结构比较

VAE训练完全依靠一个假设的loss函数和KL-divergence逼近真实分布:

GAN则没有假设单个loss函数, 而是让判别器D生成器G之间进行一种零和博弈, 一方面, 生成器G要以生成假样本为目的(loss评估), 欺骗判别器D误认为是真实样本:

另一方面, 判别器D要以区分真实样本x和假样本G(z)为最终目的(loss评估):

一般, 判别器D在GAN训练中是比生成器G更强的网络, 毕竟, 网络G要从D的判别过程中学到”以假乱真”的方法. 所以, 很大程度上, G是跟着D学习的.

当然, 生成对抗网络也有一些问题, 比如经常很难训练(DCGAN试图解决), 有时候(特别是高像素图像), GAN生成图像不清晰, 还有时候, 生成图片多样性太差(只是对真实样本的简单改动).

这些问题, 催生出近年来各种有意思的GAN改进算法:

LSGAN(最小二乘GAN)

传统GAN中, D网络和G网络都是用简单的交叉熵loss做更新, 最小二乘GAN则用最小二乘(Least Squares) Loss 做更新:

选择最小二乘Loss做更新有两个好处, 1. 更严格地惩罚远离数据集的离群Fake sample, 使得生成图片更接近真实数据(同时图像也更清晰) 2. 最小二乘保证离群sample惩罚更大, 解决了原本GAN训练不充分(不稳定)的问题:

来自: https://arxiv.org/pdf/1611.04076.pdf

但缺点也是明显的, LSGAN对离离群点的过度惩罚, 可能导致样本生成的”多样性”降低, 生成样本很可能只是对真实样本的简单”模仿”和细微改动.

WGAN

DCGAN用经验告诉我们什么是比较稳定的GAN网络结构, 而WGAN告诉我们: 不用精巧的网络设计和训练过程, 也能训练一个稳定的GAN.

WGAN 通过剪裁D网络参数的方式, 对D网络进行稳定更新(Facebook采用了一种名叫”Earth-Mover“的距离来度量分布相似度).

来自: https://arxiv.org/pdf/1701.07875.pdf

但是, 有时一味地通过裁剪weight参数的方式保证训练稳定性, 可能导致生成低质量低清晰度的图片.

WGAN-GP

为了解决WGAN有时生成低质量图片的问题, WGAN-GP舍弃裁剪D网络weights参数的方式, 而是采用裁剪D网络梯度的方式(依据输入数据裁剪), 以下是WGAN-GP的判别器D的Value函数和生成器G的Value函数:

WGAN-GP在某些情况下是WGAN的改进, 但是如果你已经用了一些可靠的GAN方法, 其实差距并不大:

条件生成的GAN

许多情况下,我们需要生成指定类的随机样本,这时就需要条件生成的GAN:

CGAN

CGAN是对条件生成GAN的最先尝试,方法也比较简单,直接在网络输入加入条件信息c,用来控制网络的条件输出模式:

公式也相对简单:

这样,使得生成指定label的样本成为可能:

来自:https://arxiv.org/pdf/1411.1784.pdf

参考文献:

  1. https://github.com/hwalsuklee/tensorflow-generative-model-collections
  2. https://github.com/xunhuang1995/SGAN
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

区别VAN与GAN,LSGAN、WGAN、WGAN-GP、CGAN 的相关文章

  • 错误:‘uuid_t’在此作用域中尚未声明

    安装TFS报错 1 2 3 4 5 6 7 8 9
  • MYSQL 中 LIMIT 用法

    mapper文件中的sql 在实体类中定义的属性 start 从第几条记录开始 size 读取几条记录 select id findAllUsers parameterType Map resultType entity IUser gt
  • 华为OD机试 - 座位调整(JS)

    题目描述 疫情期间课堂的座位进行了特殊的调整 不能出现两个同学紧挨着 必须隔至少一个空位 给你一个整数数组 desk 表示当前座位的占座情况 由若干 0 和 1 组成 其中 0 表示没有占位 1 表示占位 在不改变原有座位秩序情况下 还能安
  • java--注解和反射

    一 注解 1 1 注解Annotation的概念 1 注解的作用 注解Annotation是从JDK1 5开始引入的新技术 我们在编程中经常会使用到注解 它的作用有 1 编译检查 比如 SuppressWarnings Deprecated
  • 【使用html2pdf将页面生成PDF文件】

    前端使用html2pdf将页面生成PDF文件 一 下载js文件 链接 https cdnjs cloudflare com ajax libs html2pdf js 0 10 1 html2pdf bundle min js 二 引入js
  • poi 操作 PPT,针对 PPTX--图表篇

    poi 操作 PPT 针对 PPTX 图表篇 文章目录 poi 操作 PPT 针对 PPTX 图表篇 1 读取 PPT 模板 2 替换标题 4 替换图表数据 接下来对 ppt 内的图表进行操作 替换图表的数据 原幻灯片样式 1 读取 PPT
  • 并发编程基本概念(进程,线程,协程,线程池,同步/互斥)

    并发编程基本概念 一 进程的概念 计算机的核心是CPU 它承担了所有的计算任务 而操作系统是计算机的管理者 它负责任务的调度 资源的分配和管理 统领整个计算机硬件 应用程序则是具有某种功能的程序 程序是运行于操作系统之上的 进程 从用户角度
  • 企业微信三方应用开发(一)三方应用开发设置,suit_ticket获取,验证回调有效性

    加我微信li570467731 拉你进二百多人企业微信开发同行群 文末有二维码 企业微信开发三部曲 企业微信应用开发概述篇 免费 已完结 企业微信开发第三方应用开发篇 更新中 企业微信开发自建内部应用开发 筹备中 关注公众号 ToB Dev
  • 练习:“快乐数”判断

    练习 快乐数 判断 APP发文编辑机制更新后 慢热的我还适应不来 这里只放了 python 代码 运行效果和题目 请点击前面蓝色文字 移步我昨天的 学习打卡 帖 Pyonth 代码 coding utf 8 from random impo

随机推荐

  • 冒泡排序详解(C语言)

    对于刚入门学习编程的新手来说 冒泡排序应该是大家接触的第一个算法 由于刚接触编程不久 新手的思维还没有得到很好的开拓 冒泡排序在一开始对新手来说有些难理解 现在就让我们来看看新手如何更好的来理解冒泡排序算法 冒泡排序的思路 假设数组有n个数
  • Attentional Feature Fusion 注意力特征融合

    Attentional Feature Fusion 注意力特征融合 最近看到一篇比较不错的特征融合方法 基于注意力机制的 AAF 与此前的 SENet SKNet 等很相似 但 AFF 性能优于它们 并且适用于更广泛的场景 包括短和长跳连
  • Web3存储赛道Arweave(AR)

    Arweave简介 Arweave的愿景是成为一座新的亚历山大图书馆 旨在成为世界知识的普遍宝库 Arweave是一个类似FileCoin的新的去中心化存储平台 Arweave通过区块链的方式实现 文件存在每一个区块上 Arweave原来的
  • Matlab学习11-图像处理之图像变换

    文章目录 一 傅里叶变换快速卷积 二 模板匹配 三 二维离散余弦变换 四 JPEG图像压缩典型算法 总结 一 傅里叶变换快速卷积 代码 傅里叶变换快速卷积 disp 步骤1 生成3 3的矩阵A和B A 4 5 6 7 8 9 B 3 2 1
  • 看到一篇关于软件专业的讨论,对将要选大学专业的人很有用

    APUE和UNP看不懂怎么办 狗尾草 C 前几天京东搞活动 我就把这三本书都买了 结果还是高估了自己的功力 看了一星期都看不懂 谁能提点建议 这两套书该怎么看或者推荐一点更简单入门的书 mephistohk W Richard Steven
  • Ciclop开源3D扫描仪软件---Horus源码分析之src\horus\engine\calibration\calibration.py

    coding utf 8 This file is part of the Horus Project author Jes煤s Arroyo Torrens
  • java定时器,每天00:00执行任务

    import java text SimpleDateFormat import java util Calendar import java util Timer import java util TimerTask public cla
  • 多分类 & 多标签 准确度计算

    多标签 V S 多分类 多类分类 Multiclass classification 表示分类任务中有多个类别 比如对一堆水果图片分类 它们可能是橘子 苹果 梨等 多类分类是假设每个样本都被设置了一个且仅有一个标签 一个水果可以是苹果或者梨
  • ubuntu16.04-cuda11.1上使用TensorRT加速yolov5推理

    基础 环境 其实极客的版本已经给我们了 ubuntu16 04 cuda11 1 cudnn8 0 opencv4 1 1 tensorrt7 2 检查 ubantu版本 lsb release a 检查cuda版本 nvcc versio
  • weex 一个传说级巨坑-- 2018最新版weex踩坑指南(weex navigator 多界面跳转)

    先说结论 本人极度非常 不推荐weex作为任何商用开发 有很多人会说了 你瞎扯 你看别人阿里 啊飞猪 啊那个支付宝 人家不是用得好好的么 当然这也是我们公司作为技术选型的考量 三端通用 阿里系的app全线在用 理论上是可以实现的 而且我们在
  • find / -name file 权限不足

    find name file 权限不足 1描述如下 原因 解决方案 结果 在查找系统文件中 查找到 roor user 1000 gvfs目录时提示权限不够 1描述如下 find name test01 txt home kali test
  • 总结12个python代码

    python有很好的可读性和简洁性 学会其中的小的技巧 运用的恰当 会让我们的工作事半功倍 以下是我总结的12个小的程序段 看似非常的简单 但是却非常的有技巧性 并且对个人的编程能力是一个很好的检验 大家应该在日常的编程中多多使用 多多练习
  • 【精华】安卓开发学习路线规划

    近一段时间经常被朋友问到如何从零开始学习安卓 成为一名安卓开发工程师 不得不感叹 现在各行各业都有不少人在涌向IT 互联网行业 希望从事程序开发工作 竞争越来越激烈了 借此机会 我梳理了一下自己所学所知的安卓知识 制定了这份安卓开发学习路线
  • c语言中swap表示什么意思,swap是什么意思_单片机里的SWAP A是什么意思啊?

    Swap是什么意思 Swap是一种金融衍生品 指交易双方约定在未来某一期限相互交换各自持有的资产或现金流的交易形式 外汇里的 swap 是什么意思 外汇里swap专业说法是掉期 通俗的说法就是隔夜利息 指的是你炒外汇使用的杠杆部分的资金你应
  • leetCode Q3:Longest Substring Without Repeating Characters(java)

    1 题目链接 https leetcode com problems longest substring without repeating characters description 2 题目内容 中文版 给一个字符串 要求返回最长的不
  • 详解用户画像

    01画像简介 用户画像 即用户信息标签化 通过收集用户的社会属性 消费习惯 偏好特征等各个维度的数据 进而对用户或者产品特征属性进行刻画 并对这些特征进行分析 统计 挖掘潜在价值信息 从而抽象出用户的信息全貌 如图1 1所示 用户画像可看作
  • 史上最全C/C++面试八股文,一文带你彻底搞懂C/C++面试!

    前述 本文初衷是为了总结本人在各大平台看到的面经 我会在本文持续更新我所遇到的一些C 面试问题 如有错误请一定指正我 目录 1 讲一讲封装 继承 多态是什么 2 多态的实现原理 实现方式 是什么 以及多态的优点 特点 3 final关键字的
  • PHP实现微信公众号主动推送消息

    这篇文章主要介绍了php实现微信公众号主动推送消息的方法 PHP版微信公共平台消息主动推送 突破订阅号一天只能发送一条信息限制 需要的朋友可以参考下 通过学习借鉴朋友的实现方法进行整理 实现了PHP版的微信公共平台消息主动推送 分享给大家供
  • Kafka的数据消费过程以及消息不丢失机制

    文章目录 Kafka数据写入流程 Kafka数据消费流程 消息不丢失机制 broker数据不丢失 生产者数据不丢失 消费者数据不丢失 Kafka数据写入流程 执行流程 生产者获取对应分区的 leader 位置 发数据给leader brok
  • 区别VAN与GAN,LSGAN、WGAN、WGAN-GP、CGAN

    训练 稳定 样本的 多样性 和 清晰度 似乎是GAN的 3大指标 David 9 VAE与GAN 聊到随机样本生成 不得不提VAE与GAN VAE用KL divergence和encoder decoder的方式逼近真实分布 但这些年GAN