GAN 發展歷程

2021-09-24 16:29:44 字數 3043 閱讀 5556

這幾年出現的比較有影響力的 gan,從最初的 goodfellow 版 gan 到近來大火的 biggan、stylegan 等,部落格的後續內容也是按照這張圖的順序進行的。

gan 路線圖。

goodfellow 版 gan

gan 是由 goodfellow 等人於 2014 年提出的(目前公認的說法)。其基本思想可以概括為:

gan 包含兩個神經網路,乙個神經網路嘗試生成真實的資料(主要是,也可能是其他資料的分布),而另乙個網路嘗試判別真實的和生成的資料。

標準的生成對抗網路結構。

這場「貓捉老鼠」的遊戲會一直繼續下去,直到系統達到所謂的「平衡」,即生成器生成的資料以假亂真到判別器無法判別。

goodfellow 等人 2014 年提出的 gan 生成的影象。

其他資源:

dcgan: 深度卷積生成對抗網路

dcgan 的思路可以簡單概括為:

標準的 gan 使用多層感知機作為網路結構。但是考慮到卷積神經網路在獲取影象特徵方面的效果,dcgan 採用了它作為主要網路結構。同時,dcgan 稍微做了一些調整,使用了轉置卷積操作(transposed convolution operation),它的另乙個名字是 deconvolution。轉置卷積幫助影象從低清晰度向高畫質晰度轉換,同樣的,採用多層轉置卷積可以使影象變得生動多彩。

卷積核的工作原理。通過卷積方式將稀疏的影象矩陣轉換為密集矩陣。

其他資源:

cgan: 條件生成對抗網路

原始的 gan 從雜訊中生成。因此,如果訓練的是一類圖(例如,狗),其能生成這一類。但是,如果訓練中同時有很多類(例如,狗和貓都有),則生成的是這些模糊的混合。而 cgan 可以讓使用者指定生成的分類。

具體的,cgan 將 one-hot 向量 y 和隨機雜訊向量 z 拼接,組成如下的結構:

使用 cgan 可以生成指定的 mnist 數字。

其他資源:

cyclegan

利用 gan 變體 cyclegan 進行風格遷移。

gan 不僅可以用來生成影象,還可以創造「馬+斑馬」這種疊加效果的影象,cyclegan 解決的就是這種問題,即影象到影象的轉換。

cyclegan 包含兩個生成器(g 和 f)和兩個判別器(d_x 和 d_y)。g 從 x 中得到一張影象,並嘗試將其對映到 y 中的某個影象。判別器 d_y **一張影象究竟是由 g 生成的還是 y 中的真實影象。

f 也進行類似的操作,即從 y 中得到一張影象,並嘗試將其對映到 x 中的某個影象。判別器 d_x **一張影象究竟是由 f 生成的還是 x 中的真實影象。

所有四個網路都是用普通 gan 的方式訓練的,直到得到強大的生成器 g 和 f,生成的影象分別騙過 d_x 和 d_y。

cyclegan 的結構。

利用 cyclegan 將畫家的畫風移植到**上。

cogan:成對(coupled)生成對抗網路

想要更好的結果?為什麼不試試兩個 gan?

cogan 的原作者這樣解釋:

「在這個系統中,有兩個隊伍,每個隊伍有兩個隊員。生成模型是其中乙個隊,生成乙個不屬於一類的對來迷惑判別器隊。判別器隊嘗試將的類,以及是否是訓練資料或生成資料都判別出來。兩個隊伍共享權重。」

cogan 的結構。

cogan 的效果。相比 dcgan 清晰度更高,更為真實。

其他資源: 

progan

訓練 gan 有很多問題,其中最大的問題是訓練的不穩定性。

有時候,判別器和生成器無法從彼此學習資料。有時候,生成的變得非常奇怪。

progan 可以通過逐層提高生成的解析度來用來穩定 gan 的訓練。

因此 progan 首先訓練乙個 4x4 的生成器和乙個 4x4 的判別器,並在訓練程序中逐漸增加層數,提高解析度。

progan 逐漸加深訓練的過程。隨著網路層數變深,影象越來越清晰。

wgan:wasserstein 生成對抗網路

wgan 中的「w」指的是 wasserstein。wgan 提出了一種新的代價函式。

過去 gan 的 minimax 目標函式

而 wgan 使用:

gan 的判別器和 wgan 的判別器在學習區分高斯分布資料的情況。gan 可能會出現梯度消失,但 wgan 在空間內始終保持穩健的梯度變化。

新的代價函式在數學上可以防止梯度消失的情況,因此具有更好的訓練穩定性。

wgan(左)和 dcgan(右)生成房子的效果對比。wgan 更穩健,出錯更少。

sagan:自注意力生成對抗網路

sagan 使用自注意力機制,在全域性影象中關注需要注意的特徵資訊。

sagan 使用注意力機制,高亮部位為注意力機制關注的位置。

biggan:大型生成對抗網路

biggan 由 deepmind 提出,由於生成效果高度逼真而被譽為「史上最強 gan 影象生成器」。

deepmind 在研究 gan 時嘗試了前無古人的事情。他們用強大的深度學習技術訓練 gan 的網路。

首先,deepmind 使用 sagan 作為基線,並新增了光譜特徵作為輸入。其次,他們將批大小提公升了 50%,通道數提公升了 20%。同時,研究人員使用了截斷方法來提公升樣本的質量。最終,他們在新的資料集 jft-300 上進行訓練,這是乙個類似於 imagenet 的資料集,但是有 3 億張。

biggan 生成的高畫質晰,包含各種類別。

stylegan:基於風格的生成對抗網路

stylegan 來自英偉達的一項研究,關注的是損失函式、穩定性、架構等。

因此,stylegan 沒有專注於生成更加逼真的影象,而是致力於提高 gan 對生成影象的精確控制能力。

為了達到影象風格級別的控制,stylegan 使用了適應例項歸一化(adaptive instance normalization)、潛在向量對映網路、不斷學習的輸入等已有技術。

web發展歷程

每次開啟瀏覽器想要去找一些時候,總是要先找度娘 www.baidu.com 通過度娘我們可以搜尋到全網的資源,但是無論開啟那個 開頭的永遠是那雷打不動的三個 w 呢?www其實是 的姓,就好像有人姓趙,有人姓錢。這個姓誰起的呢?是一位英國計算機科學家 蒂姆 伯納斯 李。英國科學家蒂姆 伯納斯 李於1...

Webpack發展歷程

1.grunt 2.gulp 4.x 3.browserify webpack 前身 4.webpack 主流行 5.rollup.js 6.parcel 7.fis 1.grunt 2.gulp 4.x 流的操作 pipe 3.browserify webpack 前身 沒有相容模組化問題 es6...

同徽發展歷程

thb2b 電子商務平台 同徽 b2b 自 2007年6 月開始研發至今已有 2年多的歷史,隨著版本的公升級完善,客戶也不斷的增加,產品的知名度也逐步的建立。1.2009年9 月底thb2b v442 版本發布 2.2009年8 月thb2b 啟動thb2b 品牌建設工作 3.2009年7 月同徽b...