improved GAN Part1
来源:互联网 发布:六角碎片游戏源码 编辑:程序博客网 时间:2024/06/06 12:45
1.F-divergence:衡量P和Q有多不一样
内容有函数f要满足的条件:为什么可以满足f(1)=0、为什么可以满足Df的最小值是0(f是凸函数的条件)
举例,有哪些函数可以作为F-divergence
KL divergence就是一种F-divergence
2.Fenchel Conjugate
3.Connection with GAN
sup表示一个集合中的上确界,就是说任何属于该集合的元素都小于等于该值
但是不一定有某个元素就正好等于sup的值,只能说明该集合有上界,这是它和max的区别,一般用在无限集中比较多
相对应的下确界用inf表示
(f*)*=f
天外飞来一个D D任意挑?
继续推导
从p中sample x出来,计算D(x)的期望值
从q中sample x出来,计算F*(D(x))的期望值
目的就是计算某种f-divergence
V的定义过程,是如何定义出来的?
各式各样的divergence
4.WGAN
Wgan (distance的变化)
Wasserstein
Earth mover’s distance 推土机距离 把土P推到Q处 一维空间的距离
若P和Q分布比较复杂
把P的土铲成Q的样子,会有多种方案
不同的方法定义出来的distance会是不一样的(第二种方法舍近求远了)
采用搬土距离最小的plan
一个moving plan用一个矩阵来表示
矩阵每一个element:把P的土运送到Q处的值(量)
Row的和=P的几率(运送出去的土的量)
Column的和=Q的几率
穷举所有的plan,找出最小的B
目标是使得Pg和Pdata重合(多次迭代)
例子说明:
JS divergence经迭代并没有越来越小
Earth mover’s distance越来越小,所以训练的时候会往后面收敛
D一定要是1-Lipschitz的一员
1-Lipschitz:输出的变化相对于输入的变化不会太大:绿色的那个是
为什么需要1-Lipschitz function的限制
下面的例子:Earth mover’s distance是d ,如果没有这个限制,实现目标函数的max,会是D(x1)=+无穷大and D(x2)=-无穷大
二元分类器(右下图):绿色:learn的时候容易,梯度值不为0
如何求解optimization?
有了1-Lipschitz的限制,不能单纯用gradient 拉格朗日方法求解,这个是非凸优化,只能用迭代的方法求解,无法一步找到最优解,拉格朗日的条件是以变量的不等式形式表示的,但是这里是对某个函数进行约束
5.improved WGAN
1-Lipschitz function的变化不能太大,D(x) 对 x的梯度值的norm小于1
加入penalty项 ,norm大于1的时候才有penalty
使得找出来的function不一定满足但是会倾向于满足D(x) 对 x的梯度值的norm小于1 的条件
对所有的x做积分不行,所有从所有的x中sample出一部分样本,x~Ppenalty,如何sample:
先从Pdata中sample出一个点,从Pg中sample出一个点,再从两点连线中间sample出一个点即可,为什么这样sample:论文说这样的实验结果是好的为什么是好的:因为train的过程中是使得Pg向着Pdata靠拢,所以只有蓝色部分的gradient是重要的,所以只对这一部分的gradient加以限制
更近一步,improved WGAN真正做的事情,它不是取一个max,它是希望gradient接近1:
因为我们希望红色部分的D(x)越大越好,黄色部分的D(x)越小越好,那么蓝色部分的gradient越大越陡越好,那么就越接近1越好
- improved GAN Part1
- 李宏毅深度学习-Improved GAN
- 从传统GAN到improved WGAN
- <纯干货-2>生产对抗网络GAN视频教程-part1
- gan
- GAN
- GAN
- GAN
- GAN
- GAN
- GAN
- GAN
- GAN
- part1
- PART1
- PART1
- improved mergesort
- Improved RMQ
- SharedPreferences工具类
- android+测试基础
- 微信支付 java 服务端demo (v3版本app支付 springMVC框架中)
- Javase—异常处理
- ThreadPoolExecutor源码分析
- improved GAN Part1
- 双核浏览器默认使用ie模式打开(兼容模式)
- centos7(三节点)搭建ceph环境
- MyBatis通用dao和通用service
- ANR分析思路简析
- maven项目中,lib包下的jar发布后不会到tomcat项目下的路径解决方案
- 事件分发机制(转自一个大神,语言精练,分析到位。喜欢)
- 【caffe】matcaffe报错:Check failed: status == CUDNN_STATUS_SUCCESS (4 vs. 0) CUDNN_STATUS_INTERNAL_ERRO
- 关于class你需要知道的(RN相关基础知识) es6/es7