1. 程式人生 > >KL散度(相對熵,資訊增益)學習筆記

KL散度(相對熵,資訊增益)學習筆記

1.定義

根據查閱相關資料,知相對熵(relative entropy)又稱為KL散度(Kullback–Leibler divergence,簡稱KLD),資訊散度(information divergence),資訊增益(information gain)。
KL散度是兩個概率分佈P和Q差別的非對稱性的度量。
對一個離散隨機變數的兩個概率分佈P和Q來說,他們的KL散度定義為:
這裡寫圖片描述

對於連續的隨機變數,定義為:
這裡寫圖片描述

注:
(1)p(x) 和q(x)分別是pq兩個隨機變數的PDF,Dkl(P||Q)是一個數值,而不是一個函式
(2)KL散度並不滿足距離的概念,應為:1)KL散度不是對稱的;2)KL散度不滿足三角不等式。
(3)P通常指資料集,我們已有的資料集,Q表示理論結果

2.性質

(1)儘管KL散度從直觀上是個度量或距離函式,但它並不是一個真正的度量或者距離,因為它不具有對稱性,即D(P||Q) ≠ D(Q||P)

(2)相對熵的值為非負值,即Dkl(P||Q)≥0,只有 P(x)=Q(x) 幾乎處處成立的時候,Dkl(P||Q)=0.
證明:利用 Jensen’s Inequality(直接用,證明略),可以得到。
吉布斯不等式內容如下:
所以,移項即可得到KL散度的證明。

3.理解

從資訊理論的角度,KL散度是用來度量使用基於Q的編碼來編碼來自P的樣本平均所需的額外的位元個數。 典型情況下,P表示資料的真實分佈,Q表示資料的理論分佈,模型分佈,或P的近似分佈。

根據shannon的資訊理論,給定一個字符集的概率分佈,我們可以設計一種編碼,使得表示該字符集組成的字串平均需要的位元數最少。假設這個字符集是X,對x∈X,其出現概率為P(x),那麼其最優編碼平均需要的位元數等於這個字符集的熵:

  H(X)=∑x∈XP(x)log[1/P(x)]

在同樣的字符集上,假設存在另一個概率分佈Q(X)。如果用概率分佈P(X)的最優編碼(即字元x的編碼長度等於log[1/P(x)]),來為符合分佈Q(X)的字元編碼,那麼表示這些字元就會比理想情況多用一些位元數。KL-divergence就是用來衡量這種情況下平均每個字元多用的位元數,因此可以用來衡量兩個分佈的距離。

即:
Dkl(Q||P)
=∑x∈XQ(x)[log(1/P(x))]-∑x∈XQ(x[log[1/Q(x)]]
=∑x∈XQ(x)log[Q(x)/P(x)]

4.擴充套件