(2017|ICLR,EBGAN,AE 鉴别器,正则化)基于能量的 GAN

Energy-based Generative Adversarial Network

公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群)

目录

0. 摘要

2. EBGAN 模型

2.1 目标函数

2.2 解决方案的最优解

2.3 使用自动编码器

2.3.1 与正则化自动编码器的关联

2.4 排斥正则化器

4. 实验


0. 摘要

我们介绍了 “基于能量的生成对抗网络” 模型(EBGAN)该模型将鉴别器视为一个能量函数,该函数为数据流形附近的区域分配低能量,而为其他区域分配更高的能量。与概率型 GAN 类似,生成器被训练以生成具有最小能量的对比样本,而鉴别器被训练来为这些生成的样本分配高能量。将鉴别器视为能量函数允许使用各种架构和损失函数,除了通常的具有逻辑输出的二元分类器之外。其中,我们展示了 EBGAN 框架的一种实例,使用自动编码器架构代替了鉴别器,其中能量是重构误差。我们展示了这种形式的 EBGAN 在训练期间表现比常规 GAN 更稳定。我们还展示了可以训练单一尺度的架构以生成高分辨率图像。

代码:https://github.com/1Konny/EBGAN-pytorch

2. EBGAN 模型

设 p_data 为生成数据集的概率密度。生成器 G 被训练以从随机向量 z(例如,从已知分布 p_z ~ N(0,1) 中抽样)生成样本 G(z),例如一张图像。鉴别器 D 接受真实或生成的图像,并相应地估计能量值 E ∈ R,如后文所述。为简单起见,我们假设 D 产生非负值,但只要这些值在下限有界,分析仍然成立。

2.1 目标函数

鉴别器的输出通过一个目标函数,以塑造能量函数,为真实数据样本分配低能量,为生成的(“伪造的”)样本分配高能量。在这项工作中,我们使用一个边缘损失,但正如 LeCun 等人(2006年)中所解释的,还有许多其他选择。与概率 GAN(Goodfellow等人,2014年)中所做的类似,我们使用两种不同的损失,一种用于训练 D,另一种用于训练 G,以便在生成器远离收敛时获得更好的质量梯度。

给定正边界(margin) m,数据样本 x 和生成样本 G(z),鉴别器损失 L_D 和生成器损失 L_G 定义为:

其中 [·]+ = max(0,·)。将 LG 相对于 G 的参数最小化类似于最大化 LD 的第二项。当 D(G(z)) 大于等于 m 时,它具有相同的最小值,但是在这种情况下梯度是非零的。

2.2 解决方案的最优解

在这一部分中,我们对第 2.1 节中提出的系统进行理论分析。我们展示,如果系统达到纳什均衡,那么生成器 G 生成的样本与数据集的分布不可区分。 本节在非参数设置中完成,即我们假设 D 和 G 具有无限容量。

给定生成器 G,令 p_G 为 G(z) 的密度分布,其中 z ~ p_z。换句话说,p_G 是由 G 生成的样本的密度分布。

我们定义

我们训练鉴别器 D 以最小化 V,生成器 G 以最小化 U。 系统的纳什均衡是一个满足以下条件的对(G*,D*):

定理1. 如果 (G*,D*) 是系统的纳什均衡,那么几乎处处 p_G* = p_data ,并且 V(G*,D*) = m。

(结合公式 1、2 和积分公式推导获得,证明见原文)

定理2. 该系统存在一个纳什均衡,其特征为(a) p_G* = p_data(几乎处处),以及(b) 存在常数 γ ∈ [0,m],使得 D*(x) = γ (几乎处处)。

2.3 使用自动编码器

在我们的实验中,鉴别器D被构建为一个自动编码器:

EBGAN 模型的自动编码器鉴别器的图表如图 1 所示。选择自动编码器作为 D 可能乍一看似乎是任意的,然而我们假设这在概念上比二元逻辑网络更具吸引力:

  • 与使用单个目标信息训练模型的二元逻辑损失不同,基于重构的输出为鉴别器提供了多样的目标。使用二元逻辑损失,只有两个目标是可能的,因此在一个小批量内,对应于不同样本的梯度很可能远离正交。这导致训练效率低下,并且在当前硬件上通常无法减小小批量大小。另一方面,重构损失可能会在小批量内产生非常不同的梯度方向,允许更大的小批量大小而不损失效率。
  • 自动编码器传统上用于表示基于能量的模型,并且自然产生。在使用一些正则化项进行训练时(参见第 2.3.1 节),自动编码器具有学习能量流形的能力,而无需监督或负样本。这意味着即使 EBGAN 自动编码模型被训练用于重构真实样本,鉴别器也通过自身发现数据流形。相反,没有来自生成器的负样本,用二元逻辑损失训练的鉴别器变得无意义。

2.3.1 与正则化自动编码器的关联

在训练自动编码器时的一个常见问题是模型可能学到的仅仅是一个恒等函数,这意味着它为整个空间分配了零能量。为了避免这个问题,必须推动模型对数据流形之外的点给予更高的能量。理论和实验结果通过对潜在表示进行正则化来解决了这个问题(Vincent 等人,2010;Rifai等人,2011;MarcAurelio Ranzato&Chopra,2007;Kavukcuoglu等人,2010)。 这些正则化器旨在限制自动编码器的重构能力,使其只能为输入点的较小部分分配低能量。

我们认为 EBGAN 框架中的能量函数(鉴别器)也被视为通过生成对比样本的生成器进行正则化,鉴别器应该为其赋予高重构能量。我们进一步认为,从这个角度来看,EBGAN 框架允许更大的灵活性,因为:(i)正则化器(生成器)是完全可训练的,而不是手工制作的;(ii)对抗性训练范式使产生对比样本和学习能量函数的二元性之间的直接交互成为可能。 

2.4 排斥正则化器

我们提出了一个 “排斥正则化器”,它很好地适应 EBGAN 自动编码器模型,有意地阻止模型生成聚集在 p_data 的一个或仅有几个模式中的样本。 另一种技术 “小批量鉴别” 由Salimans等人(2016)从相同的哲学中发展而来。

实施排斥正则化器涉及一个在表示级别运行的 “拉开项”(Pulling-away Term,PT)。形式上,让 S ∈ R^(s x N) 表示从编码器输出层获取的一批样本表示。让我们将 PT 定义为:

PT 在一个小批量上运行,并试图使成对的样本表示正交化。它受到之前工作的启发,该工作展示了类似于自动编码器的模型中编码器的表示能力,如 Rasmus 等人(2015)和 Zhao 等人(2015)。选择余弦相似度而不是欧氏距离的原因是使该项在下有界且对尺度不变。我们使用 “EBGAN-PT” 来指代使用该项训练的 EBGAN 自动编码器模型。请注意,PT 用于生成器损失而不是鉴别器损失。 

4. 实验

 

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

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

相关文章

Android Button background 失效

问题 Android Button background 失效 详细问题 笔者开发Android项目&#xff0c;期望按照 android:background中所要求的颜色展示。 实际显示按照Android 默认颜色展示 解决方案 将xml的Button 组件修改为<android.widget.Button> 即将代码 <Buttonandroid:l…

RCS-YOLO复现

复现结果–Precision&#xff1a;0.941&#xff0c;Recall&#xff1a;0.945&#xff0c;AP 50 _{50} 50​&#xff1a;0.941&#xff0c;AP 50 : 95 _{50:95} 50:95​&#xff1a;0.693&#xff0c;误差在5个点内&#xff0c;可以接受 感想 第5篇完全复现的论文

Facebook与全球文化:多元化视角下的社交体验

在数字时代的今天&#xff0c;Facebook如一座横跨全球的桥梁&#xff0c;将人们从世界各地连接在一起。这个社交媒体平台已经不仅仅是一个在线社交的工具&#xff0c;更是一个全球化时代的文化交汇点。本文将深入研究Facebook在全球文化中的作用&#xff0c;以及它如何在多元文…

[python] 过年燃放烟花

目录 新年祝福语 一、作品展示 二、作品所用资源 三、代码与资源说明 四、代码库 五、完整代码 六、总结 新年祝福语 岁月总是悄然流转&#xff0c;让人感叹时间的飞逝&#xff0c;转眼间又快到了中国传统的新年&#xff08;龙年&#xff09;。 回首过去&#xf…

AUTOSAR内存篇 -EEPROM Abstraction(EA)

文章目录 功能介绍一般行为寻址机制和分段地址计算擦/写次数限制“立即” 数据的处理管理块一致性信息总结本文介绍关于EEPROM Abstraction相关的内容。下图所示为内存硬件抽象层的模块架构图。 EEPROM抽象(EA)从器件特定的寻址方案和分段中抽象出来,并为上层提供虚拟寻址方…

C++进阶--搜索二叉树

概念 搜索二叉树是一种特殊的二叉树&#xff0c;其具有以下特点&#xff1a; 1.对于每个结点&#xff0c;它的左子树中的所有节点的值都小于该节点的值&#xff0c;而右子树中的所有节点的值都大于该节点的值。 2.左子树和右子树都是搜索二叉树。 这个 特性使得搜索二叉树可…

PyTorch的10个基本张量操作

PyTorch是一个基于python的科学计算包。它的灵活性允许轻松集成新的数据类型和算法&#xff0c;并且框架也是高效和可扩展的&#xff0c;下面我们将介绍一些Pytorch的基本张量操作。 Tensors 张量Tensors是一个向量&#xff0c;矩阵或任何n维数组。这是深度学习的基本数据结构…

C语言贪吃蛇详解

个人简介&#xff1a;双非大二学生 个人博客&#xff1a;Monodye 今日鸡汤&#xff1a;人生就像一盒巧克力&#xff0c;你永远不知道下一块是什么味的 C语言基础刷题&#xff1a;牛客网在线编程_语法篇_基础语法 (nowcoder.com) 一.贪吃蛇游戏背景 贪吃蛇是久负盛名的游戏&…

图解报文网关:一种低代码报文网关的创新设计

所有的支付系统都对接了很多的外部支付、流出、外汇等各种类型的渠道&#xff0c;这些渠道的接口和报文格式各异。今天和大家一起聊聊如何实现一种简洁高效的低代码报文网关设计&#xff0c;主要包括&#xff1a;报文网关的定位&#xff0c;三种形态&#xff0c;低代码报文网关…

ClickHouse时区

clickhouse数据库的时间是UTC时间。服务器默认的是上海时间。 sudo vim /etc/clickhouse-server/config.xml clickhouse默认的时区是注释的就是UTC时间 %F 表示日期&#xff0c;格式为 YYYY-MM-DD。%T 表示时间&#xff0c;格式为 HH:MM:SS。 因此&#xff0c;formatDateT…

uniapp设置不显示顶部返回按钮

一、pages文件中&#xff0c;在相应的页面中设置 "titleNView": {"autoBackButton": false} 二、对应的页面文件设置隐藏元素 document.querySelector(.uni-page-head-hd).style.display none

leetcode(滑动窗口)3.无重复字符的最长字串(C++详细题解)DAY2

文章目录 1.题目示例提示 2.解答思路3.实现代码结果 4.总结 1.题目 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 示例 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”&#xff0c;所以其长度为 3。 示…

开发大佬为什么都不喜欢关电脑?

引言 在平时工作中&#xff0c;咱们程序员这一群体往往展现出一些特有的行为习惯&#xff0c;其中之一便是不喜欢频繁地关闭电脑、拒绝关机、长久待机、特别是苹果的机器。 下面从技术分析与用户行为研究的角度出发&#xff0c;将深入探讨程序员倾向于保持电脑开机状态的原因…

Git的一些基本操作

初始git 我们给出下面的一个场景&#xff0c;在大学里&#xff0c;一些老师在我们做完实验之后喜欢让我们交实验报告&#xff0c;假设我们有一个比较追求完美的老师和一个勤奋的学生&#xff0c;这个学生叫做小帅&#xff0c;那天小帅桑勤奋的完成实验报告&#xff0c;在第二天…

关于函数接口的认识和学习

1.复习拷贝文件的流程&#xff1a; a.打开文件&#xff1a;fopen b.文件的读写&#xff1a;fgetc/fputc/fgets/fputs c.关闭文件&#xff1a;fclose 注意&#xff1a;全缓存的缓存区大小为4k&#xff0c;所以定义了一个4096字节的char数组。打开两个目标文件和源文件&#xff0…

大厂设计师亲授:PS 中文设置技巧

Photoshop是Adobe开发的图像处理软件&#xff0c;也是市场上最受欢迎的图像处理软件之一。然而&#xff0c;对于一些不熟悉英语的用户来说&#xff0c;Photoshop的默认语言设置可能会成为使用的障碍。那么&#xff0c;如何将Photoshop设置为中文呢&#xff1f;以下是多个角度的…

day21 图像标签、链接标签

文章目录 图像标签链接标签1.文本超链接2.图像超链接3.页面间链接4.锚链接5.功能性链接 图像标签 常见的图像格式 JPGGIFPNGBMP… <img src"path" alt"text" title"text" width"x" height"y"/>src【必填】&#xff…

前端使用pdf.js进行pdf文件预览的第二种方式:Viewer.html

背景 最近需要实现一个PDF文档预览的功能&#xff0c;按理说&#xff0c;如果只是简单的预览&#xff0c;使用<embed>、<object>等就可以实现。 但是&#xff0c;我们的需求要实现搜索&#xff01;而且&#xff0c;文档还都超大&#xff0c;均300页以上。那<e…

###C语言程序设计-----C语言学习(9)#函数基础

前言&#xff1a;感谢您的关注哦&#xff0c;我会持续更新编程相关知识&#xff0c;愿您在这里有所收获。如果有任何问题&#xff0c;欢迎沟通交流&#xff01;期待与您在学习编程的道路上共同进步。 一. 基础知识的学习 1.函数的定义 函数是一个完成特定工作的独立程序模块&…

Stable Diffusion 模型下载:国风3 GuoFeng3

文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八案例九案例十推荐提示词下载地址模型介绍 欢迎使用GuoFeng3模型 - 这是一个中国华丽古风风格模型,也可以说是一个古风游戏角色模型,具有2.5D的质感。 条目内