日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

全新视角:用变分推断统一理解生成模型(VAE、GAN、AAE、ALI)

發(fā)布時間:2025/5/22 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 全新视角:用变分推断统一理解生成模型(VAE、GAN、AAE、ALI) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

我小學(xué)開始就喜歡純數(shù)學(xué),后來也喜歡上物理,還學(xué)習(xí)過一段時間的理論物理,直到本科畢業(yè)時,我才慢慢進入機器學(xué)習(xí)領(lǐng)域。所以,哪怕在機器學(xué)習(xí)領(lǐng)域中,我的研究習(xí)慣還保留著數(shù)學(xué)和物理的風(fēng)格:企圖從最少的原理出發(fā),理解、推導(dǎo)盡可能多的東西。這篇文章是我這個理念的結(jié)果之一,試圖以變分推斷作為出發(fā)點,來統(tǒng)一地理解深度學(xué)習(xí)中的各種模型,尤其是各種讓人眼花繚亂的 GAN。

本文已經(jīng)掛到 arXiv 上,需要讀英文原稿的可以訪問下方鏈接下載論文 Variational Inference: A Unified Framework of Generative Models and Some Revelations。

■ 論文 | Variational Inference: A Unified Framework of Generative Models and Some Revelations
■ 鏈接 | https://www.paperweekly.site/papers/2117
■ 作者 | Jianlin Su

下面是文章的介紹。其實,中文版的信息可能還比英文版要稍微豐富一些,原諒我這蹩腳的英語。

近年來,深度生成模型,尤其是 GAN,取得了巨大的成功?,F(xiàn)在我們已經(jīng)可以找到數(shù)十個乃至上百個 GAN 的變種。然而,其中的大部分都是憑著經(jīng)驗改進的,鮮有比較完備的理論指導(dǎo)。

本文的目標(biāo)是通過變分推斷來給這些生成模型建立一個統(tǒng)一的框架。首先,本文先介紹了變分推斷的一個新形式,這個新形式其實在本人以前的文章中就已經(jīng)介紹過,它可以讓我們在幾行字之內(nèi)導(dǎo)出變分自編碼器(VAE)和 EM 算法。然后,利用這個新形式,我們能直接導(dǎo)出 GAN,并且發(fā)現(xiàn)標(biāo)準(zhǔn) GAN 的 loss 實則是不完備的,缺少了一個正則項。如果沒有這個正則項,我們就需要謹(jǐn)慎地調(diào)整超參數(shù),才能使得模型收斂。

實際上,本文這個工作的初衷,就是要將 GAN 納入到變分推斷的框架下。目前看來,最初的意圖已經(jīng)達到了,結(jié)果讓人欣慰。新導(dǎo)出的正則項實際上是一個副產(chǎn)品,并且幸運的是,在我們的實驗中這個副產(chǎn)品生效了。

變分推斷新解

假設(shè) x 為顯變量,z 為隱變量,p?(x) 為 x 的證據(jù)分布,并且有:

我們希望 qθ(x) 能逼近 p?(x),所以一般情況下我們會去最大化似然函數(shù):


這也等價于最小化 KL 散度 KL(p?(x))‖q(x)):


但是由于積分可能難以計算,因此大多數(shù)情況下都難以直接優(yōu)化。

變分推斷中,首先引入聯(lián)合分布 p(x,z) 使得p?(x)=∫p(x,z)dz,而變分推斷的本質(zhì),就是將邊際分布的 KL 散度 KL(p?(x)‖q(x)) 改為聯(lián)合分布的 KL 散度 KL(p(x,z)‖q(x,z)) 或 KL(q(x,z)‖p(x,z)),而:


意味著聯(lián)合分布的 KL 散度是一個更強的條件(上界)。所以一旦優(yōu)化成功,那么我們就得到 q(x,z)→p(x,z),從而 ∫q(x,z)dz→∫p(x,z)dz=p? (x),即 ∫q(x,z)dz 成為了真實分布 p?(x) 的一個近似。

當(dāng)然,我們本身不是為了加強條件而加強,而是因為在很多情況下,KL(p(x,z)‖q(x,z)) 或 KL(q(x,z)‖p(x,z)) 往往比 KL(p?(x)‖q(x)) 更加容易計算。所以變分推斷是提供了一個可計算的方案。

VAE和EM算法

由上述關(guān)于變分推斷的新理解,我們可以在幾句話內(nèi)導(dǎo)出兩個基本結(jié)果:變分自編碼器和 EM 算法。這部分內(nèi)容,實際上在從最大似然到EM算法:一致的理解方式和變分自編碼器(二):從貝葉斯觀點出發(fā)已經(jīng)詳細介紹過了。這里用簡單幾句話重提一下。

VAE

在 VAE 中,我們設(shè) q(x,z)=q(x|z)q(z),p(x,z)=p?(x)p(z|x),其中 q(x|z),p(z|x) 帶有未知參數(shù)的高斯分布而 q(z) 是標(biāo)準(zhǔn)高斯分布。最小化的目標(biāo)是:

其中 logp?(x) 沒有包含優(yōu)化目標(biāo),可以視為常數(shù),而對 p?(x) 的積分則轉(zhuǎn)化為對樣本的采樣,從而:

因為 q(x|z),p(z|x) 為帶有神經(jīng)網(wǎng)絡(luò)的高斯分布,這時候 KL(p(z|x)‖q(z)) 可以顯式地算出,而通過重參數(shù)技巧來采樣一個點完成積分 ∫p(z|x)logq(x|z)dz 的估算,可以得到 VAE 最終要最小化的 loss:



EM算法

在 VAE 中我們對后驗分布做了約束,僅假設(shè)它是高斯分布,所以我們優(yōu)化的是高斯分布的參數(shù)。如果不作此假設(shè),那么直接優(yōu)化原始目標(biāo) (5),在某些情況下也是可操作的,但這時候只能采用交替優(yōu)化的方式:先固定 p(z|x),優(yōu)化 q(x|z),那么就有:


完成這一步后,我們固定 q(x,z),優(yōu)化 p(z|x),先將 q(x|z)q(z) 寫成 q(z|x)q(x) 的形式:

那么有:

由于現(xiàn)在對 p(z|x) 沒有約束,因此可以直接讓 p(z|x)=q(z|x) 使得 loss 等于 0。也就是說,p(z|x) 有理論最優(yōu)解:

(8),(11) 的交替執(zhí)行,構(gòu)成了 EM 算法的求解步驟。這樣,我們從變分推斷框架中快速得到了 EM 算法。

變分推斷下的GAN

在這部分內(nèi)容中,我們介紹了一般化的將 GAN 納入到變分推斷中的方法,這將引導(dǎo)我們得到 GAN 的新理解,以及一個有效的正則項。

一般框架

同 VAE 一樣,GAN 也希望能訓(xùn)練一個生成模型 q(x|z),來將 q(z)=N(z;0,I) 映射為數(shù)據(jù)集分布 p?(x),不同于 VAE 中將 q(x|z) 選擇為高斯分布,GAN 的選擇是:


其中 δ(x) 是狄拉克 δ 函數(shù),G(z) 即為生成器的神經(jīng)網(wǎng)絡(luò)。

一般我們會認(rèn)為 z 是一個隱變量,但由于 δ 函數(shù)實際上意味著單點分布,因此可以認(rèn)為 x 與 z 的關(guān)系已經(jīng)是一一對應(yīng)的,所以 z 與 x 的關(guān)系已經(jīng)“不夠隨機”,在 GAN 中我們認(rèn)為它不是隱變量(意味著我們不需要考慮后驗分布 p(z|x))。

事實上,在 GAN 中僅僅引入了一個二元的隱變量 y 來構(gòu)成聯(lián)合分布:


這里 p1=1?p0 描述了一個二元概率分布,我們直接取 p1=p0=1/2。另一方面,我們設(shè) p(x,y)=p(y|x)p?(x),p(y|x) 是一個條件伯努利分布。而優(yōu)化目標(biāo)是另一方向的 KL(q(x,y)‖p(x,y)):


一旦成功優(yōu)化,那么就有 q(x,y)→p(x,y),那么:

從而 q(x)→p?(x),完成了生成模型的構(gòu)建。

現(xiàn)在我們優(yōu)化對象有 p(y|x) 和 G(x),記 p(1|x)=D(x),這就是判別器。類似 EM 算法,我們進行交替優(yōu)化:先固定 G(z),這也意味著 q(x) 固定了,然后優(yōu)化 p(y|x),這時候略去常量,得到優(yōu)化目標(biāo)為:

然后固定 D(x) 來優(yōu)化 G(x),這時候相關(guān)的 loss 為:


這里包含了我們不知道的 p?(x),但是假如 D(x) 模型具有足夠的擬合能力,那么跟 (11) 式同理,D(x) 的最優(yōu)解應(yīng)該是:

這里的是前一階段的 q(x)。從中解出 q?(x),代入 loss 得到:


基本分析

可以看到,第一項就是標(biāo)準(zhǔn)的 GAN 生成器所采用的 loss 之一。


多出來的第二項,描述了新分布與舊分布之間的距離。這兩項 loss 是對抗的,因為希望新舊分布盡量一致,但是如果判別器充分優(yōu)化的話,對于舊分布中的樣本,D(x) 都很小(幾乎都被識別為負(fù)樣本),所以 ?logD(x) 會相當(dāng)大,反之亦然。這樣一來,整個 loss 一起優(yōu)化的話,模型既要“傳承”舊分布,同時要在往新方向 p(1|y) 探索,在新舊之間插值。

我們知道,目前標(biāo)準(zhǔn)的 GAN 的生成器 loss 都不包含,這事實上造成了 loss 的不完備。假設(shè)有一個優(yōu)化算法總能找到 G(z) 的理論最優(yōu)解、并且 G(z) 具有無限的擬合能力,那么 G(z) 只需要生成唯一一個使得 D(x) 最大的樣本(不管輸入的 z 是什么),這就是模型坍縮。這樣說的話,理論上它一定會發(fā)生。

那么,給我們的啟發(fā)是什么呢?我們設(shè):

也就是說,假設(shè)當(dāng)前模型的參數(shù)改變量為 Δθ,那么展開到二階得到:


我們已經(jīng)指出一個完備的 GAN 生成器的損失函數(shù)應(yīng)該要包含,如果不包含的話,那么就要通過各種間接手段達到這個效果,上述近似表明額外的損失約為 (Δθ?c)2,這就要求我們不能使得它過大,也就是不能使得 Δθ 過大(在每個階段 c 可以近似認(rèn)為是一個常數(shù))。

而我們用的是基于梯度下降的優(yōu)化算法,所以 Δθ 正比于梯度,因此標(biāo)準(zhǔn) GAN 訓(xùn)練時的很多 trick,比如梯度裁剪、用 adam 優(yōu)化器、用 BN,都可以解釋得通了,它們都是為了穩(wěn)定梯度,使得 θ 不至于過大,同時,G(z) 的迭代次數(shù)也不能過多,因為過多同樣會導(dǎo)致 Δθ 過大。

還有,這部分的分析只適用于生成器,而判別器本身并不受約束,因此判別器可以訓(xùn)練到最優(yōu)。

正則項

現(xiàn)在我們從中算出一些真正有用的內(nèi)容,直接對進行估算,以得到一個可以在實際訓(xùn)練中使用的正則項。直接計算是難以進行的,但我們可以用 KL(q(x,z)‖q?(x,z)) 去估算它:

因為有極限:

所以可以將 δ(x) 看成是小方差的高斯分布,代入算得也就是我們有:


所以完整生成器的 loss 可以選為:


也就是說,可以用新舊生成樣本的距離作為正則項,正則項保證模型不會過于偏離舊分布。

下面的兩個在人臉數(shù)據(jù) CelebA 上的實驗表明這個正則項是生效的。實驗代碼修改自:

https://github.com/LynnHo/DCGAN-LSGAN-WGAN-WGAN-GP-Tensorflow

實驗一:普通的 DCGAN 網(wǎng)絡(luò),每次迭代生成器和判別器各訓(xùn)練一個 batch。

▲ 不帶正則項,在25個epoch之后模型開始坍縮

▲ 帶有正則項,模型能一直穩(wěn)定訓(xùn)練

實驗二:普通的 DCGAN 網(wǎng)絡(luò),但去掉 BN,每次迭代生成器和判別器各訓(xùn)練五個 batch。

▲ 不帶正則項,模型收斂速度比較慢



▲ 帶有正則項,模型更快“步入正軌”

GAN相關(guān)模型

對抗自編碼器(Adversarial Autoencoders,AAE)和對抗推斷學(xué)習(xí)(Adversarially Learned Inference,ALI)這兩個模型是 GAN 的變種之一,也可以被納入到變分推斷中。當(dāng)然,有了前述準(zhǔn)備后,這僅僅就像兩道作業(yè)題罷了。

有意思的是,在 ALI 之中,我們有一些反直覺的結(jié)果。

GAN視角下的AAE

事實上,只需要在 GAN 的論述中,將 x,z 的位置交換,就得到了 AAE 的框架。

具體來說,AAE 希望能訓(xùn)練一個編碼模型 p(z|x),來將真實分布 q?(x) 映射為標(biāo)準(zhǔn)高斯分布 q(z)=N(z;0,I),而:


其中 E(x) 即為編碼器的神經(jīng)網(wǎng)絡(luò)。

同 GAN 一樣,AAE 引入了一個二元的隱變量 y,并有:

同樣直接取 p1=p0=1/2。另一方面,我們設(shè) q(z,y)=q(y|z)q(z),這里的后驗分布 p(y|z) 是一個輸入為 z 的二元分布,然后去優(yōu)化 KL(p(z,y)‖q(z,y)):

現(xiàn)在我們優(yōu)化對象有 q(y|z) 和 E(x),記 q(0|z)=D(z),依然交替優(yōu)化:先固定 E(x),這也意味著 p(z) 固定了,然后優(yōu)化 q(y|z),這時候略去常量,得到優(yōu)化目標(biāo)為:


然后固定 D(z) 來優(yōu)化 E(x),這時候相關(guān)的 loss 為:

利用 D(z) 的理論最優(yōu)解,代入 loss 得到:


一方面,同標(biāo)準(zhǔn) GAN 一樣,謹(jǐn)慎地訓(xùn)練,我們可以去掉第二項,得到:

另外一方面,我們可以得到編碼器后再訓(xùn)練一個解碼器 G(z),但是如果所假設(shè)的 E(x),G(z) 的擬合能力是充分的,重構(gòu)誤差可以足夠小,那么將 G(z) 加入到上述 loss 中并不會干擾 GAN 的訓(xùn)練,因此可以聯(lián)合訓(xùn)練:

反直覺的ALI版本

ALI 像是 GAN 和 AAE 的融合,另一個幾乎一樣的工作是 Bidirectional GAN (BiGAN)。相比于 GAN,它將 z 也作為隱變量納入到變分推斷中。具體來說,在 ALI 中有:


以及 p(x,z,y)=p(y|x,z)p(z|x)p?(x),然后去優(yōu)化 KL(q(x,z,y)‖p(x,z,y)):


等價于最小化:

現(xiàn)在優(yōu)化的對象有 p(y|x,z),p(z|x),q(x|z),記 p(1|x,z)=D(x,z),而 p(z|x) 是一個帶有編碼器E的高斯分布或狄拉克分布,q(x|z) 是一個帶有生成器 G 的高斯分布或狄拉克分布。依然交替優(yōu)化:先固定 E,G,那么與 D 相關(guān)的 loss 為:


跟 VAE 一樣,對 p(z|x) 和 q(x|z) 的期望可以通過“重參數(shù)”技巧完成。接著固定 D 來優(yōu)化 G,E,因為這時候有 E 又有 G,整個 loss 沒得化簡,還是 (37) 那樣。但利用 D 的最優(yōu)解:


可以轉(zhuǎn)化為:


由于 q(x|z),p(x|z) 都是高斯分布,事實上后兩項我們可以具體地算出來(配合重參數(shù)技巧),但同標(biāo)準(zhǔn) GAN 一樣,謹(jǐn)慎地訓(xùn)練,我們可以簡單地去掉后面兩項,得到:


這就是我們導(dǎo)出的 ALI 的生成器和編碼器的 loss,它跟標(biāo)準(zhǔn)的 ALI 結(jié)果有所不同。標(biāo)準(zhǔn)的 ALI(包括普通的 GAN)將其視為一個極大極小問題,所以生成器和編碼器的 loss 為:

或:


它們都不等價于 (41)。針對這個差異,事實上筆者也做了實驗,結(jié)果表明這里的 ALI 有著和標(biāo)準(zhǔn)的 ALI 同樣的表現(xiàn),甚至可能稍好一些(可能是我的自我良好的錯覺,所以就沒有放圖了)。這說明,將對抗網(wǎng)絡(luò)視為一個極大極小問題僅僅是一個直覺行為,并非總應(yīng)該如此。

結(jié)論綜述

本文的結(jié)果表明了變分推斷確實是一個推導(dǎo)和解釋生成模型的統(tǒng)一框架,包括 VAE 和 GAN。通過變分推斷的新詮釋,我們介紹了變分推斷是如何達到這個目的的。

當(dāng)然,本文不是第一篇提出用變分推斷研究 GAN 這個想法的文章。在《On Unifying Deep Generative Models》一文中,其作者也試圖用變分推斷統(tǒng)一 VAE 和 GAN,也得到了一些啟發(fā)性的結(jié)果。但筆者覺得那不夠清晰。事實上,我并沒有完全讀懂這篇文章,我不大確定,這篇文章究竟是將 GAN 納入到了變分推斷中了,還是將 VAE 納入到了 GAN 中。相對而言,我覺得本文的論述更加清晰、明確一些。

看起來變分推斷還有很大的挖掘空間,等待著我們?nèi)ヌ剿鳌?/p>

原文發(fā)布時間為:2018-07-19
本文作者:蘇劍林
本文來自云棲社區(qū)合作伙伴“PaperWeekly”,了解相關(guān)信息可以關(guān)注“PaperWeekly”。

總結(jié)

以上是生活随笔為你收集整理的全新视角:用变分推断统一理解生成模型(VAE、GAN、AAE、ALI)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品在线观看免费 | 在线va视频 | 114国产精品久久免费观看 | 日韩精品手机在线 | 黄色精品视频在线观看 | 美女一区二区三区 | 日韩欧美中文字幕精品 | 一区二区三区精品视频在线观看 | 手机在线不卡av | 99久久精品国产一区二区成人 | 欧美日本韩国一区 | 成人午夜影院 | 欧美一区三区三区高中清蜜桃 | 男人舔女人下部高潮全视频 | 日日骚av一区二区 | 环太平洋3:泰坦崛起 | 国产成人综合在线 | 免费观看av毛片 | 人妻丰满熟妇av无码区hd | 亚欧美色图 | 日本乱码一区二区 | 精品人妻一区二区三区蜜桃 | 国产一区二区三区久久久 | 午夜免费福利影院 | 亚洲女优在线 | 神马午夜我不卡 | 午夜影院 | 又大又粗弄得我出好多水 | 操xxxx| 夜操操| www在线视频 | 免费av播放 | 污视频网址| 国产美女在线观看 | 免费高清视频在线观看 | 男人用嘴添女人下身免费视频 | 国产又大又硬又粗 | 久久精品综合网 | 精品久久久无码中文字幕边打电话 | www黄色 | 久久亚洲av无码西西人体 | 亚洲av毛片成人精品 | 国产sm网站 | 国产又爽又黄游戏 | 丰满少妇高潮在线观看 | 青青操久久 | h毛片| 日本丰满少妇裸体自慰 | 雪白的扔子视频大全在线观看 | 女人扒开腿免费视频app | 91字幕网 | 国产99在线观看 | av之家在线 | 亚洲国产视频在线观看 | 国产视频久久久久久 | 精品一卡二卡 | 国产成人av无码精品 | 久久久久国产精品一区 | 动漫美女被x | 在线观看毛片视频 | 麻豆视频污 | 日韩天堂av| 亚洲字幕av一区二区三区四区 | 欧美日韩国产中文字幕 | 亚洲区免费| 国模丫头1000人体 | 人人97| 九九热这里只有精品6 | 国产一区二区不卡在线 | 在线精品视频一区 | 久操免费在线 | 中国黄色录像一级片 | 不卡的在线视频 | 亚洲蜜桃精久久久久久久久久久久 | 99久久精品国产亚洲 | 国产精品一区二区三区在线看 | 欧美视频一二区 | av片在线免费看 | caoporn国产| 二区欧美 | 国产亚韩| 97在线精品视频 | 在线观看波多野结衣 | 在线观看视频色 | 国产精品伦理 | av天天在线 | 国产午夜一级一片免费播放 | 永久在线免费观看 | 色噜| 夜夜天天干 | 伊人色图 | 李丽珍毛片 | 日本韩国中文字幕 | 婷婷丁香视频 | 99国产精品无码 | 亚洲乱码中文字幕久久孕妇黑人 | 男女免费网站 | 国产免费黄| 嫩草国产精品 |