生成對抗網(wǎng)絡(luò) – GAN 是最近2年很熱門的一種無監(jiān)督算法,他能生成出非常逼真的照片,圖像甚至視頻。我們手機(jī)里的照片處理軟件中就會使用到它。
目錄
生成對抗網(wǎng)絡(luò) GAN 的基本原理
大白話版本
非大白話版本
第一階段:固定「判別器D」,訓(xùn)練「生成器G」
第二階段:固定「生成器G」,訓(xùn)練「判別器D」
循環(huán)階段一和階段二
GAN的優(yōu)缺點(diǎn)
10大典型的GAN算法
GAN 的13種實(shí)際應(yīng)用
人工提取特征——自動(dòng)提取特征
深度學(xué)習(xí)最特別最厲害的地方就是能夠自己學(xué)習(xí)特征提取。
機(jī)器的超強(qiáng)算力可以解決很多人工無法解決的問題。自動(dòng)化后,學(xué)習(xí)能力更強(qiáng),適應(yīng)性也更強(qiáng)。
人工判斷生成結(jié)果的好壞——自動(dòng)判斷和優(yōu)化
訓(xùn)練集需要大量的人工標(biāo)注數(shù)據(jù),這個(gè)過程是成本很高且效率很低的。而人工判斷生成結(jié)果的好壞也是如此,有成本高和效率低的問題。
而 GAN 能自動(dòng)完成這個(gè)過程,且不斷的優(yōu)化,這是一種效率非常高,且成本很低的方式。GAN是如何實(shí)現(xiàn)自動(dòng)化的呢?下面我們講解一下他的原理。
生成對抗網(wǎng)絡(luò) GAN 的基本原理
大白話版本
知乎上有一個(gè)很不錯(cuò)的解釋,大家應(yīng)該都能理解:
假設(shè)一個(gè)城市治安混亂,很快,這個(gè)城市里就會出現(xiàn)無數(shù)的小偷。在這些小偷中,有的可能是盜竊高手,有的可能毫無技術(shù)可言。假如這個(gè)城市開始整飭其治安,突然開展一場打擊犯罪的「運(yùn)動(dòng)」,警察們開始恢復(fù)城市中的巡邏,很快,一批「學(xué)藝不精」的小偷就被捉住了。之所以捉住的是那些沒有技術(shù)含量的小偷,是因?yàn)榫靷兊募夹g(shù)也不行了,在捉住一批低端小偷后,城市的治安水平變得怎樣倒還不好說,但很明顯,城市里小偷們的平均水平已經(jīng)大大提高了。
警察們開始繼續(xù)訓(xùn)練自己的破案技術(shù),開始抓住那些越來越狡猾的小偷。隨著這些職業(yè)慣犯們的落網(wǎng),警察們也練就了特別的本事,他們能很快能從一群人中發(fā)現(xiàn)可疑人員,于是上前盤查,并最終逮捕嫌犯;小偷們的日子也不好過了,因?yàn)榫靷兊乃酱蟠筇岣?,如果還想以前那樣表現(xiàn)得鬼鬼祟祟,那么很快就會被警察捉住。
非大白話版本
生成對抗網(wǎng)絡(luò)(GAN)由2個(gè)重要的部分構(gòu)成:
- 生成器(Generator):通過機(jī)器生成數(shù)據(jù)(大部分情況下是圖像),目的是“騙過”判別器
- 判別器(Discriminator):判斷這張圖像是真實(shí)的還是機(jī)器生成的,目的是找出生成器做的“假數(shù)據(jù)”
下面詳細(xì)介紹一下過程:
第一階段:固定「判別器D」,訓(xùn)練「生成器G」
我們使用一個(gè)還 OK 判別器,讓一個(gè)「生成器G」不斷生成“假數(shù)據(jù)”,然后給這個(gè)「判別器D」去判斷。
一開始,「生成器G」還很弱,所以很容易被揪出來。
但是隨著不斷的訓(xùn)練,「生成器G」技能不斷提升,最終騙過了「判別器D」。
到了這個(gè)時(shí)候,「判別器D」基本屬于瞎猜的狀態(tài),判斷是否為假數(shù)據(jù)的概率為50%。
第二階段:固定「生成器G」,訓(xùn)練「判別器D」
當(dāng)通過了第一階段,繼續(xù)訓(xùn)練「生成器G」就沒有意義了。這個(gè)時(shí)候我們固定「生成器G」,然后開始訓(xùn)練「判別器D」。
「判別器D」通過不斷訓(xùn)練,提高了自己的鑒別能力,最終他可以準(zhǔn)確的判斷出所有的假圖片。
到了這個(gè)時(shí)候,「生成器G」已經(jīng)無法騙過「判別器D」。
循環(huán)階段一和階段二
通過不斷的循環(huán),「生成器G」和「判別器D」的能力都越來越強(qiáng)。
最終我們得到了一個(gè)效果非常好的「生成器G」,我們就可以用它來生成我們想要的圖片了。
下面的實(shí)際應(yīng)用部分會展示很多“驚艷”的案例。
如果對 GAN 的詳細(xì)技術(shù)原理感興趣,可以看看下面2篇文章:
《生成性對抗網(wǎng)絡(luò)(GAN)初學(xué)者指南 – 附代碼》
《長文解釋生成對抗網(wǎng)絡(luò)GAN的詳細(xì)原理(20分鐘閱讀)》
GAN的優(yōu)缺點(diǎn)
3個(gè)優(yōu)勢
- 能更好建模數(shù)據(jù)分布(圖像更銳利、清晰)
- 理論上,GANs 能訓(xùn)練任何一種生成器網(wǎng)絡(luò)。其他的框架需要生成器網(wǎng)絡(luò)有一些特定的函數(shù)形式,比如輸出層是高斯的。
- 無需利用馬爾科夫鏈反復(fù)采樣,無需在學(xué)習(xí)過程中進(jìn)行推斷,沒有復(fù)雜的變分下界,避開近似計(jì)算棘手的概率的難題。
2個(gè)缺陷
- 難訓(xùn)練,不穩(wěn)定。生成器和判別器之間需要很好的同步,但是在實(shí)際訓(xùn)練中很容易D收斂,G發(fā)散。D/G 的訓(xùn)練需要精心的設(shè)計(jì)。
- 模式缺失(Mode Collapse)問題。GANs的學(xué)習(xí)過程可能出現(xiàn)模式缺失,生成器開始退化,總是生成同樣的樣本點(diǎn),無法繼續(xù)學(xué)習(xí)。
10大典型的GAN算法
GAN 算法有數(shù)百種之多,大家對于 GAN 的研究呈指數(shù)級的上漲,目前每個(gè)月都有數(shù)百篇論壇是關(guān)于對抗網(wǎng)絡(luò)的。
下圖是每個(gè)月關(guān)于 GAN 的論文發(fā)表數(shù)量:
如果你對 GANs 算法感興趣,可以在 「GANs動(dòng)物園」里查看幾乎所有的算法。我們?yōu)榇蠹覐谋姸嗨惴ㄖ刑暨x了10個(gè)比較有代表性的算法,技術(shù)人員可以看看他的論文和代碼。
算法 | 論文 | 代碼 |
---|---|---|
GAN | 論文地址 | 代碼地址 |
DCGAN | 論文地址 | 代碼地址 |
CGAN | 論文地址 | 代碼地址 |
CycleGAN | 論文地址 | 代碼地址 |
CoGAN | 論文地址 | 代碼地址 |
ProGAN | 論文地址 | 代碼地址 |
WGAN | 論文地址 | 代碼地址 |
SAGAN | 論文地址 | 代碼地址 |
BigGAN | 論文地址 | 代碼地址 |
上面內(nèi)容整理自《Generative Adversarial Networks – The Story So Far》原文中對算法有一些粗略的說明,感興趣的可以看看。
GAN 的13種實(shí)際應(yīng)用
GAN 看上去不如「語音識別」「文本挖掘」那么直觀。不過他的應(yīng)用已經(jīng)進(jìn)入到我們的生活中了。下面給大家列舉一些 GAN 的實(shí)際應(yīng)用。
生成圖像數(shù)據(jù)集
人工智能的訓(xùn)練是需要大量的數(shù)據(jù)集的,如果全部靠人工收集和標(biāo)注,成本是很高的。GAN 可以自動(dòng)的生成一些數(shù)據(jù)集,提供低成本的訓(xùn)練數(shù)據(jù)。
生成人臉照片
生成人臉照片是大家很熟悉的應(yīng)用,但是生成出來的照片用來做什么是需要思考的問題。因?yàn)檫@種人臉照片還處于法律的邊緣。
生成照片、漫畫人物
GAN 不但能生成人臉,還能生成其他類型的照片,甚至是漫畫人物。
圖像到圖像的轉(zhuǎn)換
簡單說就是把一種形式的圖像轉(zhuǎn)換成另外一種形式的圖像,就好像加濾鏡一樣神奇。例如:
- 把草稿轉(zhuǎn)換成照片
- 把衛(wèi)星照片轉(zhuǎn)換為Google地圖的圖片
- 把照片轉(zhuǎn)換成油畫
- 把白天轉(zhuǎn)換成黑夜
文字到圖像的轉(zhuǎn)換
特別是他們的 StackGAN,從鳥類和花卉等簡單對象的文本描述中生成逼真的照片。
語意 – 圖像 – 照片 的轉(zhuǎn)換
在2017年標(biāo)題為“?高分辨率圖像合成和帶條件GAN的語義操縱?”的論文中,演示了在語義圖像或草圖作為輸入的情況下使用條件GAN生成逼真圖像。
自動(dòng)生成模特
在2017年標(biāo)題為“?姿勢引導(dǎo)人形象生成?”的論文中,可以自動(dòng)生成人體模特,并且使用新的姿勢。
照片到Emojis
GANs 可以通過人臉照片自動(dòng)生成對應(yīng)的表情(Emojis)。
照片編輯
使用GAN可以生成特定的照片,例如更換頭發(fā)顏色、更改面部表情、甚至是改變性別。
預(yù)測不同年齡的長相
給一張人臉照片, GAN 就可以幫你預(yù)測不同年齡階段你會長成什么樣。
提高照片分辨率,讓照片更清晰
給GAN一張照片,他就能生成一張分辨率更高的照片,使得這個(gè)照片更加清晰。
照片修復(fù)
假如照片中有一個(gè)區(qū)域出現(xiàn)了問題(例如被涂上顏色或者被抹去),GAN可以修復(fù)這個(gè)區(qū)域,還原成原始的狀態(tài)。
自動(dòng)生成3D模型
給出多個(gè)不同角度的2D圖像,就可以生成一個(gè)3D模型。
生成式對抗網(wǎng)絡(luò)(GAN, Generative Adversarial Networks )
是一種深度學(xué)習(xí)模型,是近年來復(fù)雜分布上無監(jiān)督學(xué)習(xí)最具前景的方法之一。模型通過框架中(至少)兩個(gè)模塊:生成模型(Generative Model)和判別模型(Discriminative Model)的互相博弈學(xué)習(xí)產(chǎn)生相當(dāng)好的輸出。原始 GAN 理論中,并不要求 G 和 D 都是神經(jīng)網(wǎng)絡(luò),只需要是能擬合相應(yīng)生成和判別的函數(shù)即可。但實(shí)用中一般均使用深度神經(jīng)網(wǎng)絡(luò)作為 G 和 D 。一個(gè)優(yōu)秀的GAN應(yīng)用需要有良好的訓(xùn)練方法,否則可能由于神經(jīng)網(wǎng)絡(luò)模型的自由性而導(dǎo)致輸出不理想。文章來源:http://www.zghlxwxcb.cn/news/detail-674871.html
生成對抗網(wǎng)絡(luò)(GAN)是一類用于無監(jiān)督機(jī)器學(xué)習(xí)的人工智能算法,由在零和游戲框架中相互競爭的兩個(gè)神經(jīng)網(wǎng)絡(luò)系統(tǒng)實(shí)現(xiàn)。他們是由Ian Goodfellow 等人介紹的。在2014年這種技術(shù)可以生成照片看起來至少在表面上真實(shí)的人的觀察員,有很多的現(xiàn)實(shí)特征(雖然在測試中的人可以真正告訴在許多情況下產(chǎn)生)。文章來源地址http://www.zghlxwxcb.cn/news/detail-674871.html
到了這里,關(guān)于深度學(xué)習(xí)7:生成對抗網(wǎng)絡(luò) – Generative Adversarial Networks | GAN的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!