年轻的时候,我们爱得死去活来,可随着年岁渐长,你就会发现,爱情并不是生活的全部。
善良,努力,读书,健身,让自己变得更好才是人生最重要的事。
前言
简介:伯克利大学研究提出的使用条件对抗网络作为图像到图像转换问题的通用解决方案。图像到图像转换的问题其实也就是像素到像素(Pix2Pix)的映射问题。
Github Demo:Pix2Pix
官网:Image-to-Image Translation with Conditional Adversarial Nets
论文:Image-to-Image Translation with Conditional Adversarial Networks
前阵子很出名的DeepNude:DeepNude-an-Image-to-Image-technology
原理介绍
GAN实现原理:GAN 在结构上受博弈论中的二人零和博弈 (即二人的利益之和为零,一方的所得正是另一方的所失) 的启发,系统由一个生成器和一个判别器构成。
名词 | 说明 |
---|---|
GAN | 生成对抗网络,Generative adversarial networks。 |
Generator | 生成器,尽量去学习真实的数据分布。 |
Discriminator | 判别器,尽量正确的判别输入数据是来自真实数据还是来自生成器。 |
训练结束标准 | 当最终 D 的判别能力提升到一定程度,并且无法正确判别数据来源时,可以认为这个生成器 G 已经学到了真实数据的分布。 |
价值函数表达
V ( G , D ) = E x ∼ p d a t a ( x ) l o g D ( x ) + E z ∼ p z ( z ) l o g ( 1 − D ( G ( z ) ) ) V(G,D)=E_{x\sim p_{data}(x)}logD(x)+E_{z\sim p_{z}(z)}log(1-D(G(z))) V(G,D)=Ex∼pdata(x)logD(x)+Ez∼pz(z)log(1−D(G(z)))
参数 | 解析 |
---|---|
m i n G m a x D \underset{G}{min}\ \underset{D}{max} Gmin Dmax | 零和博弈 |
D D D | 可微判别器函数 |
G G G | 可微生成器函数 |
E E E | 数学期望 |
x ∼ p d a t a x\sim p_{data} x∼pdata | x x x服从于真实数据 d a t a data data的概率密度 |
z ∼ p z ( z ) z\sim \ p_{z}(z) z∼ pz(z) | z z z服从于初始化数据的概率密度 |
l o g D ( x ) logD(x) logD(x) | 正类的对数损失函数(正类:即能判别出x属于真实分布。) |
l o g ( 1 − D ( G ( z ) ) ) log(1-D(G(z))) log(1−D(G(z))) | 负类的对数损失函数(正类:即能判别出x属于生成分布。) |
E x ∼ p d a t a ( x ) l o g D ( x ) E_{x\sim p_{data}(x)}logD(x) Ex∼pdata(x)logD(x) | 根据正类的对数损失函数构建,取最大值则意味着令判别器 D D D在 x x x服从于 d a t a data data的概率密度时能准确预测 D ( x ) = 1 D(x)= 1 D(x)=1,即 D ( x ) = 1 w h e n x ∼ p d a t a ( x ) D(x)= 1 \ when \ x\sim p_{data}(x) D(x)=1 when x∼pdata(x)。 |
E z ∼ p z ( z ) l o g ( 1 − D ( G ( z ) ) ) E_{z\sim p_{z}(z)}log(1-D(G(z))) Ez∼pz(z)log(1−D(G(z))) | 根据负类的对数损失函数构建,企图欺骗判别器的生成器。 |
零和博弈函数表达
根据上述的价值函数,可以提出零和博弈函数。
给定生成器 G G G,由价值函数可以推导出最优判别器的表述 D G ∗ D_G^* DG∗为:
D G ∗ = a r g m a x D V ( G , D ) D_G^*=arg\underset{D}{max}V(G,D) DG∗=a