目錄
- 香農信息量、信息熵、交叉熵
- KL散度(Kullback–Leibler divergence)
- JS散度(Jensen-Shannon divergence )
- Wasserstein距離
- 幾種距離對比
- GAN相關應用
一、香農信息量、信息熵、交叉熵
香農信息量
設p為隨機變量X的概率分布,即p(x)為隨機變量X在X=x處的概率密度函數值,隨機變量X在x處的香農信息量定義為:
其中對數以2為底,這時香農信息量的單位為比特。香農信息量用於刻畫消除隨機變量X在x處的不確定性所需的信息量的大小。如隨機事件"中國足球進不了世界杯"不需要多少信息量(比如要不要多觀察幾場球賽的表現)就可以消除不確定性,因此該隨機事件的香農信息量就少。再比如"拋一個硬幣出現正面",要消除它的不確定性,通過簡單計算,需要1比特信息量,這意味着隨機試驗完成后才能消除不確定性。
信息熵H(p)
越有序,信息熵越低。衡量隨機變量X(或整個樣本空間)的總體香農信息量。信息熵H(p)是香農信息量-logp(x)的數學期望,即所有X=x處的香農信息量的和,即用p(x)加權求和。因此信息熵是用於刻畫消除隨機變量X的不確定性所需要的總體信息量的大小。其數學定義如下:
交叉熵
假設q(x)為擬合概念,p(x)為真實分布。q是用來擬合p的概率分布,x屬於p的樣本空間,交叉熵用於衡量q在擬合p的過程中,用於消除不確定性而充分使用的信息量大小(理解為衡量q為了擬合p所付出的努力,另外注意交叉熵定義里的"充分使用"和信息熵定義里的"所需"的區別,"充分使用"不一定能達到全部,"所需"是指全部)。由於在每一個點X=x處q的香農信息量為-logq(x),也就是在點X=x處,q消除不確定性而充分使用的信息量為-logq(x)(理解為衡量q在X=x處為了擬合p所作的努力。越小越准確,實例可見本文最后),那么就可以計算出在整個樣本空間上q消除不確定性而充分使用的總體信息量,即-logq(x)的數學期望,由於每個x的權重為p(x),因此交叉熵H(p,q)為:
二、KL散度(Kullback–Leibler divergence)
兩個概率分布p和q的KL散度也稱為相對熵,信息增益,用於刻畫概率分布q擬合概率分布p的程度。在生成對抗網絡里,p為真實數據的概率分布,q為隨機噪聲生成數據的概率分布,對抗的目的是讓q充分擬合p。在q擬合概率分布p的過程中,如果q完全擬合p,自然有H(p)=H(p,q),如果q擬合p不充分,自然產生信息損耗H(p)-H(p,q),整個信息損耗就是p和q的KL散度。其實衡量兩種概率分布的相似程度,其越小,表示兩種概率分布越接近。因此p和q的KL散度的定義如下:
因此散度D(p||q)為信息熵H(p)與交叉熵H(p,q)的差,衡量q擬合p的過程中產生的信息損耗,損耗越少,q擬合p也就越好。很明顯散度是不對稱的,並不是p和q的距離。性質:
描述兩個概率分布P,Q之間的差異
因為對數函數是凸函數,所以KL散度的值為非負數。
相對熵 = 交叉熵 – 信息熵: D(p||q) = H(p,q) – H(p)
有時會將KL散度稱為KL距離,但它並不滿足距離的性質:
1. KL散度不是對稱的:KL(A,B) ≠ KL(B,A)
2. KL散度不滿足三角不等式: KL(A,B) > KL(A,C)+KL(C,B)
三、JS散度(Jensen-Shannon divergence )
KL散度的缺點:不是距離、不對稱。因此引進JS散度的概念,其取值是0到1之間。JS散度的定義如下:
由定義可以看出,JS散度是對稱的,可以用於衡量兩種不同分布之間的差異。JS散度用於生成對抗網絡的數學推導上。
JS散度和KL散度聯系和差異:
1、相同點:
但p和q相同時,這個兩個都值為0
2、不同點:隨着兩個分布差異越來越大,他們的JS散度的值會逐漸增大。但是當他們足夠大(極端一點考慮當一個為1一個為0的時候),他們的值就收斂到1了,也就是說他們差異足夠大的時候,JS散度會收斂到一個常數。這個時候應該對梯度下降就沒有指導意義了。
四、 Wasserstein距離
Wasserstein距離又叫Earth-Mover(EM)距離,定義如下:
先要知道的是wasserstein-1 距離是人為定義的對於兩個分布Pr和Pg間差異的測量。再來看式子,∏(Pr, Pg)為Pr和Pg的聯合分布的集合。我們從這個集合里面任選一個聯合分布r,對應這個r聯合分布,求出(x,y)服從r這個分布時x,y兩個點對於||x-y||的期望值。對於聯合分布集合里面所有的聯合分布,我們都能求出這樣一個期望值,其中最小的那個期望值就是我們要求的wasserstein-1 距離了。
直觀上可以把E(x,y)∼γ[||x−y||]理解為在γ這個路徑規划下把土堆Pr挪到土堆Pg所需要的消耗。而Wasserstein距離就是在最優路徑規划下的最小消耗。所以Wesserstein距離又叫Earth-Mover距離。
Wessertein距離相比KL散度和JS散度的優勢在於:
Wasserstein距離相比KL散度、JS散度的優越性在於,即便兩個分布沒有重疊,Wasserstein距離仍然能夠反映它們的遠近。而JS散度在此情況下是常量2log2,KL散度可能無意義。
五、幾種距離對比
KL散度和JS散度是突變的,要么最大要么最小,Wasserstein距離卻是平滑的,如果我們要用梯度下降法優化Θ這個參數,前兩者根本提供不了梯度,Wasserstein距離卻可以。類似地,在高維空間中如果兩個分布不重疊或者重疊部分可忽略,則KL和JS既反映不了遠近,也提供不了梯度,但是Wasserstein卻可以提供有意義的梯度。
六、 GAN相關應用
GAN:Gennerator和Discriminator的KL散度和JS散度解釋
Generator中θ的極大似然估計(是求真實分布和生成器分布的KL散度的最小值):
實際應用:
1、交叉熵損失函數的例子解釋:損失函數越低越准確
