Theory behind GAN

假如要生成一些人脸图,实际上就是想要找到一个分布,从这个分布内sample出来的图片像是人脸,分布之外生成的就不像人脸。而GAN要做的就是找到这个distribution。

在GAN之前用的是Maximum Likelihood Estimation。

Maximum Likelihood Estimation(最大似然估计)

最大似然估计的思想是,假设数据的分布是 Pdata(x) ,定义一个分布为PG(x;θ) ,求得一组参数θ,使得PG(x;θ)Pdata(x) 越接近越好。具体步骤如下:

  1. Pdata(x) 中sample出一些样本;
  2. 对于sample出来的样本,可以计算出它们的likelihood;
  3. 计算总分likelihood L,并找到一组参数θ*  使得L最大。

MLE=Minimize KL Divergence

最大似然估计就相当于最小化的KL散度。

如果使用最大似然估计,采用高斯混合模型定义PG  ,生成的图片会非常模糊,现在使用generator产生PG 。优化的目标就是使PGPdata 越接近越好,即使得G* 越小越好,但是不知道PGPdata 的公式。

虽然不知道PGPdata 的公式,但是可以从这两个分布中做sample。可以用Discriminator来衡量PGPdata 的Divergence。训练出来的maxV(G,D) 就相当于JS divergence。

证明过程

要求V(G,D)的最大值,就是求 的最大值。

因为PGPdata 都是固定的,所以设为常数,然后通过求导求出最大值。

将求出的D* 回带入V(G,D),然后化简。

Generator 的训练目标就是,找到一个G* 去最小化PGPdata 之间的差异,即 ,由于不知道PGPdata 的具体公式,所以无法直接计算divergence。于是通过一个discriminator来计算两个分布之间的差异, 。所以最终优化目标为

假设已经把Generator固定住了,红点表示固定住G后的 ,也就是PGPdata  的差异。现在的目标是最小化这个差异,所以下图的三个网络中,G3 是最优秀的。

具体的做法就是:

  1. 首先固定G,找到一个能够使V最大的D;
  2. 然后固定D,找到能够使这个最大D情况下V最小的G。不停的迭代。

虽然L(G)中有求最大值,但是它依然可以做微分,即分段求微分。

具体算法如下:

  1. 给定一个G0
  2. 求解出使得V(D,G) 最大的D0*
  3. 利用梯度下降求解出G1 ;
  4. 利用G1 求解出使得V(D,G) 最大的D1* ,不断迭代。

其实在训练过程中不是真正的minimize JS散度,因为G在训练时变化时,V(D,G) 也会发生改变;此时由于D固定,所以JS散度会变得不再是此刻G下的JS散度了。所以要保证V(D,G0) 和V(D,G1)  很像,即G的参数变化很小。

Algorithm for GAN(Review

首先训练D,多训练几次直至收敛;之后训练G:其中第一项是与生成器无关的,由于G不能训练太多,否则会导致D无法evaluate JS,所以update一次就好。

  • In practice

理论上V是要取期望值,但是实际上是不可能的,只能用样本的均值进行估计。

论文原文在实作的时候把log⁡(1-D(x)) 换成-log⁡(D(x)) ,蓝色曲线刚开始的值很大,适合做梯度下降。其实后来实验证明两种结果都差不多。

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

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

相关文章

同创永益联合红帽打造一站式数字韧性解决方案

随着AI技术的快速兴起,IT技术已成为推动业务持续增长的重要驱动力,这要求企业不断尝试新事物,改变固有流程,加强IT技术与业务的合作,同时提升数字韧性能力,以实现业务目标。10月26日,红帽2023中…

Bert学习笔记(简单入门版)

目 录 一、基础架构 二、输入部分 三、预训练:MLMNSP 3.1 MLM:掩码语言模型 3.1.1 mask模型缺点 3.1.2 mask的概率问题 3.1.3 mask代码实践 3.2 NSP 四、如何微调Bert 五、如何提升BERT下游任务表现 5.1 一般做法 5.2 如何在相同领域数据中进…

学习UI第一天

在工作闲暇之余,自己画的原型图,再次做一次记录,哈哈哈 萌宠领养UI设计原型图 https://modao.cc/proto/lq2KqIVBs48xwylNZlA7OP/sharing?view_moderead_only #萌宠领养-分享 可以点击此链接,进行查看O(∩_∩)O哈哈~

二进制部署k8s集群-过程中的问题总结(接上篇的部署)

1、kube-apiserver部署过程中的问题 kube-apiserver.conf配置文件更改 2、calico的下载地址 curl https://docs.projectcalico.org/v3.20/manifests/calico.yaml -O 这里如果kubernetes的节点服务器为多网卡配置会产生报错 修改calino.yaml配置文件 解决方法: 调…

论文阅读——DiffusionDet

在目标检测上使用扩散模型 前向过程:真实框-->随机框 后向过程:随机框-->真实框 前向过程: 一般一张图片真实框的数目不同,填补到同一的N个框,填补方法可以是重复真实框,填补和图片大小一样的框&a…

Redis 学习

Redis 集群共3种集群模式: 1. 主从模式 (主写从读),写请求分配到主库,完后数据同步到从库,从库主要负责读请求 同步过程: 从库启动向主库发送同步请求,数据传输的形式是RDB文件&am…

C++算法入门练习——树的带权路径长度

现有一棵n个结点的树(结点编号为从0到n-1,根结点为0号结点),每个结点有各自的权值w。 结点的路径长度是指,从根结点到该结点的边数;结点的带权路径长度是指,结点权值乘以结点的路径长度&#x…

C语言-求一个整数储存在内存中的二进制中1的个数

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h>int main() {/*求一个整数储存在内存中的二进制中1的个数*/int number;scanf("%d", &number);int i 0;int count 0;for (i 0; i < 32; i){if (1 ((number >> i) & 1)){count;}}printf(…

CentOS 7搭建Gitlab流程

目录 1、查询docker镜像gitlab-ce 2、拉取镜像 3、查询已下载的镜像 4、新建gitlab文件夹 5、在gitlab文件夹下新建相关文件夹 6、创建运行gitlab的容器 7、查看docker容器 8、根据Linux地址访问gitlab 9、进入docker容器&#xff0c;设置用户名的和密码 10、登录git…

卫生纸标准及鉴别

一、标准分类及含义 &#xff08;1&#xff09;标准分类 ①GB——国家强制标准&#xff08;即最低标准&#xff09; ②GB/T——国家推荐标准 ③QB——轻工行业标准 ④QB/T——轻工行业推荐标准 &#xff08;2&#xff09;含义 ①国家标准是指国家标准化主管机构批准发布的。…

适用于4×4MiMo 4G/5G,支持GNSS和WiFi 6E的车载天线解决方案

德思特Panorama智能天线致力于为用户提供在各类复杂场景中稳定供给5G、WIFI和GNSS信号的卓越性能和支持。随着5G新频段逐渐应用、WIFI 6E频率升级以及多频定位应用的普及&#xff0c;传统的BAT[G]M-7-60[-24-58]系列天线已不再适用于当前多变的环境。 然而&#xff0c;BAT天线的…

分库分表

分库&#xff0c;分表&#xff0c;分库分表 “只分库“&#xff0c;“只分表“&#xff0c;“既分库又分表" 何时分库 在面对高并发的情况下&#xff0c;数据库连接成为性能瓶颈。当数据QPS过高导致数据库连接数不足时&#xff0c;考虑分库。在读多写少的场景下&#x…

c++ list容器使用详解

list容器概念 list是一个双向链表容器&#xff0c;可高效地进行插入删除元素。 List 特点&#xff1a; list不可以随机存取元素&#xff0c;所以不支持at.(position)函数与[]操作符。可以对其迭代器执行&#xff0c;但是不能这样操作迭代器&#xff1a;it3使用时包含 #includ…

信安.网络安全.UDP协议拥塞

第一部分 如何解决UDP丢包问题 一、UDP 报文格式 每个 UDP 报文分为 UDP 报头和 UDP 数据区两部分。报头由 4 个 16 位长&#xff08;2 字节&#xff09;字段组成&#xff0c;分别说明该报文的源端口、目的端口、报文长度和校验值。UDP 报文格式如图所示。 UDP 报文中每个…

开源简历生成器OpenResume

什么是 OpenResume &#xff1f; OpenResume 是一个功能强大的开源简历生成器和简历解析器。OpenResume 的目标是为每个人提供免费的现代专业简历设计&#xff0c;让任何人都能充满信心地申请工作。 OpenResume 有 5 个核心特点&#xff1a; 特征描述1. 实时UI更新当您输入简历…

技术实践|高斯集群服务器双缺省网关故障分析

导语&#xff1a;当前国产化数据库使用范围越来越广泛&#xff0c;在GaussDB数据库的使用过程中难免会遇到一些问题&#xff0c;有的问题是由于在安装过程中没有注意细节而产生的&#xff0c;多数隐患问题都是在特定场景下才会暴露出来&#xff0c;且暴露的时间未知&#xff0c…

2023年电子工程师大会暨第三届社区年度颁奖活动--【其利天下技术】

华秋电子发烧友将于2023年11月23日在深圳举办一场盛大的技术交流活动&#xff0c;即“2023年电子工程师大会暨第三届社区年度颁奖活动”。本次活动邀请了各大高校教授、企业高管、行业专家和电子工程师们齐聚一堂&#xff0c;围绕“开源硬件”、“OpenHarmony RISC-V”、“工程…

vue-pdf在vue框架中的使用

在components目录下新建PdfViewer/index.vue vue-pdf版本为4.3.0 <template><div :id"containerId" v-if"hasProps" class"container"><div class"right-btn"><div class"pageNum"><input v-m…

GPT-4充当“规划师、审计师”,颠覆性双层文生图表模型

DALL-E 3、Midjourney、Stable Diffusion等模型展现出了强大的创造能力&#xff0c;通过文本便能生成素描、朋克、3D、二次元等多种类型的高质量图片&#xff0c;但在生成科学图表&#xff08;柱状、直方、箱线、树状等&#xff09;方面却略显不足。 这是因为模型在生成图表时…

解锁安全与信任的双重礼遇!JoySSL证书买二送一,买三送二

JoySSL是业内领先的SSL证书提供商&#xff0c;致力于为网站提供最高水平的安全性。通过使用JoySSL证书&#xff0c;您的网站将获得强大的加密保护&#xff0c;确保用户的敏感信息在传输过程中得到安全加密&#xff0c;有效地抵御各种网络威胁。 为何选择JoySSL证书&#xff1f…