tensorflow學習5----GAN模型初探


生成模型:

通過觀測學習樣本和標簽的聯合概率分布P(X,Y)進行訓練,訓練好的模型能夠生成符合樣本分布的新數據,在無監督學習方面,生成式模型能夠捕獲數據的高階相關性,通過學習真實數據的本質特征,刻畫樣本數據的分布特征,生成與訓練樣本相似的新數據

生成式模型的分類:1. Autoencoder 2.自回歸模型 3.生成對抗網絡(gan,,generative adversarial networks)

Generative Adversarial Nworks: 1. generative model--->G     2.discriminative model------>D

Generative model: 生成模型捕捉樣本數據的分布。

Discriminative model :是一個二分類器,用於判別輸入數據是否真實。

總結:模型的優化過程屬於二元極小極大博弈問題,模型訓練時固定一方,更新另一方的參數,交替迭代,使得對方的錯誤最大化。最終,G 能估測出樣本數據的分布。

Generitive Adversarial Networks Advantage :

1.可以漸進的逼近任意概率分布,可以認為是一種非參數的產生式建模方法,如果鑒別器訓練良好,那么生成器可以玩美的學習到訓練樣本的分布 GAN是漸進一致的!generative adversarial model

2.GAN 是整幅圖像進行衡量、評價和生成,生成采樣的運行時間更短,一次產生一個樣本,GAN考慮了整體信息且速度相對較快。

3.GAN理論上可以訓練任何生成網絡,可以訓練生成靠近真實數據的地方產生樣本點的模型,沒有必要遵循任何種類的因子分解去設計模型。

4.劣勢: 訓練過程的穩定性和收斂性難以保證。

目前Generative Adversarial Networks 的分類:

1.CGAN:Conditional generative adversarial networks.

2.DCGAN: deep convolution generative adversarial networks.

3.VAEGAN:自動編碼生成對抗網絡

GAN的起源:

來源於博弈論的納什均衡,包含generative model(G) 和 discriminative model (D) 。

目的: D輔助G產生與真實數據分布一致的偽數據。


 

GAN用於二次場降噪:

1.模型的輸入為隨機高斯白噪聲信號z。 --------->二次場實測信號

2.噪聲信號經由生成器經由G模型 映射到某個新的數據空間,得到生成數據G(z)。

3.由D 模型 根據真實數據x(二次場反演的理論信號)與生成數據G(z)的輸入來分別輸出一個概率值,表示D判斷輸入是真實數據還是生成虛假數據的置信度,以此判斷G的產生數據的性能的好壞。

4.當D不能區別真實數據x和生成數據G(z)時,認為生成器G達到最優。


D的目標是區分兩者: D(x)盡可能大,而同時使D(G(z))盡量小,兩者差異盡可能大。

G的目標: 使產生的數據在D上的表現D(G(z))盡量與真實數據在D上的表現D(x)一致,讓D不能區分生成數據與真實數據。

D和G相互競爭相互對抗,G和D的性能在迭代過程中不斷提高,直到最后D(G(z))和真實數據的表現D(x)一致后不再優化。

加入求期望的操作,使G產生的數據既與真實數據有一定相似,同時又不完全同於真實數據,提高了模型的泛化能力。


 

注意: GAN不需要預設數據分布,理論上可以完全逼近真實數據,這也是GAN最大的優勢。

特別注意,對於較大的圖片,較多像素的情形,簡單GAN的方式不太可控,經常出現訓練崩塌的情形。

 


 

GAN中,每次學習參數的更新過程,為了防止這種情形,設為D更新K回,G才更新1回。

CGAN: 給GAN添加約束條件:草稿圖生成圖片

DCGAN:將有監督的學習模型CNN和無監督學習的GAN結合在一起。

infoGAN:輸出改為G(z,c),有隱含意義的一組隱變量c和不能分解的有意義的noise z。

對抗網路的目的是在高維非凹的參數空間中,找到納什均衡。但在GAN中使用梯度下降只會找到低的損失,不能找到真正的納什均衡。


 

對工程實踐的四點建議:

1. discriminative model 最后一層去掉 sigmod 

2.生成器與判別器的loss不取log

3.每次更新判別器D之后,把D中參數的絕對值截斷到一個固定常數

4.用ADAM


 

GAN的應用

1.圖片合成。

2.深度GAN模型,進行圖片修補能根據確實區域的周邊區域進行語義層面的修補,如 DCGAN+ADAM完成圖像修補。

3.超分辨率:圖像增強。  方法將16*16低分辨率圖片作為約束條件,生成最合理解釋的64*64的真實圖片。

如此較好的超分辨率結果僅在小類別、規則分割的圖片中適用。

超分辨率最通用的方法(super resolution generative adversarial networks,SRGAN)不依賴小類細化類別的數據集,能對各種類型的圖片進行降噪和增強。SRGAN的特色是:

1.將圖像空間的損失,替換為一個生成圖像整體方差的約束項,以保證圖像的平滑性

2.將真實數據與生成數據分別輸入VGG-19網絡根據得到的特征圖的差異來定義損失項並對該差異加上規則化的處理。

3.結合三個損失:對抗損失,圖像平滑項,特征圖差異,送入GAN網絡,生成超分辨率圖片。


 

草稿圖復原、圖片上色、視頻預測、文字生成圖片(CGAN,以文本描述為條件來產生圖像)(方法:文本進行編碼后的特征與隨機噪聲信息串接輸入產生器產生圖像-->而編碼后的文本特征也同時作為監督信號輸入判別器以構建目標函數)


計算智能---》 認知智能-------》感知智能

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM