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的缺点也显而易见,就是需要更新两份参数,比较耗时。
 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

富富集网络图绘制教程

本期教程 前言 今天学习aPEAR包,绘制KEGG和GO功能富集网络图,用起来还是比较方便的,直接将clusterProfiler富集结果进行绘制,对人类、动物等分析结果非常方便。对于模式植物,使用自己制作的GO或KEGG背景文件进行富集分…

Python能否成为大型游戏开发的利器?

你是否曾想过,Python这个备受欢迎的编程语言是否能够胜任大型游戏开发的重任?Python以其简洁、易学的特点而著称,但在游戏世界中,性能和效率常常是关键。小编将带你深入探讨Python在大型游戏开发中的潜力,一探究竟&…

【Unity细节】为什么加载精灵图集直接导致Unity引擎崩溃

👨‍💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 😶‍🌫️收录于专栏:unity细节和bug 😶‍🌫️优质专栏 ⭐【…

立即修复计算机显示msvcp110.dll丢失问题!4个快速解决方法大揭秘

在计算机使用过程中,我们可能会遇到一些错误提示,其中之一就是“msvcp110.dll丢失”。这个错误通常会导致某些程序无法正常运行,给用户带来诸多不便。那么,当我们遇到这个问题时,应该如何进行修复呢?本文将…

数据仓库建模下篇

在实际业务中,给了我们一堆数据,我们怎么拿这些数据进行数仓建设呢,数仓工具箱作者根据自身多年的实际业务经验,给我们总结了如下四步。 数仓工具箱中的维度建模四步走: 维度建模四步走 这四步是环环相扣&#xff0c…

latex中$$中的字母不显示斜体【已解决】

最近在用latex写论文,其中一篇论文的方法名带有平方,但是当我写方法名的时候发现字母名称是斜体的,如下图所示 引用的论文中FedME这几个字显然不是斜体,最后修改完的图片如下图所示 代码如下所示 /非斜体代码 $\text{FedME}^{2}$…

怎么把dwg格式转换pdf?

怎么把dwg格式转换pdf?DWG是一种由AutoCAD开发的二维和三维计算机辅助设计(CAD)文件格式,它的名称是“绘图(Drawing)”的缩写。DWG文件通常包含了设计图纸、模型和元数据等信息,并且被广泛用于工…

利用STM32和蓝牙模块构建智能物联网设备的开发指南

智能物联网设备在现代生活中扮演着重要的角色,而STM32微控制器和蓝牙模块则为实现智能物联网设备提供了基础支持。本文将介绍如何使用STM32微控制器和蓝牙模块构建智能物联网设备的开发指南,包括硬件设计、蓝牙模块配置、传感器数据采集和云平台连接等关…

【开源威胁情报挖掘1】引言 + 开源威胁情报挖掘框架 + 开源威胁情报采集与识别提取

基于开源信息平台的威胁情报挖掘综述 写在最前面摘要1 引言近年来的一些新型网络安全威胁类型挖掘网络威胁的情报信息威胁情报分类:内、外部威胁情报国内外开源威胁情报挖掘分析工作主要贡献研究范围和方法 2 开源威胁情报挖掘框架1. 开源威胁情报采集与识别2. 开源…

Android Studio 添加so无法打包进apk问题

1.开发环境: Android Studio 2022.3.1 Patch 2 jdk 17 gradle-7.4 2.build.grade配置检查 首先查看build.gradle中是否设置sourceSets ,如果设置的话,打包的时候so是被指导libs目录下的,所有就不能把jnilibs下。 sourceSets {mai…

vue中keep-alive的使用

什么是keep-alive? keep-alive是一个内置组件,用于缓存和管理组件的状态。 当 keep-alive包裹一个组件时,这个组件的状态将会被缓存起来,而不是每次重新渲染。这在多个视图之间切换时特别有用,可以避免重复的创建和销…

RT_Thread_内核包版本与芯片包版本不一致的编译报错排查

按时间线写的,建议看完,因为中间有的步骤不必重蹈覆辙。 1、安装RT_Thread Studio、STM32F4的SDK,新建工程编译报错error: struct serial_configure has no member named flowcontrol 1.1、报错含义 结构体struct serial_configure没有flow…

导致Facebook广告投放不成功的原因

Facebook是全球最大的社交媒体平台之一,也是众多跨境卖家选择广告投放的首选平台,但也还是会有很多跨境卖家在Facebook上推广效果不佳。那么本文小编讲一下导致Facebook广告投放不成功的原因以及相应解决方法。 1、受众群体太少 Facebook有个要求就是广告…

C++:C++11新特性---右值引用

文章目录 初始化方式显示查看类型initializer_listdecltype左值引用和右值引用move左右值引用的场景 万能引用和完美转发 本篇总结C11新特性 初始化方式 C11对参数列表的初始化有了更明确的定义,可以这样进行定义 // 列表初始化 void test1() {// 旧版本int x 0…

VBA高级应用30例:Ribbon(功能区)的介绍

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以…

基于SSM的零食物语购物商城的设计与实现

基于SSM的零食物语购物商城的设计与实现 摘要:“日常网购”作为一种比传统购物更便捷的方式,越来越受到大众的欢迎和认可。因此,系统的设计和应用技术对零食购物商城网站的要求越来越高,于是本系统应运而生。基于SSM[1]的零食购物…

linux CentOS MobaXterm 通过X11 Forwarding 在本地开启图形可视化窗口

第一步 操作系统安装图形界面 X11 Forwarding dnf install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils xorg-x11-fonts-Type1 xclock第二步 修改参数,启用X11 Forwarding vim /etc/ssh/sshd_config修改参数X11Forwarding yes和X11UseLocalhost no #Al…

苹果mac屏幕投屏镜像工具AirServer2024

airserver 是什么软件?AirServer 是一款 Airplay Mac屏幕镜像应用,AirServer可以通过 mac 实时接收iPhone、iPad以及Android设备的实时屏幕画面。AirServer 可以将一个简单的大屏幕或投影仪变成一个通用的屏幕镜像接收器。在您的大屏幕上启用 AirServer …

Vue快速实践总结 · 下篇

文章目录 组件间通信方式父 --> 子通信props插槽 子 --> 父通信(自定义事件)任意组件通信全局事件总线消息订阅与发布 Vuex工作原理运行环境简单使用GettersmapState与mapGettersmapActions与mapMutations模块化 命名空间 VueRouter路由的作用与分…

什么是软件成分分析(SCA)?

来源:艾特保IT 虹科干货 | 什么是软件成分分析(SCA)? 欢迎关注虹科,为您提供最新资讯! 大家或许都发现了,开发人员愈发依赖开源代码来快速为其专有软件添加功能。据估计,开源代码占…