【深度學習】生成式對抗網絡(GAN)的常見評價指標:IS/FID/JS散度

前言

生成式對抗網絡的目標是生成高質量且多樣性的樣本,而一般的loss對其衡量能力有限,也無法像分類問題這種監督學習一樣通過準確率等指標衡量。因此需要一些特定的方式對其進行衡量,本文主要介紹場景的幾種衡量方式,即IS、FID與JS散度,能夠從不同角度對GAN的效果進行衡量。

IS

IS即Inception Score,是一種比較常用的GAN模型評價指標。其設計基於GAN評價的兩大指標,即結果的質量與多樣性。前者一般是圖像的清晰度,後者則是能否生成足夠多樣的圖片,有些模型只能生成有限的幾種,即陷入了上面提到的模式坍塌。
其對清晰度的考慮主要是基於以下假設:對於一個清晰的圖片,它屬於某一類的概率應該非常大,而屬於其它類的概率應該很小。當然這個假設不是完全正確的,很多清晰的圖像也難以分辨其具體的類別。但至少可以說得到的結果有明顯的特徵,也是其質量高的一種表現。這樣的描述可以用熵來評價,質量高的結果熵應該很小,或者說混亂度很小,有明顯的類別歸屬;多樣性則是從生成結果的類別來衡量的,類別越多越均勻說明多樣性越好。這一點同樣也可以通過熵來評價。
綜上兩點,可以得到下面的公式:

僅從衡量大小的角度由於e指數函數爲遞增函數,故其意義主要在於數值大小的放縮,不影響單調性。IS的核心在於內部對生成結果KL散度的計算,KL 散度用以衡量兩個概率分佈的距離,是非負的。KL散度值越大說明這兩個概率分佈越不像,不過注意這個距離不是對稱的,其公式如下:

根據上面的介紹,p(y|x)某個維度應該比較大,而p(y)比較均勻,或者說前者屬於比較極端的分佈,而後者比較均勻,因此主要兩者距離足夠大,或者說KL散度足夠大,那麼IS的值便會比較大。另外,實際應用中一般將數學期望改爲均值。

JS散度

KL散度可以用來表示概率分佈之間的差異,但由於其是不對稱的,所以在某些方面可能會存在一些問題。爲了克服不對稱性提出了JS散度,其公式如下:

從公式可以看出,JS散度是對稱的,且取值在0到1之間,當兩個分佈相同時爲0。相對於KL散度,對相似度的判斷更加準確。需要注意的一點,當分佈距離過遠而完全沒有重疊時,KL散度是沒有意義的,相應的JS散度也無法衡量,相當於梯度消失了。

FID

IS在計算時只使用生成數據的相關信息,對真實數據缺乏考慮,因此無法很好地反映真實數據和生成數據的距離。FID綜合考慮了真實數據與生成數據的分佈,通過計算其均值與協方差信矩陣行衡量,其公式如下:

可以看到,對於FID數值越小說明兩者越接近,說明兩者的均值與協方差都比較接近。因爲FID直接衡量了生成數據與真實數據的距離,能夠避免模式坍塌導致衡量上的問題,避開了IS的很多缺陷。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章