tensorflow學習5 GAN模型初探

2022-08-20 02:00:14 字數 3611 閱讀 9877

生成模型:

通過觀測學習樣本和標籤的聯合概率分布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回。

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網路根據得到的特徵圖的差異來定義損失項並對該差異加上規則化的處理。

)(方法:文字進行編碼後的特徵與隨機雜訊資訊串接輸入產生器產生影象-->而編碼後的文字特徵也同時作為監督訊號輸入判別器以構建目標函式)

計算智慧型---》 認知智慧型-------》感知智慧型

TensorFlow學習筆記5 概率與資訊理論

本筆記內容為 概率與資訊理論的基礎知識 內容主要參考 deep learning 中文版。連續型變數 概率密度函式 probability density function,pdf p x 表示無窮小區域的概率為 p x delta x 邊緣概率 條件概率 p y y 0 x x 0 frac 條件...

機器學習筆記5 TensorFlow的了解與執行

本文的主要內容參考於tensorflow中文社群內容,並在下面的文章中測試其中的樣例 本文主要是在完成tensorflow的配置後,呼叫python api進行測試的一段tensorflow的測試 演算法主要的內容就是產生一些隨機資料,然後構建乙個平面去擬合這些資料。採用的演算法也就是梯度下降的方式...

tensorflow 學習 學習中

基於 virtualenv 的安裝 在 linux 上 sudo apt get install python pip python dev python virtualenv 在 mac 上 sudo easy install pip 如果還沒有安裝 pip sudo pip install up...