GAN万字长文综述
https://zhuanlan.zhihu.com/p/58812258
有同學(xué)希望給出PDF,這里轉(zhuǎn)成了PDF放到了github,需要的同學(xué)自行下載:
Morde-kaiser/LearningNotes?github.com
此外,本文允許轉(zhuǎn)載,注明作者,出處即可!
前陣子學(xué)習(xí)GAN的過程發(fā)現(xiàn)現(xiàn)在的GAN綜述文章大都是2016年Ian Goodfellow或者自動(dòng)化所王飛躍老師那篇(最新發(fā)現(xiàn)一篇更新paper,也是王飛躍老師的:http://blog.sciencenet.cn/home.php?mod=space&uid=2374&do=blog&id=1130140)。可是在深度學(xué)習(xí),GAN領(lǐng)域,其進(jìn)展都是以月來計(jì)算的,感覺那兩篇綜述有些老了。最近發(fā)現(xiàn)有一篇最新的有關(guān)GAN綜述的paper[1],四十余頁,介紹了GAN的各個(gè)方面,于是就學(xué)習(xí)并整理筆記如下。文中許多內(nèi)容大都根據(jù)自己所學(xué)總結(jié),有不當(dāng)之處歡迎指出。此外,本文參考了許多博客資料,已給出參考鏈接。如有侵權(quán),請(qǐng)私信刪除。文章目錄如下:
1. GAN的基本介紹
生成對(duì)抗網(wǎng)絡(luò)(GAN,Generative Adversarial Networks)作為一種優(yōu)秀的生成式模型,引爆了許多圖像生成的有趣應(yīng)用。GAN相比于其他生成式模型,有兩大特點(diǎn):
不依賴任何先驗(yàn)假設(shè)。傳統(tǒng)的許多方法會(huì)假設(shè)數(shù)據(jù)服從某一分布,然后使用極大似然去估計(jì)數(shù)據(jù)分布。
生成real-like樣本的方式非常簡單。GAN生成real-like樣本的方式通過生成器(Generator)的前向傳播,而傳統(tǒng)方法的采樣方式非常復(fù)雜,有興趣的同學(xué)可以參考下周志華老師的《機(jī)器學(xué)習(xí)》一書中對(duì)各種采樣方式的介紹。
下面,我們圍繞上述兩點(diǎn)展開介紹。
1.1 GAN的基本概念
GAN(Generative Adversarial Networks)從其名字可以看出,是一種生成式的,對(duì)抗網(wǎng)絡(luò)。再具體一點(diǎn),就是通過對(duì)抗的方式,去學(xué)習(xí)數(shù)據(jù)分布的生成式模型。所謂的對(duì)抗,指的是生成網(wǎng)絡(luò)和判別網(wǎng)絡(luò)的互相對(duì)抗。生成網(wǎng)絡(luò)盡可能生成逼真樣本,判別網(wǎng)絡(luò)則盡可能去判別該樣本是真實(shí)樣本,還是生成的假樣本。示意圖如下:
隱變量(通常為服從高斯分布的隨機(jī)噪聲)通過Generator生成, 判別器負(fù)責(zé)判別輸入的data是生成的樣本還是真實(shí)樣本。優(yōu)化的目標(biāo)函數(shù)如下:
對(duì)于判別器D來說,這是一個(gè)二分類問題,V(D,G)為二分類問題中常見的交叉熵?fù)p失。對(duì)于生成器G來說,為了盡可能欺騙D,所以需要最大化生成樣本的判別概率D(G(z)),即最小化(注意:一項(xiàng)與生成器G無關(guān),所以可以忽略。)
實(shí)際訓(xùn)練時(shí),生成器和判別器采取交替訓(xùn)練,即先訓(xùn)練D,然后訓(xùn)練G,不斷往復(fù)。值得注意的是,對(duì)于生成器,其最小化的是,即最小化V(D,G)的最大值。為了保證V(D,G)取得最大值,所以我們通常會(huì)訓(xùn)練迭代k次判別器,然后再迭代1次生成器(不過在實(shí)踐當(dāng)中發(fā)現(xiàn),k通常取1即可)。當(dāng)生成器G固定時(shí),我們可以對(duì)V(D,G)求導(dǎo),求出最優(yōu)判別器:
把最優(yōu)判別器代入上述目標(biāo)函數(shù),可以進(jìn)一步求出在最優(yōu)判別器下,生成器的目標(biāo)函數(shù)等價(jià)于優(yōu)化,的JS散度(JSD, Jenson Shannon Divergence)。
可以證明,當(dāng)G,D二者的capacity足夠時(shí),模型會(huì)收斂,二者將達(dá)到納什均衡。此時(shí),,判別器不論是對(duì)于還是中采樣的樣本,其預(yù)測概率均為,即生成樣本與真實(shí)樣本達(dá)到了難以區(qū)分的地步。
1.2 目標(biāo)函數(shù)
前面我們提到了GAN的目標(biāo)函數(shù)是最小化兩個(gè)分布的JS散度。實(shí)際上,衡量兩個(gè)分布距離的方式有很多種,JS散度只是其中一種。如果我們定義不同的距離度量方式,就可以得到不同的目標(biāo)函數(shù)。許多對(duì)GAN訓(xùn)練穩(wěn)定性的改進(jìn),比如EBGAN,LSGAN等都是定義了不同的分布之間距離度量方式。
1.2.1 f-divergence
f-divergence使用下面公式來定義兩個(gè)分布之間的距離:
上述公式中為凸函數(shù),且。采用不同的f函數(shù)(Generator),可以得到不同的優(yōu)化目標(biāo)。具體如下:
值得注意的是,散度這種度量方式不具備對(duì)稱性,即和不相等(嚴(yán)格來說,距離度量方式必須具備對(duì)稱性,所以散度不是一種距離度量方式,不過此處不去刻意關(guān)注這一點(diǎn),直接把散度也作為一種距離度量方式,下文也是如此)。
LSGAN
上面提到,LSGAN是f-divergence中時(shí)的特殊情況。具體來說LSGAN的Loss如下:
原作中取。LSGAN有兩大優(yōu)點(diǎn)[2]:
穩(wěn)定訓(xùn)練:解決了傳統(tǒng)GAN訓(xùn)練過程中的梯度飽和問題
改善生成質(zhì)量:通過懲罰遠(yuǎn)離判別器決策邊界的生成樣本來實(shí)現(xiàn)
對(duì)于第一點(diǎn),穩(wěn)定訓(xùn)練,可以先看一張圖:
上圖左邊是傳統(tǒng)GAN使用sigmoid交叉熵作為loss時(shí),輸入與輸出的對(duì)照關(guān)系圖。上圖右邊是LSGAN使用最小二乘loss時(shí),輸入與輸出的對(duì)照關(guān)系圖。可以看到,在左圖,輸入比較大的時(shí)候,梯度為0,即交叉熵?fù)p失的輸入容易出現(xiàn)梯度飽和現(xiàn)象。而右邊的最小二乘loss則不然。
對(duì)于第二點(diǎn),改善生成質(zhì)量。這個(gè)在原文也有詳細(xì)的解釋。具體來說:對(duì)于一些被判別器分類正確的樣本,其對(duì)梯度是沒有貢獻(xiàn)的。但是判別器分類正確的樣本就一定是很接近真實(shí)數(shù)據(jù)分布的樣本嗎?顯然不一定。
考慮如下理想情況,一個(gè)訓(xùn)練良好的GAN,真實(shí)數(shù)據(jù)分布和生成數(shù)據(jù)分布完全重合,判別器決策面穿過真實(shí)數(shù)據(jù)點(diǎn),所以,反過來,我們利用樣本點(diǎn)離決策面的遠(yuǎn)近來度量生成樣本的質(zhì)量,樣本離決策面越近,則GAN訓(xùn)練的越好。
上圖b中,一些離決策面比較遠(yuǎn)的點(diǎn),雖然被分類正確,但是這些并不是好的生成樣本。傳統(tǒng)GAN通常會(huì)將其忽略。而對(duì)于LSGAN,由于采用最小二乘損失,計(jì)算決策面到樣本點(diǎn)的距離,如圖c,可以把離決策面比較遠(yuǎn)的點(diǎn)“拉”回來,也就是把離真實(shí)數(shù)據(jù)比較遠(yuǎn)的點(diǎn)“拉”回來。
1.2.2 Integral probality metric(IPM)
IPM定義了一個(gè)評(píng)價(jià)函數(shù)族,用于度量任意兩個(gè)分布之間的距離。在一個(gè)緊湊的空間中,定義為在上的概率測度。那么兩個(gè)分布之間的IPM可以定義為如下公式:
類似于f-divergence,不同函數(shù)f也可以定義出一系列不同的優(yōu)化目標(biāo)。典型的有WGAN,F(xiàn)isher GAN等。下面簡要介紹一下WGAN。
WGAN
WGAN提出了一種全新的距離度量方式——地球移動(dòng)距離(EM, Earth-mover distance),也叫Wasserstein距離。關(guān)于Wasserstein距離的介紹可以參考:
我愛饅頭:白話Wassertein距離?zhuanlan.zhihu.com
Wasserstein距離具體定義如下:
表示一組聯(lián)合分布,這組聯(lián)合分布里的任一分布的邊緣分布均為和。
直觀上來說,概率分布函數(shù)(PDF)可以理解為隨機(jī)變量在每一點(diǎn)的質(zhì)量,所以則表示把概率分布搬到需要的最小工作量。
WGAN也可以用最優(yōu)傳輸理論來解釋,WGAN的生成器等價(jià)于求解最優(yōu)傳輸映射,判別器等價(jià)于計(jì)算Wasserstein距離,即最優(yōu)傳輸總代價(jià)[4]。關(guān)于WGAN的理論推導(dǎo)和解釋比較復(fù)雜,不過代碼實(shí)現(xiàn)非常簡單。具體來說[3]:
判別器最后一層去掉sigmoid
生成器和判別器的loss不取log
每次更新判別器的參數(shù)之后把它們的絕對(duì)值截?cái)嗟讲怀^一個(gè)固定常數(shù)c
上述第三點(diǎn),在WGAN的后來一篇工作WGAN-GP中,將梯度截?cái)嗵鎿Q為了梯度懲罰。
1.2.3 f-divergence和IPM對(duì)比
f-divergence存在兩個(gè)問題:其一是隨著數(shù)據(jù)空間的維度的增加,f-divergence會(huì)非常難以計(jì)算。其二是兩個(gè)分布的支撐集[3]通常是未對(duì)齊的,這將導(dǎo)致散度值趨近于無窮。
IPM則不受數(shù)據(jù)維度的影響,且一致收斂于兩個(gè)分布之間的距離。而且即便是在兩個(gè)分布的支撐集不存在重合時(shí),也不會(huì)發(fā)散。
1.2.4 輔助的目標(biāo)函數(shù)
在許多GAN的應(yīng)用中,會(huì)使用額外的Loss用于穩(wěn)定訓(xùn)練或者達(dá)到其他的目的。比如在圖像翻譯,圖像修復(fù),超分辨當(dāng)中,生成器會(huì)加入目標(biāo)圖像作為監(jiān)督信息。EBGAN則把GAN的判別器作為一個(gè)能量函數(shù),在判別器中加入重構(gòu)誤差。CGAN則使用類別標(biāo)簽信息作為監(jiān)督信息。
1.3 其他常見生成式模型
1.3.1 自回歸模型:pixelRNN與pixelCNN
自回歸模型通過對(duì)圖像數(shù)據(jù)的概率分布p_{data}(x)進(jìn)行顯式建模,并利用極大似然估計(jì)優(yōu)化模型。具體如下:
上述公式很好理解,給定條件下,所有的概率乘起來就是圖像數(shù)據(jù)的分布。如果使用RNN對(duì)上述依然關(guān)系建模,就是pixelRNN。如果使用CNN,則是pixelCNN。具體如下[5]:
pixelRNNpixelCNN
顯然,不論是對(duì)于pixelCNN還是pixelRNN,由于其像素值是一個(gè)個(gè)生成的,速度會(huì)很慢。語音領(lǐng)域大火的WaveNet就是一個(gè)典型的自回歸模型。
1.3.2 VAE
PixelCNN/RNN定義了一個(gè)易于處理的密度函數(shù),我們可以直接優(yōu)化訓(xùn)練數(shù)據(jù)的似然;對(duì)于變分自編碼器我們將定義一個(gè)不易處理的密度函數(shù),通過附加的隱變量對(duì)密度函數(shù)進(jìn)行建模。 VAE原理圖如下[6]:
在VAE中,真實(shí)樣本X通過神經(jīng)網(wǎng)絡(luò)計(jì)算出均值方差(假設(shè)隱變量服從正態(tài)分布),然后通過采樣得到采樣變量Z并進(jìn)行重構(gòu)。VAE和GAN均是學(xué)習(xí)了隱變量到真實(shí)數(shù)據(jù)分布的映射。但是和GAN不同的是:
GAN的思路比較粗暴,使用一個(gè)判別器去度量分布轉(zhuǎn)換模塊(即生成器)生成分布與真實(shí)數(shù)據(jù)分布的距離。
VAE則沒有那么直觀,VAE通過約束隱變量服從標(biāo)準(zhǔn)正態(tài)分布以及重構(gòu)數(shù)據(jù)實(shí)現(xiàn)了分布轉(zhuǎn)換映射
生成式模型對(duì)比
自回歸模型通過對(duì)概率分布顯式建模來生成數(shù)據(jù)
VAE和GAN均是:假設(shè)隱變量服從某種分布,并學(xué)習(xí)一個(gè)映射,實(shí)現(xiàn)隱變量分布與真實(shí)數(shù)據(jù)分布的轉(zhuǎn)換。
GAN使用判別器去度量映射的優(yōu)劣,而VAE通過隱變量與標(biāo)準(zhǔn)正態(tài)分布的KL散度和重構(gòu)誤差去度量。
1.4 GAN常見的模型結(jié)構(gòu)
1.4.1 DCGAN
DCGAN提出使用CNN結(jié)構(gòu)來穩(wěn)定GAN的訓(xùn)練,并使用了以下一些trick:
Batch Normalization
使用Transpose convlution進(jìn)行上采樣
使用Leaky ReLu作為激活函數(shù)
上面這些trick對(duì)于穩(wěn)定GAN的訓(xùn)練有許多幫助,自己設(shè)計(jì)GAN網(wǎng)絡(luò)時(shí)也可以酌情使用。
1.4.2 層級(jí)結(jié)構(gòu)
GAN對(duì)于高分辨率圖像生成一直存在許多問題,層級(jí)結(jié)構(gòu)的GAN通過逐層次,分階段生成,一步步提生圖像的分辨率。典型的使用多對(duì)GAN的模型有StackGAN,GoGAN。使用單一GAN,分階段生成的有ProgressiveGAN。StackGAN和ProgressiveGAN結(jié)構(gòu)如下:
1.4.3 自編碼結(jié)構(gòu)
經(jīng)典的GAN結(jié)構(gòu)里面,判別網(wǎng)絡(luò)通常被當(dāng)做一種用于區(qū)分真實(shí)/生成樣本的概率模型。而在自編碼器結(jié)構(gòu)里面,判別器(使用AE作為判別器)通常被當(dāng)做能量函數(shù)(Energy function)。對(duì)于離數(shù)據(jù)流形空間比較近的樣本,其能量較小,反之則大。有了這種距離度量方式,自然就可以使用判別器去指導(dǎo)生成器的學(xué)習(xí)。
AE作為判別器,為什么就可以當(dāng)做能量函數(shù),用于度量生成樣本離數(shù)據(jù)流形空間的距離呢?首先,先看AE的loss:
AE的loss是一個(gè)重構(gòu)誤差。使用AE做為判別器時(shí),如果輸入真實(shí)樣本,其重構(gòu)誤差會(huì)很小。如果輸入生成的樣本,其重構(gòu)誤差會(huì)很大。因?yàn)閷?duì)于生成的樣本,AE很難學(xué)習(xí)到一個(gè)圖像的壓縮表示(即生成的樣本離數(shù)據(jù)流行形空間很遠(yuǎn))。所以,VAE的重構(gòu)誤差作為和之間的距離度量是合理的。典型的自編碼器結(jié)構(gòu)的GAN有:BEGAN, EBGAN, MAGAN等
1.5 GAN的訓(xùn)練障礙(Obstacles)
1.5.1 理論中存在的問題
經(jīng)典GAN的判別器有兩種loss,分別是:
使用上面第一個(gè)公式作為loss時(shí):在判別器達(dá)到最優(yōu)的時(shí)候,等價(jià)于最小化生成分布與真實(shí)分布之間的JS散度,由于隨機(jī)生成分布很難與真實(shí)分布有不可忽略的重疊以及JS散度的突變特性,使得生成器面臨梯度消失的問題
使用上面第二個(gè)公式作為loss時(shí):在最優(yōu)判別器下,等價(jià)于既要最小化生成分布與真實(shí)分布直接的KL散度,又要最大化其JS散度,相互矛盾,導(dǎo)致梯度不穩(wěn)定,而且KL散度的不對(duì)稱性使得生成器寧可喪失多樣性也不愿喪失準(zhǔn)確性,導(dǎo)致collapse mode現(xiàn)象[7]。
1.5.2 實(shí)踐中存在的問題
GAN在實(shí)踐中存在兩個(gè)問題:
其一,GAN提出者Ian Goodfellow在理論中雖然證明了GAN是可以達(dá)到納什均衡的。可是我們?cè)趯?shí)際實(shí)現(xiàn)中,我們是在參數(shù)空間優(yōu)化,而非函數(shù)空間,這導(dǎo)致理論上的保證在實(shí)踐中是不成立的。
其二,GAN的優(yōu)化目標(biāo)是一個(gè)極小極大(minmax)問題,即,也就是說,優(yōu)化生成器的時(shí)候,最小化的是。可是我們是迭代優(yōu)化的,要保證V(G,D)最大化,就需要迭代非常多次,這就導(dǎo)致訓(xùn)練時(shí)間很長。如果我們只迭代一次判別器,然后迭代一次生成器,不斷循環(huán)迭代。這樣原先的極小極大問題,就容易變成極大極小(maxmin)問題,可二者是不一樣的,即:
如果變化為極小極大問題,那么迭代就是這樣的,生成器先生成一些樣本,然后判別器給出錯(cuò)誤的判別結(jié)果并懲罰生成器,于是生成器調(diào)整生成的概率分布。可是這樣往往導(dǎo)致生成器變“懶”,只生成一些簡單的,重復(fù)的樣本,即缺乏多樣性,也叫mode collapse。
1.5.3 穩(wěn)定GAN訓(xùn)練的技巧
如上所述,GAN在理論上和實(shí)踐上存在三個(gè)大問題,導(dǎo)致訓(xùn)練過程十分不穩(wěn)定,且存在mode collapse的問題。為了改善上述情況,可以使用以下技巧穩(wěn)定訓(xùn)練:
Feature matching: 方法很簡單,使用判別器某一層的特征替換原始GAN Loss中的輸出。即最小化:生成圖片通過判別器的特征和真實(shí)圖片通過判別器得到的特征之間的距離。
標(biāo)簽平滑:GAN訓(xùn)練中的標(biāo)簽非0即1,這使得判別器預(yù)測出來的confidence傾向于更高的值。使用標(biāo)簽平滑可以緩解該問題。具體來說,就是把標(biāo)簽1替換為0.8~1.0之間的隨機(jī)數(shù)。
譜歸一化:WGAN和Improve WGAN通過施加Lipschitz條件來約束優(yōu)化過程,譜歸一化則是對(duì)判別器的每一層都施加Lipschitz約束,但是譜歸一化相比于Improve WGAN計(jì)算效率要高一些。
PatchGAN:準(zhǔn)確來說PatchGAN并不是用于穩(wěn)定訓(xùn)練,但這個(gè)技術(shù)被廣泛用于圖像翻譯當(dāng)中,PatchGAN相當(dāng)于對(duì)圖像的每一個(gè)小Patch進(jìn)行判別,這樣可以使得生成器生成更加銳利清晰的邊緣。具體做法是這樣的:假設(shè)輸入一張256x256的圖像到判別器,輸出的是一個(gè)4x4的confidence map,confidence map中每一個(gè)像素值代表當(dāng)前patch是真實(shí)圖像的置信度,即為PatchGAN。當(dāng)前圖像patch的大小就是感受野的大小,最后將所有Patch的Loss求平均作為最終的Loss。
1.6 GAN mode collapse的解決方案
1.6.1 針對(duì)目標(biāo)函數(shù)的改進(jìn)方法
為了避免前面提到的由于優(yōu)化導(dǎo)致mode跳來跳去的問題,UnrolledGAN采用修改生成器loss來解決。具體而言,UnrolledGAN在更新生成器時(shí)更新k次生成器,參考的Loss不是某一次的loss,是判別器后面k次迭代的loss。注意,判別器后面k次迭代不更新自己的參數(shù),只計(jì)算loss用于更新生成器。這種方式使得生成器考慮到了后面k次判別器的變化情況,避免在不同mode之間切換導(dǎo)致的模式崩潰問題。此處務(wù)必和迭代k次生成器,然后迭代1次判別器區(qū)分開[8]。DRAGAN則引入博弈論中的無后悔算法,改造其loss以解決mode collapse問題[9]。前文所述的EBGAN則是加入VAE的重構(gòu)誤差以解決mode collapse。
1.6.2 針對(duì)網(wǎng)絡(luò)結(jié)構(gòu)的改進(jìn)方法
Multi agent diverse GAN(MAD-GAN)采用多個(gè)生成器,一個(gè)判別器以保障樣本生成的多樣性。具體結(jié)構(gòu)如下:
相比于普通GAN,多了幾個(gè)生成器,且在loss設(shè)計(jì)的時(shí)候,加入一個(gè)正則項(xiàng)。正則項(xiàng)使用余弦距離懲罰三個(gè)生成器生成樣本的一致性。
MRGAN則添加了一個(gè)判別器來懲罰生成樣本的mode collapse問題。具體結(jié)構(gòu)如下:
輸入樣本通過一個(gè)Encoder編碼為隱變量,然后隱變量被Generator重構(gòu),訓(xùn)練時(shí),Loss有三個(gè)。和(重構(gòu)誤差)用于指導(dǎo)生成real-like的樣本。而則對(duì)和生成的樣本進(jìn)行判別,顯然二者生成樣本都是fake samples,所以這個(gè)判別器主要用于判斷生成的樣本是否具有多樣性,即是否出現(xiàn)mode collapse。
1.6.3 Mini-batch Discrimination
Mini-batch discrimination在判別器的中間層建立一個(gè)mini-batch layer用于計(jì)算基于L1距離的樣本統(tǒng)計(jì)量,通過建立該統(tǒng)計(jì)量去判別一個(gè)batch內(nèi)某個(gè)樣本與其他樣本有多接近。這個(gè)信息可以被判別器利用到,從而甄別出哪些缺乏多樣性的樣本。對(duì)生成器而言,則要試圖生成具有多樣性的樣本。
2、關(guān)于GAN隱空間的理解
隱空間是數(shù)據(jù)的一種壓縮表示的空間。通常來說,我們直接在數(shù)據(jù)空間對(duì)圖像進(jìn)行修改是不現(xiàn)實(shí)的,因?yàn)閳D像屬性位于高維空間中的流形中。但是在隱空間,由于每一個(gè)隱變量代表了某個(gè)具體的屬性,所以這是可行的。
在這部分,我們會(huì)探討GAN是如何處理隱空間及其屬性的,此外還將探討變分方法如何結(jié)合到GAN的框架中。
2.1 隱空間分解
GAN的輸入隱變量是非結(jié)構(gòu)化的,我們不知道隱變量中的每一位數(shù)分別控制著什么屬性。因此有學(xué)者提出,將隱變量分解為一個(gè)條件變量和標(biāo)準(zhǔn)輸入隱變量。具體包括有監(jiān)督的方法和無監(jiān)督的方法。
2.1.1 有監(jiān)督方法
典型的有監(jiān)督方法有CGAN,ACGAN。
CGAN將隨機(jī)噪聲和類別標(biāo)簽作為生成器的輸入,判別器則將生成的樣本/真實(shí)樣本與類別標(biāo)簽作為輸入。以此學(xué)習(xí)標(biāo)簽和圖片之間的關(guān)聯(lián)性。
ACGAN將隨機(jī)噪聲和類別標(biāo)簽作為生成器的輸入,判別器則將生成的樣本/真實(shí)樣本輸入,且回歸出圖片的類別標(biāo)簽。以此學(xué)習(xí)標(biāo)簽和圖片之間的關(guān)聯(lián)性。二者結(jié)構(gòu)如下(左邊為CGAN,右邊為ACGAN):
2.1.2 無監(jiān)督方法
相比于有監(jiān)督方法,無監(jiān)督方法不使用任何標(biāo)簽信息。因此,無監(jiān)督方法需要對(duì)隱空間進(jìn)行解耦得到有意義的特征表示。
InfoGAN對(duì)把輸入噪聲分解為隱變量和條件變量(訓(xùn)練時(shí),條件變量c從均勻分布采樣而來。),二者被一起送入生成器。在訓(xùn)練過程中通過最大化和的互信息以實(shí)現(xiàn)變量解耦(的互信息表示里面關(guān)于的信息有多少,如果最大化互信息,也就是最大化生成結(jié)果和條件變量的關(guān)聯(lián)性)。模型結(jié)構(gòu)和CGAN基本一致,除了Loss多了一項(xiàng)最大互信息。具體如下[10]:
從上面分析可以看出,InfoGAN只是實(shí)現(xiàn)了信息的解耦,至于條件變量c每一個(gè)值的具體含義是什么,我們無法控制。于是ss-InfoGAN出現(xiàn)了,ss-InfoGAN采用半監(jiān)督學(xué)習(xí)方法,把條件變量分成兩部分,。則利用標(biāo)簽像CGAN一樣學(xué)習(xí),則像InfoGAN一樣學(xué)習(xí)。
2.2 GAN與VAE的結(jié)合
GAN相比于VAE可以生成清晰的圖像,但是卻容易出現(xiàn)mode collapse問題。VAE由于鼓勵(lì)重構(gòu)所有樣本,所以不會(huì)出現(xiàn)mode collapse問題。
一個(gè)典型結(jié)合二者的工作是VAEGAN,結(jié)構(gòu)很像前文提及的MRGAN,具體如下:
上述模型的Loss包括三個(gè)部分,分別是判別器某一層特征的重構(gòu)誤差,VAE的Loss,GAN的Loss。
2.3 GAN模型總結(jié)
前面兩節(jié)介紹了各種各樣的GAN模型,這些模型大都是圍繞著GAN的兩大常見問題:模式崩潰,以及訓(xùn)練崩潰來設(shè)計(jì)的。下表總結(jié)了這些模型,讀者可以根據(jù)下表回顧對(duì)照:
3. GAN的應(yīng)用
由于GAN在生成樣本過程成不需要顯式建模任何數(shù)據(jù)分布就可以生成real-like的樣本,所以GAN在圖像,文本,語音等諸多領(lǐng)域都有廣泛的應(yīng)用。下表總結(jié)了GAN在各個(gè)方面的應(yīng)用,后文會(huì)這些算法做相應(yīng)介紹。
3.1 圖像
3.1.1 圖像翻譯
所謂圖像翻譯,指從一副(源域)圖像到另一副(目標(biāo)域)圖像的轉(zhuǎn)換。可以類比機(jī)器翻譯,一種語言轉(zhuǎn)換為另一種語言。翻譯過程中會(huì)保持源域圖像內(nèi)容不變,但是風(fēng)格或者一些其他屬性變成目標(biāo)域。
Paired two domain data
成對(duì)圖像翻譯典型的例子就是pix2pix,pix2pix使用成對(duì)數(shù)據(jù)訓(xùn)練了一個(gè)條件GAN,Loss包括GAN的loss和逐像素差loss。而PAN則使用特征圖上的逐像素差作為感知損失替代圖片上的逐像素差,以生成人眼感知上更加接近源域的圖像。
Unpaired two domain data
對(duì)于無成對(duì)訓(xùn)練數(shù)據(jù)的圖像翻譯問題,一個(gè)典型的例子是CycleGAN。CycleGAN使用兩對(duì)GAN,將源域數(shù)據(jù)通過一個(gè)GAN網(wǎng)絡(luò)轉(zhuǎn)換到目標(biāo)域之后,再使用另一個(gè)GAN網(wǎng)絡(luò)將目標(biāo)域數(shù)據(jù)轉(zhuǎn)換回源域,轉(zhuǎn)換回來的數(shù)據(jù)和源域數(shù)據(jù)正好是成對(duì)的,構(gòu)成監(jiān)督信息。
3.1.2 超分辨
SRGAN中使用GAN和感知損失生成細(xì)節(jié)豐富的圖像。感知損失重點(diǎn)關(guān)注中間特征層的誤差,而不是輸出結(jié)果的逐像素誤差。避免了生成的高分辨圖像缺乏紋理細(xì)節(jié)信息問題。
3.1.3 目標(biāo)檢測
得益于GAN在超分辨中的應(yīng)用,針對(duì)小目標(biāo)檢測問題,可以理由GAN生成小目標(biāo)的高分辨率圖像從而提高目標(biāo)檢測精度
3.1.4 圖像聯(lián)合分布學(xué)習(xí)
大部分GAN都是學(xué)習(xí)單一域的數(shù)據(jù)分布,CoupledGAN則提出一種部分權(quán)重共享的網(wǎng)絡(luò),使用無監(jiān)督方法來學(xué)習(xí)多個(gè)域圖像的聯(lián)合分布。具體結(jié)構(gòu)如下[11]:
如上圖所示,CoupledGAN使用兩個(gè)GAN網(wǎng)絡(luò)。生成器前半部分權(quán)重共享,目的在于編碼兩個(gè)域高層的,共有信息,后半部分沒有進(jìn)行共享,則是為了各自編碼各自域的數(shù)據(jù)。判別器前半部分不共享,后半部分用于提取高層特征共享二者權(quán)重。對(duì)于訓(xùn)練好的網(wǎng)絡(luò),輸入一個(gè)隨機(jī)噪聲,輸出兩張不同域的圖片。
值得注意的是,上述模型學(xué)習(xí)的是聯(lián)合分布,如果使用兩個(gè)單獨(dú)的GAN分別取訓(xùn)練,那么學(xué)習(xí)到的就是邊際分布和。通常情況下,。
3.1.5 視頻生成
通常來說,視頻有相對(duì)靜止的背景和運(yùn)動(dòng)的前景組成。VideoGAN使用一個(gè)兩階段的生成器,3D CNN生成器生成運(yùn)動(dòng)前景,2D CNN生成器生成靜止的背景。Pose GAN則使用VAE和GAN生成視頻,首先,VAE結(jié)合當(dāng)前幀的姿態(tài)和過去的姿態(tài)特征預(yù)測下一幀的運(yùn)動(dòng)信息,然后3D CNN使用運(yùn)動(dòng)信息生成后續(xù)視頻幀。Motion and Content GAN(MoCoGAN)則提出在隱空間對(duì)運(yùn)動(dòng)部分和內(nèi)容部分進(jìn)行分離,使用RNN去建模運(yùn)動(dòng)部分。
3.2 序列生成
相比于GAN在圖像領(lǐng)域的應(yīng)用,GAN在文本,語音領(lǐng)域的應(yīng)用要少很多。主要原因有兩個(gè):
GAN在優(yōu)化的時(shí)候使用BP算法,對(duì)于文本,語音這種離散數(shù)據(jù),GAN沒法直接跳到目標(biāo)值,只能根據(jù)梯度一步步靠近。
對(duì)于序列生成問題,每生成一個(gè)單詞,我們就需要判斷這個(gè)序列是否合理,可是GAN里面的判別器是沒法做到的。除非我們針對(duì)每一個(gè)step都設(shè)置一個(gè)判別器,這顯然不合理。
為了解決上述問題,強(qiáng)化學(xué)習(xí)中的策略梯度下降(Policy gredient descent)被引入到GAN中的序列生成問題。
3.2.1 音樂生成
RNN-GAN使用LSTM作為生成器和判別器,直接生成整個(gè)音頻序列。然而,正如上面提到的,音樂當(dāng)做包括歌詞和音符,對(duì)于這種離散數(shù)據(jù)生成問題直接使用GAN存在很多問題,特別是生成的數(shù)據(jù)缺乏局部一致性。
相比之下,SeqGAN把生成器的輸出作為一個(gè)智能體(agent)的策略,而判別器的輸出作為獎(jiǎng)勵(lì)(reward),使用策略梯度下降來訓(xùn)練模型。ORGAN則在SeqGAN的基礎(chǔ)上,針對(duì)具體的目標(biāo)設(shè)定了一個(gè)特定目標(biāo)函數(shù)。
3.2.2 語言和語音
VAW-GAN(Variational autoencoding Wasserstein GAN)結(jié)合VAE和WGAN實(shí)現(xiàn)了一個(gè)語音轉(zhuǎn)換系統(tǒng)。編碼器編碼語音信號(hào)的內(nèi)容,解碼器則用于重建音色。由于VAE容易導(dǎo)致生成結(jié)果過于平滑,所以此處使用WGAN來生成更加清晰的語音信號(hào)。
3.3 半監(jiān)督學(xué)習(xí)
圖像數(shù)據(jù)的標(biāo)簽獲得需要大量的人工標(biāo)注,這個(gè)過程費(fèi)時(shí)費(fèi)力。
3.3.1 利用判別器進(jìn)行半監(jiān)督學(xué)習(xí)
基于GAN的半監(jiān)督學(xué)習(xí)方法[12]提出了一種利用無標(biāo)簽數(shù)據(jù)的方法。實(shí)現(xiàn)方法和原始GAN基本一樣,具體框架如下[13]:
相比于原始GAN,主要區(qū)別在于判別器輸出一個(gè)的類別信息(生成的樣本為第類)。對(duì)于判別器,其Loss包括兩部分,一個(gè)是監(jiān)督學(xué)習(xí)損失(只需要判斷樣本真假),另一個(gè)是無監(jiān)督學(xué)習(xí)損失(判斷樣本類別)。生成器則只需要盡量生成逼真的樣本即可。訓(xùn)練完成后,判別器就可以作為一個(gè)分類模型去分類。
從直觀上來看,生成的樣本主要在于輔助分類器學(xué)會(huì)區(qū)分真實(shí)的數(shù)據(jù)空間在哪里。
3.3.2 使用輔助分類器的半監(jiān)督學(xué)習(xí)
上面提及的利用判別器進(jìn)行半監(jiān)督學(xué)習(xí)的模型存在一個(gè)問題。判別器既要學(xué)習(xí)區(qū)分正負(fù)樣本,也要學(xué)習(xí)預(yù)測標(biāo)簽。二者目標(biāo)不一致,容易導(dǎo)致二者都達(dá)不到最優(yōu)。一個(gè)直觀的想法就把預(yù)測標(biāo)簽和區(qū)分正負(fù)樣本分開。Triple-GAN就是這么做的[14]:
分別表示生成的數(shù)據(jù),有標(biāo)簽的數(shù)據(jù),無標(biāo)簽的數(shù)據(jù)。CE表示交叉熵?fù)p失。
3.4 域適應(yīng)
域適應(yīng)是一個(gè)遷移學(xué)習(xí)里面的概念。簡單說來,我們定義源數(shù)據(jù)域分布為,目標(biāo)數(shù)據(jù)域分布為。對(duì)于源域數(shù)據(jù),我們有許多標(biāo)簽,但是對(duì)于目標(biāo)域的數(shù)據(jù)沒有標(biāo)簽。我們希望能通過源域的有標(biāo)簽數(shù)據(jù)和目標(biāo)域的無標(biāo)簽數(shù)據(jù)學(xué)習(xí)一個(gè)模型,在目標(biāo)域泛化的很好。遷移學(xué)習(xí)的“遷移”二字指的是源域數(shù)據(jù)分布向目標(biāo)域數(shù)據(jù)分布的遷移。
GAN用于遷移學(xué)習(xí)時(shí),核心思想在于使用生成器把源域數(shù)據(jù)特征轉(zhuǎn)換成目標(biāo)域數(shù)據(jù)特征,而判別器則盡可能區(qū)分真實(shí)數(shù)據(jù)和生成數(shù)據(jù)特征。以下是兩個(gè)把GAN應(yīng)用于遷移學(xué)習(xí)的例子DANN和ARDA:
以上圖左邊的DANN為例,分別代表源域數(shù)據(jù),目標(biāo)域的數(shù)據(jù),表示源域數(shù)據(jù)的標(biāo)簽。表示源域特征,目標(biāo)域特征。DANN中,生成器用于提取特征,并使得提取的特征難以被判別器區(qū)分是源域數(shù)據(jù)特征還是目標(biāo)域數(shù)據(jù)特征。
在行人重識(shí)別領(lǐng)域,有許多基于CycleGAN的遷移學(xué)習(xí)以進(jìn)行數(shù)據(jù)增廣的應(yīng)用。行人重識(shí)別問題一個(gè)難點(diǎn)在于不同攝像頭下拍攝的人物環(huán)境,角度差別非常大,導(dǎo)致存在較大的Domain gap。因此,可以考慮使用GAN來產(chǎn)生不同攝像頭下的數(shù)據(jù)進(jìn)行數(shù)據(jù)增廣。[15]中提出了一個(gè)cycleGAN用于數(shù)據(jù)增廣的方法。具體模型結(jié)構(gòu)如下:
對(duì)于每一對(duì)攝像頭都訓(xùn)練一個(gè)cycleGAN,這樣就可以實(shí)現(xiàn)將一個(gè)攝像頭下的數(shù)據(jù)轉(zhuǎn)換成另一個(gè)攝像頭下的數(shù)據(jù),但是內(nèi)容(人物)保持不變。
3.5 其他應(yīng)用
GAN的變體繁多,應(yīng)用非常廣泛,在一寫非機(jī)器學(xué)習(xí)領(lǐng)域也有應(yīng)用,以下是一些例子。
3.5.1 醫(yī)學(xué)圖像分割
[16]提出了一種segmentor-critic結(jié)構(gòu)用于分割醫(yī)學(xué)圖像。segmentor類似于GAN中的生成器用于生成分割圖像,critic則最大化生成的分割圖像和ground truth之間的距離。此外,DI2IN使用GAN分割3D CT圖像,SCAN使用GAN用于分割X射線圖像。
3.5.2 圖片隱寫
隱寫指的是把秘密信息隱藏到非秘容器,比如圖片中。隱寫分析器則用于判別容器是否含有秘密信息。一些研究嘗試使用GAN的生成器生成帶有隱寫信息的圖片,判別器則有兩個(gè),一個(gè)用于判別圖片是否是真實(shí)圖片,另一個(gè)則判別圖片是否具有秘密信息[17]。
3.6.3 連續(xù)學(xué)習(xí)
連續(xù)學(xué)習(xí)目的在于解決多個(gè)任務(wù),且在學(xué)習(xí)過程中不斷積累新知識(shí)。連續(xù)學(xué)習(xí)中存在一個(gè)突出的問題就是“知識(shí)遺忘”。[18]中使用GAN的生成器作為一個(gè)scholars model,生成器不斷使用以往知識(shí)進(jìn)行訓(xùn)練,solver則給出答案,以此避免“知識(shí)遺忘”問題。
4. 討論
在第一,二部分我們討論了GAN及其變體,第三部分討論了GAN的應(yīng)用。下表總結(jié)了比較有名的一些GAN的模型結(jié)構(gòu)及其施加的額外約束。
前面都是對(duì)于GAN的微觀層面的探討。接下來,我們會(huì)站在一個(gè)宏觀的視角來討論GAN。
4.1 GAN的評(píng)價(jià)
GAN的評(píng)價(jià)方法多種多樣,現(xiàn)有的example-based(顧名思義,基于樣本層面做評(píng)價(jià))方法,均是對(duì)生成樣本與真實(shí)樣本提取特征,然后在特征空間做距離度量。具體框架如下:
關(guān)于本小節(jié)的符號(hào)對(duì)照關(guān)系如下:
生成數(shù)據(jù)分布
表示真實(shí)數(shù)據(jù)分布
:數(shù)學(xué)期望
:輸入樣本
:表示為生成樣本的采樣
:表示為真實(shí)樣本的采樣。
:樣本標(biāo)簽
M:分類網(wǎng)絡(luò),通常選擇Inception network
下面分別對(duì)常見的評(píng)價(jià)指標(biāo)進(jìn)行一一介紹:
4.1.1 Inception Score
對(duì)于一個(gè)在ImageNet訓(xùn)練良好的GAN,其生成的樣本丟給Inception網(wǎng)絡(luò)進(jìn)行測試的時(shí)候,得到的判別概率應(yīng)該具有如下特性:
對(duì)于同一個(gè)類別的圖片,其輸出的概率分布應(yīng)該趨向于一個(gè)脈沖分布。可以保證生成樣本的準(zhǔn)確性。
對(duì)于所有類別,其輸出的概率分布應(yīng)該趨向于一個(gè)均勻分布,這樣才不會(huì)出現(xiàn)mode collapsing等,可以保證生成樣本的多樣性。
因此,可以設(shè)計(jì)如下指標(biāo):根據(jù)前面分析,如果是一個(gè)訓(xùn)練良好的GAN,趨近于脈沖分布,趨近于均勻分布。二者KL散度會(huì)很大。Inception Score自然就高。實(shí)際實(shí)驗(yàn)表明,Inception Score和人的主觀判別趨向一致。IS的計(jì)算沒有用到真實(shí)數(shù)據(jù),具體值取決于模型M的選擇。
特點(diǎn):可以一定程度上衡量生成樣本的多樣性和準(zhǔn)確性,但是無法檢測過擬合。Mode Score也是如此。不推薦在和ImageNet數(shù)據(jù)集差別比較大的數(shù)據(jù)上使用。
4.1.2 Mode Score
Mode Score作為Inception Score的改進(jìn)版本,添加了關(guān)于生成樣本和真實(shí)樣本預(yù)測的概率分布相似性度量一項(xiàng)。具體公式如下:
4.1.3 Kernel MMD (Maximum Mean Discrepancy)
計(jì)算公式如下:
對(duì)于Kernel MMD值的計(jì)算,首先需要選擇一個(gè)核函數(shù)k,這個(gè)核函數(shù)把樣本映射到再生希爾伯特空間(Reproducing Kernel Hilbert Space, RKHS) ,RKHS相比于歐幾里得空間有許多優(yōu)點(diǎn),對(duì)于函數(shù)內(nèi)積的計(jì)算是完備的。將上述公式展開即可得到下面的計(jì)算公式:
MMD值越小,兩個(gè)分布越接近。
特點(diǎn):可以一定程度上衡量模型生成圖像的優(yōu)劣性,計(jì)算代價(jià)小。推薦使用。
4.1.4 Wasserstein distance
Wasserstein distance在最優(yōu)傳輸問題中通常也叫做推土機(jī)距離。這個(gè)距離的介紹在WGAN中有詳細(xì)討論。公式如下:
Wasserstein distance可以衡量兩個(gè)分布之間的相似性。距離越小,分布越相似。
特點(diǎn):如果特征空間選擇合適,會(huì)有一定的效果。但是計(jì)算復(fù)雜度為O(n^3)太高
4.1.5 Fréchet Inception Distance (FID)
FID距離計(jì)算真實(shí)樣本,生成樣本在特征空間之間的距離。首先利用Inception網(wǎng)絡(luò)來提取特征,然后使用高斯模型對(duì)特征空間進(jìn)行建模。根據(jù)高斯模型的均值和協(xié)方差來進(jìn)行距離計(jì)算。具體公式如下:
分別代表協(xié)方差和均值。
特點(diǎn):盡管只計(jì)算了特征空間的前兩階矩,但是魯棒,且計(jì)算高效。
4.1.6 1-Nearest Neighbor classifier
使用留一法,結(jié)合1-NN分類器(別的也行)計(jì)算真實(shí)圖片,生成圖像的精度。如果二者接近,則精度接近50%,否則接近0%。對(duì)于GAN的評(píng)價(jià)問題,作者分別用正樣本的分類精度,生成樣本的分類精度去衡量生成樣本的真實(shí)性,多樣性。
對(duì)于真實(shí)樣本,進(jìn)行1-NN分類的時(shí)候,如果生成的樣本越真實(shí)。則真實(shí)樣本空間將被生成的樣本包圍。那么的精度會(huì)很低。
對(duì)于生成的樣本,進(jìn)行1-NN分類的時(shí)候,如果生成的樣本多樣性不足。由于生成的樣本聚在幾個(gè)mode,則很容易就和區(qū)分,導(dǎo)致精度會(huì)很高。
特點(diǎn):理想的度量指標(biāo),且可以檢測過擬合。
4.1.7 其他評(píng)價(jià)方法
AIS,KDE方法也可以用于評(píng)價(jià)GAN,但這些方法不是model agnostic metrics。也就是說,這些評(píng)價(jià)指標(biāo)的計(jì)算無法只利用:生成的樣本,真實(shí)樣本來計(jì)算。
4.1.8 總結(jié)
實(shí)際實(shí)驗(yàn)發(fā)現(xiàn),MMD和1-NN two-sample test是最為合適的評(píng)價(jià)指標(biāo),這兩個(gè)指標(biāo)可以較好的區(qū)分:真實(shí)樣本和生成的樣本, mode collapsing。且計(jì)算高效。
總體說來,GAN的學(xué)習(xí)是一個(gè)無監(jiān)督學(xué)習(xí)過程,所以很難找到一個(gè)比較客觀的,可量化的評(píng)估指標(biāo)。有許多指標(biāo)在數(shù)值上雖然高,但是生成效果卻未必好。總之,GAN的評(píng)價(jià)目前依然是一個(gè)開放性的問題。
4.2 GAN與強(qiáng)化學(xué)習(xí)的關(guān)系
強(qiáng)化學(xué)習(xí)的目標(biāo)是對(duì)于一個(gè)智能體,給定狀態(tài)s,去選擇一個(gè)最佳的行為a(action)。通常的可以定義一個(gè)價(jià)值函數(shù)Q(s,a)來衡量,對(duì)于狀態(tài)s,采取行動(dòng)a的回報(bào)是Q(s,a),顯然,我們希望最大化這個(gè)回報(bào)值。對(duì)于很多復(fù)雜的問題,我們是很難定義這個(gè)價(jià)值函數(shù)Q(s,a)的,就像我們很難定義GAN生成的圖片到底有多好一樣。
說到這里,大家可能反應(yīng)過來了。GAN生成的圖片好不好,我確實(shí)找不到一個(gè)合適的指標(biāo),那我學(xué)習(xí)一個(gè)判別器去判斷一下生成圖片和真實(shí)圖片的距離不就好了嗎。強(qiáng)化學(xué)習(xí)里面的價(jià)值函數(shù)Q(s,a)難以定義,那直接用個(gè)神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)它就好了。典型的模型有InverseRL,GAIL等等
4.3 GAN的優(yōu)缺點(diǎn)
4.3.1 優(yōu)點(diǎn)
GAN的優(yōu)點(diǎn)在開頭已有所介紹。這里再總結(jié)一下:
GAN可以并行生成數(shù)據(jù)。相比于PixelCNN,PixelRNN這些模型,GAN生成非常快,因?yàn)镚AN使用Generator替代了采樣的過程
GAN不需要通過引入下界來近似似然。VAE由于優(yōu)化困難,引入了變分下界來優(yōu)化似然。但是VAE對(duì)于先驗(yàn)和后驗(yàn)分布做了假設(shè),使得VAE很難逼近其變分下界。
從實(shí)踐來看,GAN生成的結(jié)過要比VAE更清晰的多。
4.3.2 缺點(diǎn)
GAN的缺點(diǎn)在前文也有詳細(xì)討論,主要問題在于:
訓(xùn)練不穩(wěn)定,容易崩潰。這個(gè)問題有學(xué)者提出了許多解決方案,比如WGAN,LSGAN等
模式崩潰。盡管有很多相關(guān)的研究,但是由于圖像數(shù)據(jù)的高維度特性,這個(gè)問題依然還沒完全解決。
4.4 未來的研究方向
GAN的訓(xùn)練崩潰,模式崩潰問題等依然有待研究改進(jìn)。
Deep learning盡管很強(qiáng)大,但目前仍有許多領(lǐng)域無法征服,期待GAN在此基礎(chǔ)上會(huì)有一些作為
[1]: Hong, Yongjun, et al. "How Generative Adversarial Networks and its variants Work: An Overview of GAN."
[2]https://blog.csdn.net/victoriaw/article/details/60755698
[3]https://zhuanlan.zhihu.com/p/25071913
[4]https://mp.weixin.qq.com/s/gv-cpK161oyXinUyh05KXA
[5]https://blog.csdn.net/poulang5786/article/details/80766498
[6]https://spaces.ac.cn/archives/5253
[7]https://www.jianshu.com/p/42c42e13d09b
[8]https://medium.com/@jonathan_hui/gan-unrolled-gan-how-to-reduce-mode-collapse-af5f2f7b51cd
[9]https://medium.com/@jonathan_hui/gan-dragan-5ba50eafcdf2
[10]https://medium.com/@jonathan_hui/gan-cgan-infogan-using-labels-to-improve-gan-8ba4de5f9c3d
[11]https://blog.csdn.net/carrierlxksuper/article/details/60479883
[12]: Salimans, Tim, et al. "Improved techniques for training gans."Advances in neural information processing systems. 2016.
[13]https://blog.csdn.net/qq_25737169/article/details/78532719
[14]https://medium.com/@hitoshinakanishi/reading-note-triple-generative-adversarial-nets-fc3775e52b1e1
[15]: Zheng Z , Zheng L , Yang Y . Unlabeled Samples Generated by GAN Improve the Person Re-identification Baseline in VitroC// 2017 IEEE International Conference on Computer Vision (ICCV). IEEE Computer Society, 2017.
[16]: Yuan Xue, Tao Xu, Han Zhang, Rodney Long, and Xiaolei Huang. Segan: Adversar- ial network with multi-scale l_1 loss for medical image segmentation. arXiv preprint arXiv:1706.01805, 2017.
[17]: Denis Volkhonskiy, Ivan Nazarov, Boris Borisenko, and Evgeny Burnaev. Steganographicgenerative adversarial networks. arXiv preprint arXiv:1703.05502, 2017.
[18]: Shin, Hanul, et al. "Continual learning with deep generative replay."Advances in Neural Information Processing Systems. 2017.
總結(jié)
- 上一篇: 如何理解企业安全能力框架(IPDRR)
- 下一篇: 游标定位:Cursor类