日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GANs笔记

發布時間:2024/1/1 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GANs笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

GANs

判別模型與生成模型

**生成方法的特點:**可以從統計的角度表示數據的分布情況,能夠反映同類數據本身的相似度。但它不關心到底劃分各類的那個分類邊界在哪。生成方法可以還原出聯合概率分布P(Y|X),而判別方法不能。生成方法的學習收斂速度更快,即當樣本容量增加的時候,學到的模型可以更快的收斂于真實模型,當存在隱變量時,仍可以用生成方法學習。此時判別方法就不能用。

**判別方法的特點:**不能反映訓練數據本身的特性。但它尋找不同類別之間的最優分類面,反映的是異類數據之間的差異。直接面對預測,往往學習的準確率更高。由于直接學習P(Y|X)或P(X),可以對數據進行各種程度上的抽象、定義特征并使用特征,因此可以簡化學習問題。

*生成模型和判別模型的聯系*

? 由生成模型可以得到判別模型,但由判別模型得不到生成模型。

對抗網絡思想

對抗網絡只是提出了一種網絡結構,總體來說,整個框架還是很簡單的。GANs簡單的想法就是用兩個模型,一個生成模型,一個判別模型。判別模型用于判斷一個給定的圖片是不是真實的圖片(從數據集里獲取的圖片),生成模型的任務是去創造一個看起來像真的圖片一樣的圖片。

交叉熵損失函數
L=?[ylogY+(1?ylog(1?Y))](Y為輸出值,y為0∣1)L=-[ylogY+(1-ylog(1-Y))](Y為輸出值,y為0|1) L=?[ylogY+(1?ylog(1?Y))](Yy01)
前向傳播階段:

  • 兩種輸入,一種是faka image(生成模型生成),一種是隨機的從數據集中選出
  • 經過判別網絡后輸入值為一個0到1之間的數,用于表示輸入圖片為Real Image的概率,real為1,fake為0。
  • 使用得到的概率值計算損失函數。

損失函數

判別模型的損失函數:
?((1?y)log(1?D(G(z)))+ylog(D(x)))-((1-y)log(1-D(G(z)))+ylog(D(x))) ?((1?y)log(1?D(G(z)))+ylog(D(x)))
實際上是D(x)的交叉熵損失函數,在將輸入的G(z)判斷為0時,反向傳播加強這部分。

當輸入的是從數據集中取出的real Iamge 數據時,我們只需要考慮第二部分,D(x)為判別模型的輸出,表示輸入x為real 數據的概率,我們的目的是讓判別模型的輸出D(x)的輸出盡量靠近1。
當輸入的為fake數據時,我們只計算第一部分,G(z)是生成模型的輸出,輸出的是一張Fake Image。我們要做的是讓D(G(z))的輸出盡可能趨向于0。這樣才能表示判別模型是有區分力的。

生成模型的損失函數
(1?y)log(1?D(G(z)))(1-y)log(1-D(G(z))) (1?y)log(1?D(G(z)))
對于生成模型來說,我們要做的是讓G(z)產生的數據盡可能的和數據集中的數據一樣。就是所謂的同樣的數據分布。那么我們要做的就是最小化生成模型的誤差,即只將G(z)產生的誤差傳給生成模型。
但是針對判別模型的預測結果,要對梯度變化的方向進行改變。當判別模型認為G(z)輸出為真實數據集的時候和認為輸出為噪聲數據的時候,梯度更新方向要進行改變。

反向傳播:

我們已經得到了生成模型和判別模型的損失函數,這樣分開看其實就是兩個單獨的模型,針對不同的模型可以按照自己的需要去是實現不同的誤差修正,我們也可以選擇最常用的BP做為誤差修正算法,更新模型參數。

總結

以上是生活随笔為你收集整理的GANs笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。