EZ | 生成对抗性网络 | 02

    3.对抗网络

当模型都是多层感知机时,多抗网络得到最直接的应用,未来在数据 x 上学习生成器的分布pg,我们的输入噪声变量pz(Z)上进行先验,然后将数据空间的映射表示为G(z;θg),其中的G表示为多层感知机的可微函数,我们又定义了一个多层感知机D(x;θd),它输出的是单个的标量。D(x)表示的x来自于数据而不是pg的概率。我们训练D以最大化为训练样本,将其和来自G的样本分配正确标签的概率,我们同时对G进行训练,把log(1-D(G(z)))这个式子做最小化处理。

在另一个角度上,DG扮演了MiniMax游戏中两个玩家的角色,其价值函数为V(G,D),表示如下:

\min\limits_{G} \max\limits_{D} = {\Bbb{E}}_{z~p_{data(x)}}[logD(x)]+{\Bbb{E}}_{z~p_z(z)}[log(1-D(G(z)))]\tag{1}

在下一节中,我们提出了对抗网络的理论分析,基本上,训练标准允许人们完全恢复数据的分布情况,因为DG都被给予了足够的容量,在非参数下限制下,这个方法不怎么严谨,只起到教学上的作用。可以看一下Fig.1。在实际应用时,我们必须使用迭代的数值方法来实现,在计算中,训练内循环中一直优化D是不允许的,并且,在有限的数据集上,这会导致过拟合,相反,我们在优化Dk步和优化G的一步之间交替,只要G的变化足够缓慢,D就能够保持在最优解附近。这种策略类似于SML/PCD[31,29],将马尔可夫链中的样本从一个学习步骤维持到下一个学习步骤,避免了马尔可夫链作为内循环的一部分。这一过程也在算法1中呈现出来。

Fig.1

生成对抗网络通过同时判别分布(D,蓝色,虚线)进行训练,区分来自数据生成分布(黑色,虚线)p_x的样本和生成分布的样本p_g(G)(绿色,实线),下面的水平线是从中采样z的域,在这种情况下,分布是均匀的。上方的水平线则表示x的域的一部分。向上的箭头表示映射x = G(z)如何在变换样本上增加非均匀的分布p_g,G在高密度区域会收缩,在p_g低密度区域会增长。其中(a)考虑了收敛附近的对抗对,其中对p_g类似于p_data,D则是部分精确的分类器,(b)在算法D的内循环中训练,用以区分样本和数据,收敛到D^*(x) = \frac{p_{data}(x)}{p_{data}(x)+p_g(x)}, (c)则是在更新了G之后D的梯度引导G(z)流向更有可能的区域并被归类为数据。(d)是经过几个步骤的训练之后,如果GD还有足够的容量,它们将达到两个无法继续改善的点,因为p_g = p_{data}鉴别器无法区分这两个分布,此时的D(x) = \frac{1}{2}

    4.理论成果

生成器G隐含地把概率分布p_g定义为当zp_z时获得的样本G(z)的分布。因此,如果给定足够的容量和训练时间,我们希望算法1能够收敛到p_{data}的水平。这一部分的结果在非参数的设置中完成,举个例子说我们通过研究概率密度函数空间中的收敛情况来表示具有无限容量大模型。

我们将在4.1节中展示这个Minimax博弈游戏对于p_g = p_{data} 是全局最优的解,而后,在4.2节和4.3节中,会展示算法1优化等式1,从而推导出所需要的结论。


算法1:小型的梯度下降训练,应用在判别器的步骤数k是一个超参数,在我们的试验中,我们的k = 1,这是最经济的选择。


for number of training iterations do
    for k steps do
        · Sample minibatch of m noise sample {z^{(1)}…z^{(2)} } from noise prior p_g(z).
        · Sample minibatch of m examples {x^{(1)}…x^{(2)}} from data generating distribution p_{data}(x)
        · Update the discriminator by ascending its stochastic gradient:
∇_{θ_{d}}\frac{1}{m}\sum_{i=1}^{m}[log D(x^{(i)})+log(1-D(g(z^{(i)})))]    end for
    · Sample minibatch of noise sample{z^{(1)}…z^{(2)}} from noise prior p_g(z)
    ·Update t he generator by descending its stochastic gradient:
∇_{θ_{g}}\frac{1}{m}\sum_{i=1}{m}log(1-(D(z^{(i)})))end for
The gradient-based updates can use any standard gradient-based rule.We used momentary in our experiments.


4.1p_g=p_{data}的全局最优化

我们首先考虑了对于指定的生成器G,找到一个最好的判别器D

命题1:对于给定的GD应该这么算:D^{*}_{G}(x)=\frac{p_{data}(x)}{p_{data}(x)+p_{g}(x)}\tag{2}

证明:对于给定的G,鉴别器D的训练标准就是把V(G,D)给最大化。V(G,D)=\int_x^{ }{p_{data}(x)log(D(x))}^{}dx+\int_zp_{z}(z)log(1-D(g(z)))dz\tag{}
=\int_xp_{data}log(D(x))+p_g(x)log(1-D(d))dx\tag{3}对于任何属于R^2\ {0,0} 的(a,b),函数y\to{a log(x)+b log(1-y)}达到最大值。这本判别器不需要在Supp(p_{data})Supp(p_y)
鉴别符不需要在Supp(pdata)∪Supp(pg)之外定义,结束证明。

我们还注意到,D的训练目标可以解释为最大似然估计条件概率P(Y=y|x),其中的Yx来自于p_{data}(此时y=1)或是p_g(此时y=0)。Minimax博弈游戏现在可以这样表示:C(G)=\max\limits_DV(G,D)
={\Bbb{E}}_{x~p_{data}}[logD^{*}_G(x)+{\Bbb{E}}_{z~p_x[log(a-D^{*}_G(G(z)))}]\tag{4}
={\Bbb{E}}_{x~p_{data}}[log\frac{p_{data}(x)}{P_{data}+p_{g}(x)}]+{\Bbb{E}}_{x~p_g}[log\frac{p_g(x)}{p_{data}(x)+p_g(x)}]定理1:当且仅当p_g=p_{data}时,取得全局最小值,此时C(G)值为-log(4)

证明2:对于p_g = p_{data}D^{*}_G(x) = \frac{1}{2},(考虑到式2),因此,在D^{*}_G(x) = \frac{1}{2},使用公式4,我们发现此时C(G) = log\frac{1}{2} + log\frac{1}{2} = -log4,另外,这是C(G)最佳可能的值,仅面对p_g=p_{data}时,观察:{\Bbb{E}}_{x~p_{data}}\left[-log2\right]+{\Bbb{E}}_{x~p_g}\left[-log2\right] = -log4C(G) = V(D^{*}_G,G)中减去该式,就可以得到:C(G) = -log(4) + KL\left(p_{data}\middle\|\frac{p_{data}+p_g}{2}\right)+KL\left(p_g\middle\|\frac{p_{data}+p_g}{2}\right)\tag{5}KL(Kullback-Leibler)散度,在最前面的表示式中认识到Jensen模型分布和数据生成过程之间有香农差(Shannon divergence):C(G) = -log(4) + 2 · JSD\left(p_{data}\middle\|p_g\right)\tag{6}由于两个分布之间的Jensen-Shannon差总是非负数,只有在相等时才为零,我们证明了C^{*} = -log(4)C(G)的全局最小值,只有分解在g = p_{data}上时,生成模式完美复制了演化过程。

4.2算法1的收敛性

命题2:如果GD都有足够的容量,在算法1中每一步都把鉴别器达到给定G的最佳状态,并更新p_g以改进标准:{\Bbb{E}}_{x~p{data}}\left[logD^{*}_G(x)\right] + {\Bbb{E}}_{x~p_g}\left[log(1-D^{*}_G(x))\right]然后,p_g就收敛到了p_{data}处。

证明:考虑到V(G,D) = U(p_g,D)在上述标准中作为一个p_g的函数出现,并注意到U(p_g,D)p_g处是凸的。凸函数上限还包括了函数在达到最大值点处的导数,换而言之,对于每个{\alpha},如果f(x) = suo_{a\in{\cal{A}}}f_{\alpha}(x)f_{\alpha}(x)x处是凸的,那么当\beta = arg{\;}sup_{a\in{\cal{A}}}f_{\alpha}(x),则∂f_{\beta}(x){\in}∂f。这就相当于在最佳D处计算p_g的梯度下降更新,给定相应的Gsup_{D}U(p_g,D)在{p_g}处是凸的,并具有在理论1中所证明的唯一全局最优解,因此,更新p_g足够小,而p_g收敛于p_x,证明完毕。

在实验中,对抗性网络通过函数G(z;θ_g)表示为有限的p_g分布,我们优化了θ_g而不是p_g其本身,使用多层感知机把G定义在参数空间中,引入了多个关键节点,然而,多层感知机在实验中表现出了优异的性能,这多少能表明它们的合理性(尽管在理论上不太妥贴)。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,372评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,368评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,415评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,157评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,171评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,125评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,028评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,887评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,310评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,533评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,690评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,411评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,004评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,812评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,693评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,577评论 2 353

推荐阅读更多精彩内容