GAN:ImprovedGAN-训练GAN的改进策略

论文:https://arxiv.org/abs/1606.03498

代码:https://github.com/openai/improved_gan

发表:NIPS 2016

一、文章创新

1:Feature matching:特征匹配通过为生成器指定新目标来解决GANs的不稳定性,从而防止其在当前鉴别器上过度训练。以前是直接最大化鉴别器的输出。现在是要求生成器生成的数据要能匹配真实数据的统计信息。具体来说,生成网络产生的图片经过判别网络后的中间层的feature 和真实图片经过判别网络的feature尽可能相同。判别网络仍按照原来的方式训练。

2:Minibatch discrimination: 文章指出,GAN很容易导致模式坍塌(mode collapse),也即生成器生成的结果单一(或者说不管随机变量z输入什么,输出的结果都一样)。这是因为辨别器在辨别的时候是对单个样本进行辨别(对每个输入均给出一个0-1的分数),没有考虑样本之间的关系,所以容易造成模式坍塌。

这块理解不是很透彻,可以参考:ImprovedGAN:Improved Techniques for Training GANs - 知乎

 

3Historical averaging: 

生成器和辨别器的损失加上一项。其实就是对模型进一段时刻内的参数做了个平均,防止模型的参数变化太过剧烈。

 4One-sided label smoothing: 

标签平滑(label smoothing)方法最开始在1980s就提出过,它在分类问题上具有非常广泛的应用,主要是为了解决过拟合问题。这个方法是将分类器的判别结果0和1替换为平滑值:如0.1和0.9,标签平滑可以减少神经网络对对抗样本的脆弱性。

为什要单侧?

参考1:GAN的优化(七):几个训练小技巧 - 知乎

参考2: 对抗生成网络GANs的一些见解(二)_单侧标签平滑 gan-CSDN博客

具体怎么实现?

 

  5:Virtual batch normalization: 

DCGAN使用了BN,取得了不错的效果。但是BN有个缺点,即BN会时G网络生成一个batch的图片中,每张图片都有相关联(如,一个batch中的图片都有比较多的绿色)。

了避免这个问题,作者提出了一种新的bn方法,叫做virtual batch normalization。首先从训练集中拿出一个batch在训练开始前固定起来,算出这个特定batch的均值和方差,进行更新训练中的其他batch。VBN的缺点也显而易见,就是需要更新两份参数,比较耗时。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/178092.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

亚马逊低价产品广告怎么打?亚马逊造成成本高的原因——站斧浏览器

亚马逊低价产品广告怎么打? 设置合适的出价:在低价自动广告中,设置适当的出价是关键。过高的出价可能导致广告成本过高,而过低的出价可能使广告曝光度不足。可以根据产品的竞争情况和预算来调整出价,找到一个平衡点。…

React自定义 Hook

自定义 Hook 面向初学者的React自定义Hook问题: 1、什么是自定义Hook? 自定义Hook是React 16.8版本中引入的新特性,让你在不编写class的情况下使用state以及其他的React特性。 自定义Hook是一种自定义函数,它封装了React Hook的…

Mysql更新varchar存储的Josn数据

Mysql更新varchar存储的Josn数据 记录一次mysql操作varchar格式存储的json字符串数据 1、检查版本 -- 版本5.7以上才可以能执行json操作 select version(); 2、创建测试数据 -- 创建测试表及测试数据 CREATE TABLE test_json_table AS SELECT UUID(), {"test1": …

详解HTTP协议(介绍--版本--工作过程--Fiddler 抓包显示--请求响应讲解)

目录 一.HTTP协议的介绍 1.1HTTP是什么? 1.2HTTP版本的演变 二.HTTP的工作过程 三.使用Fiddler抓包工具 3.1简单讲解Fiddler 3.2Fiddler工作的原理 3.3抓包结果分析 四.HTTP请求 4.1认识URL 4.2关于URL encode 4.3认识方法 4.3.1认识get和post 4.3.…

Docker 安装kafka 并创建topic 进行消息通信

Apache Kafka是一个分布式流处理平台,用于构建高性能、可扩展的实时数据流应用程序。本文将介绍如何使用Docker容器化技术来安装和配置Apache Kafka。 一、使用镜像安装 1、kafka安装必须先安装Zookpper 2、下载镜像 docker pull wurstmeister/kafka 3、查看下载…

揭秘!9个月完成亚运会的整体数字化观测

项目背景与业务场景 2023 第 19 届亚运会在杭州举办,这将提高杭州的国际知名度,促进杭州经济、社会的全面发展,并将进一步推动奥林匹克运动在中国的发展,并且提升杭州城市形象和国际影响力。为亚运村村民提供便捷周到的服务和丰富…

分享几个可以免费使用GPT的网站

ChatGPT这个是国产的,里面可以使用3.5和4.0,免费用户每日都有各自的使用次数,反应迅速。文言一心国内百度的chart8新用户200次,但只能用3.5,响应速度有点慢 各有优缺点,大家看个人情况使用,个人…

不确定度校准和可靠性图简介

图片来源 项杰 一、说明 不确定性校准是机器学习中最容易被误解的概念之一。它可以概括为这个简单的问题:“鉴于上述下雨的可能性,您是否带伞?” 我们在日常生活中使用主观概率和不确定性校准的概念,但没有意识到它们。对于不确定…

第四节HarmonyOS 熟知开发工具DevEco Studio

一、设置主体样式 默认的代码主题样式是黑暗系的,如下图所示: 如果你不喜欢,可以按照一下步骤进行修改: 左上角点击Flie->Settings->Appearance&Behavior->Appearance,点击Theme,在弹出的下拉…

XXDD——UUII(交互设计)

今天我们再次回到Adobe全家桶的怀抱,今天介绍的这一位成员,是最直接帮助大家进行平面交互式设计的软件。他就是XD~ Adobe XD全称Adobe Experience Design CC, 官方版跨平台支持Win10 与 macOS,并且所有用户均可免费下载使用。Adob…

Linux fork笔试练习题

1.打印结果&#xff1f; #include <stdio.h> #include <unistd.h> #include <stdlib.h>int main() {int i0;for(;i<2;i){fork();printf("A\n");}exit(0); } 结果打印 A A A A A A 2.将上面的打印的\n去掉,结果如何? printf("…

解决No module named pip问题

pip更新指令&#xff1a;python -m pip install --upgrade pip输入运行后如果出现错误“no module named pip”&#xff0c;则运行以下指令&#xff1a;python -m ensurepipeasy_install pip然后再执行&#xff1a;python -m pip install --upgrade pip

Java小游戏 王者荣耀

GameFrame类 所需图片&#xff1a; package 王者荣耀;import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.File; import java.util.ArrayLis…

Linux处理文本常见命令

目录 1 vim 2 echo 3 tee 4 cat 1 vim 编辑文本类的内容&#xff0c;使用的时候 vim [文件名]&#xff0c;比如 vim A.txt 进入vim界面后&#xff0c;按i可以开启编辑模式&#xff0c;按ESC可以关闭编辑模式&#xff0c;关闭编辑模式后:wq!保存并退出 2 echo ech…

1052 Linked List Sorting (巨坑题)

题意&#xff1a;以address,val,next_address的形式给定一个链表&#xff0c;同时给定头节点的address&#xff0c;求将该链表排序后的形式。 pat拿分简单&#xff0c;但是拿要高分确实难。。 坑点一&#xff1a;有的结点不在该链表上&#xff0c;需要遍历一遍链表排除掉。&a…

20.什么是bean装配?

什么是bean装配&#xff1f; 装配&#xff0c;或bean 装配是指在Spring 容器中把bean组装到一起&#xff0c;前提是容器需要知道bean的依赖关系&#xff0c;如何通过依赖注入来把它们装配到一起。 额外扩展 Bean中主要包含三种装配方式&#xff0c;分别为 基于XML的装配基于…

PTA: 螺旋矩阵

题目 所谓“螺旋矩阵”&#xff0c;是指对任意给定的N&#xff0c;将1到NN的数字从左上角第1个格子开始&#xff0c;按顺时针螺旋方向顺序填入NN的方阵里。本题要求构造这样的螺旋方阵。 格式 输入格式: 输入在一行中给出一个正整数N&#xff08;<10&#xff09;。 输出…

【C语言加油站】函数栈帧的创建与销毁 #保姆级讲解

函数栈帧的创建与销毁 导言一、计算机硬件1.冯•诺依曼机基本思想2.冯•诺依曼机的特点&#xff1a;3.存储器3.1 分类3.2 内存的工作方式3.3 内存的组成 4.寄存器4.1 基本含义4.2 寄存器的功能4.3 工作原理4.4 分类4.4.1 通用寄存器组AX(AH、AL)&#xff1a;累加器BX(BH、BL)&a…

Git——Git应用入门

将会介绍以下知识&#xff1a; 搭建Git环境和创建Git版本库&#xff08;init、clone&#xff09;。文件添加、状态检查、创建注释和查看历史记录。与其他Git版本库交互&#xff08;pull、push&#xff09;。解决合并冲突。创建分支列表、列表切换和合并。创建标签。 1、版本控…

AI技术如何助力实现智慧交通

人工智能的常见优势在于能够实时、高效地分析处理大量的数据&#xff0c;并结合算法模型提供个性化、专业化的服务。在智慧交通方面&#xff0c;人工智能同样可以发挥专长&#xff0c;助力打造智能高效的交通运输网络&#xff0c;本篇就为大家简单介绍一下AI技术如何促进智慧交…