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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【GAN优化】详解对偶与WGAN

發(fā)布時(shí)間:2025/3/20 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【GAN优化】详解对偶与WGAN 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

越學(xué)習(xí)越發(fā)現(xiàn)自己知之甚少,道阻且長,還是認(rèn)真看下這篇文章,好好琢磨琢磨GAN吧。

今天將和大家一起學(xué)習(xí)在GAN界占有重要位置的WGAN,它提出了一種新的距離度量,較之前的f散度,它的數(shù)學(xué)性質(zhì)更為優(yōu)秀。我們將先通過一個(gè)例子細(xì)說一下f散度的問題,然后介紹Wasserstein距離并用一個(gè)小例子給出計(jì)算方法,最后利用對(duì)偶理論求解Wasserstein距離。

作者&編輯 | 小米粥

說到對(duì)GAN的理解,我們不能簡(jiǎn)單停留在“生成器產(chǎn)生樣本,判別器分辨樣本真假”的階段了,在經(jīng)過第二篇文章后,對(duì)GAN的理解應(yīng)該是:先學(xué)習(xí)一個(gè)關(guān)于生成器定義的隱式概率分布和訓(xùn)練數(shù)據(jù)集的本質(zhì)概率分布之間的距離度量,然后優(yōu)化生成器來縮減這個(gè)距離度量。今天的主要內(nèi)容依舊圍繞這個(gè)距離度量來展開。

1 度量的問題

在第二篇文章的最后,我們簡(jiǎn)要討論了f散度的問題。實(shí)際中,生成器定義的隱式概率分布和訓(xùn)練數(shù)據(jù)集的本質(zhì)概率分布幾乎不存在重疊部分,而且隨著數(shù)據(jù)維度增加,這個(gè)趨勢(shì)會(huì)更加嚴(yán)重,那么采樣計(jì)算得來的f散度距離不僅不連續(xù),而且?guī)缀跆幪帉?dǎo)數(shù)為0。

用一個(gè)非常簡(jiǎn)單的例子來解釋一下,在二維空間有兩個(gè)無任何重合的均勻分布,其中

我們來計(jì)算一下兩個(gè)分布的KL散度,JS散度,總變差。

可以看出,當(dāng)P和Q沒有重合或者重合部分可忽略時(shí),其f散度值為常數(shù);當(dāng)兩者完全重合時(shí),f散度值為0。這樣的話,f散度無法為生成器提供可以減少損失函數(shù)的梯度信息,生成器無法訓(xùn)練獲得優(yōu)化方向。

對(duì)于此問題的一種解決方案是:通過對(duì)數(shù)據(jù)集中的樣本和生成器生成的樣本增加噪聲,使得原本的兩個(gè)低維概率分布“彌散”到整個(gè)高維空間,強(qiáng)行讓它們產(chǎn)生不可忽略的重疊,此時(shí)的f散度便能“指示”出兩個(gè)分布的距離。在訓(xùn)練過程中,我們可以先添加方差比較大的噪聲,以盡可能使兩個(gè)分布產(chǎn)生較大重疊部分,隨著兩個(gè)分布距離的拉近,可以逐漸降低噪聲的方差,直至最后可以去掉噪聲完全靠JS散度來指示生成器的學(xué)習(xí)。

但是為了本質(zhì)地解決問題,我們需要尋找一種更合理的距離度量。直觀上,該距離最好處處連續(xù),在兩個(gè)分布不重合的位置處處可導(dǎo)且導(dǎo)數(shù)不能為0。

2 Wasserstein距離

Wasserstein距離是一個(gè)數(shù)學(xué)性質(zhì)非常良好距離度量,數(shù)學(xué)形式稍微有點(diǎn)復(fù)雜。我們用一個(gè)小例子來引入,定義兩個(gè)離散概率分布P和Q,其隨機(jī)變量取值只能為1,2,3,4。如何對(duì)P調(diào)整使其等于Q?

其實(shí)是很簡(jiǎn)單的一個(gè)問題,我們逐位置來分解計(jì)算,對(duì)于P的1位置,其值為0.25,我們將這0.25保持在1位置,即可有如下分解矩陣:

對(duì)于P的2位置,其值為0.25,我們也將這0.25全部保持在2位置,即有分解矩陣:

對(duì)于P的3位置,其值為0.5,我們將其中的0.25放置到1位置,將0.25放置到2位置,即有分解矩陣:

類似的,P的4位置為0,不用做任何分解和移動(dòng),這樣我們可看到經(jīng)過逐個(gè)位置分解和移動(dòng)后,新的分布已經(jīng)和Q完全一樣了,如下:

然后,我們?cè)倏紤]關(guān)于路程的移動(dòng)耗費(fèi)問題。如果定義從1位置到2位置路程為1,從1位置到3位置路程為2......對(duì)P的1位置,將0.25保留在1位置不產(chǎn)生移動(dòng)耗費(fèi),對(duì)P的2位置,將0.25保留在2位置也不產(chǎn)生移動(dòng)耗費(fèi),但是對(duì)P的3位置,將0.25移動(dòng)到1位置,需要耗費(fèi):0.25*(3-1)=0.5;將0.25移動(dòng)到2位置,需要耗費(fèi):0.25*(2-1)=0.25,故整個(gè)方案將產(chǎn)生0.75的耗費(fèi)。當(dāng)然,我們也可以有其他傳輸方案,例如:

可以證明的是總存在一個(gè)耗費(fèi)最小的方案。Wasserstein距離便是某一種最小耗費(fèi)方案對(duì)應(yīng)的總耗費(fèi)值。

在數(shù)學(xué)形式上,

Π是兩個(gè)分布構(gòu)成的全部可能的聯(lián)合分布的集合,γ是該集合中的一個(gè)聯(lián)合分布,且該聯(lián)合分布要求:

簡(jiǎn)而言之就是,γ定義一個(gè)傳輸方案,d定義了路程函數(shù),對(duì)每個(gè)方案求積分計(jì)算總傳輸耗費(fèi)值,最后在所有這些方案中取最小耗費(fèi)值的傳輸方案,其對(duì)應(yīng)的總耗費(fèi)值即為距離。


在WGAN中,

當(dāng)然也可以定義2-Wasserstein距離:

或者k-Wasserstein距離:

針對(duì)于剛開始提出的小例子,我們用Wasserstein則可得到:

可以看出Wasserstein距離處處連續(xù),而且?guī)缀跆幪幙蓪?dǎo),數(shù)學(xué)性質(zhì)非常好,能夠在兩個(gè)分布沒有重疊部分的時(shí)候,依舊給出合理的距離度量。

3?對(duì)偶問題

如果要計(jì)算Wasserstein距離,那需要遍歷所有滿足條件的聯(lián)合概率分布,然后計(jì)算每個(gè)聯(lián)合概率分布下的總消耗值,最后取最小的總消耗值,在維度較高時(shí),該問題幾乎不可解決。與之前fGAN有點(diǎn)類似,當(dāng)一個(gè)優(yōu)化問題難以求解時(shí),可以考慮將其轉(zhuǎn)化為比較容易求解的對(duì)偶問題。關(guān)于對(duì)偶理論,其最早源于求解線性規(guī)劃問題,每個(gè)線性規(guī)劃問題都有一個(gè)與之對(duì)應(yīng)的對(duì)偶問題,對(duì)偶問題是以原問題的約束條件和目標(biāo)函數(shù)為基礎(chǔ)構(gòu)造而來的,對(duì)于一個(gè)不易求解的線性規(guī)劃問題,當(dāng)求解成功對(duì)偶問題時(shí),其原問題也自然解決。

據(jù)此,我們先將Wasserstein距離表示成線性規(guī)劃的形式,定義向量(即將聯(lián)合概率分布“離散化”并拉成列向量):

定義向量:

對(duì)于兩個(gè)約束條件,定義矩陣:

定義向量:

定義了這些復(fù)雜的矩陣和向量后,我們的Wasserstein距離則可以表達(dá)成以下線性規(guī)劃的形式:

對(duì)偶理論是一個(gè)非常漂亮的理論,尤其是對(duì)于強(qiáng)對(duì)偶問題,有:

即只需求解原問題的對(duì)偶問題,得到對(duì)偶問題的解的同時(shí)也得到了原問題的解。即使對(duì)于弱對(duì)偶問題,雖不能精確求解,但是給出了原問題的下界:

在第二篇的fGAN中,我們便給出了f散度的一個(gè)下界,不過幸運(yùn)的是,這次面對(duì)的是一個(gè)強(qiáng)對(duì)偶問題:

對(duì)于原問題的對(duì)偶問題,我們定義向量:

其限制條件要求,

綜上所述,有

現(xiàn)在,定義一個(gè)神經(jīng)網(wǎng)絡(luò)F(x)來擬合一下上個(gè)式子的f(x),采用抽樣計(jì)算的方式,就有了WGAN的判別器(現(xiàn)在叫critic)損失函數(shù):

critic不像原始GAN的判別器具有分別真假樣本的具象意義了,它的輸出代表什么無從知曉。它像一個(gè)“部件”,使用這個(gè)訓(xùn)練好的部件再加上對(duì)樣本的充分采樣,便能得到兩個(gè)分布的Wasserstein距離,自然而然,生成器的優(yōu)化目標(biāo)是使得Wasserstein距離最小。

這里面存在一個(gè)比較難解決的問題,1-Lipschitz限制即要求在任意點(diǎn),函數(shù)的一階導(dǎo)數(shù)在[-1,1]的范圍內(nèi),這個(gè)限制在神經(jīng)網(wǎng)絡(luò)中并不容易實(shí)現(xiàn),之后的許多GAN便是圍繞這點(diǎn)來展開的。

其實(shí)今天著重把Wasserstein距離和計(jì)算方法介紹了下,對(duì)于比較有難度的Lipschitz限制并未討論,在接下來的兩篇文章中,我們將分別從解決1-Lipschitz限制和IPM的角度繼續(xù)深入GAN的目標(biāo)函數(shù)。

[1]?Arjovsky M, Chintala S, Bottou L. Wasserstein GAN[J]. 2017.

[2]?Hong Y , Hwang U , Yoo J , et al. How Generative Adversarial Networks and Their Variants Work: An Overview[J]. ACM Computing Surveys, 2017.

[3]Wasserstein GAN and the Kantorovich-Rubinstein Duality.? https://vincentherrmann.github.io/blog/wasserstein/

總結(jié)

這篇文章帶領(lǐng)大家領(lǐng)略了一下WGAN,學(xué)習(xí)了一種新的距離度量,展示了使用對(duì)偶方法轉(zhuǎn)化Wasserstein距離,最后留了一個(gè)大坑,解決1-Lipschitz問題,

下期預(yù)告:Lipschitz限制與SNGAN

GAN群

有三AI建立了一個(gè)GAN群,便于有志者相互交流。感興趣的同學(xué)也可以微信搜索xiaozhouguo94,備注"加入有三-GAN群"。

知識(shí)星球推薦

有三AI知識(shí)星球由言有三維護(hù),內(nèi)設(shè)AI知識(shí)匯總,AI書籍,網(wǎng)絡(luò)結(jié)構(gòu),看圖猜技術(shù),項(xiàng)目開發(fā),Github推薦,AI1000問等系統(tǒng)性學(xué)習(xí)板塊。

轉(zhuǎn)載文章請(qǐng)后臺(tái)聯(lián)系

侵權(quán)必究

往期精選

  • 【GAN優(yōu)化】GAN優(yōu)化專欄上線,首談生成模型與GAN基礎(chǔ)

  • 【GAN的優(yōu)化】從KL和JS散度到fGAN

  • 【技術(shù)綜述】有三說GANs(上)

  • 【模型解讀】歷數(shù)GAN的5大基本結(jié)構(gòu)

  • 【完結(jié)】深度學(xué)習(xí)CV算法工程師從入門到初級(jí)面試有多遠(yuǎn),大概是25篇文章的距離

  • 【完結(jié)】?jī)?yōu)秀的深度學(xué)習(xí)從業(yè)者都有哪些優(yōu)秀的習(xí)慣

  • 【完結(jié)】給新手的12大深度學(xué)習(xí)開源框架快速入門項(xiàng)目

  • 【完結(jié)】總結(jié)12大CNN主流模型架構(gòu)設(shè)計(jì)思想

  • 【AI不惑境】數(shù)據(jù)壓榨有多狠,人工智能就有多成功

  • 【AI不惑境】網(wǎng)絡(luò)深度對(duì)深度學(xué)習(xí)模型性能有什么影響?

  • 【AI不惑境】網(wǎng)絡(luò)的寬度如何影響深度學(xué)習(xí)模型的性能?

  • 【AI不惑境】學(xué)習(xí)率和batchsize如何影響模型的性能?

  • 【AI不惑境】殘差網(wǎng)絡(luò)的前世今生與原理

  • 【AI不惑境】移動(dòng)端高效網(wǎng)絡(luò),卷積拆分和分組的精髓

總結(jié)

以上是生活随笔為你收集整理的【GAN优化】详解对偶与WGAN的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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