ELBO 與 KL散度


淺談KL散度

一、第一種理解  

相對熵(relative entropy)又稱為KL散度(Kullback–Leibler divergence,簡稱KLD),信息散度(information divergence),信息增益(information gain)。

  KL散度是兩個概率分布P和Q差別的非對稱性的度量。

      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)]

  由於-log(u)是凸函數,因此有下面的不等式

  DKL(Q||P) = -∑x∈XQ(x)log[P(x)/Q(x)] = E[-logP(x)/Q(x)] ≥ -logE[P(x)/Q(x)] = -  log∑x∈XQ(x)P(x)/Q(x) = 0

  即KL-divergence始終是大於等於0的。當且僅當兩分布相同時,KL-divergence等於0。

  ===========================

  舉一個實際的例子吧:比如有四個類別,一個方法A得到四個類別的概率分別是0.1,0.2,0.3,0.4。另一種方法B(或者說是事實情況)是得到四個類別的概率分別是0.4,0.3,0.2,0.1,那么這兩個分布的KL-Distance(A,B)=0.1*log(0.1/0.4)+0.2*log(0.2/0.3)+0.3*log(0.3/0.2)+0.4*log(0.4/0.1)

  這個里面有正的,有負的,可以證明KL-Distance()>=0.

  從上面可以看出, KL散度是不對稱的。即KL-Distance(A,B)!=KL-Distance(B,A)

  KL散度是不對稱的,當然,如果希望把它變對稱,

  Ds(p1, p2) = [D(p1, p2) + D(p2, p1)] / 2.

二、第二種理解

  今天開始來講相對熵,我們知道信息熵反應了一個系統的有序化程度,一個系統越是有序,那么它的信息熵就越低,反之就越高。下面是熵的定義

如果一個隨機變量的可能取值為,對應的概率為,則隨機變量的熵定義為

  有了信息熵的定義,接下來開始學習相對熵。

  1. 相對熵的認識

   相對熵又稱互熵,交叉熵,鑒別信息,Kullback熵,Kullback-Leible散度(即KL散度)等。設

   是取值的兩個概率概率分布,則的相對熵為

   在一定程度上,熵可以度量兩個隨機變量的距離。KL散度是兩個概率分布P和Q差別的非對稱性的度量。KL散度是

   用來度量使用基於Q的編碼來編碼來自P的樣本平均所需的額外的位元數。 典型情況下,P表示數據的真實分布,Q

   表示數據的理論分布,模型分布,或P的近似分布。

2. 相對熵的性質

   相對熵(KL散度)有兩個主要的性質。如下

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

   (2)相對熵的值為非負值,即

       在證明之前,需要認識一個重要的不等式,叫做吉布斯不等式。內容如下

3. 相對熵的應用

   相對熵可以衡量兩個隨機分布之間的距離,當兩個隨機分布相同時,它們的相對熵為零,當兩個隨機分布的差別增

   大時,它們的相對熵也會增大。所以相對熵(KL散度)可以用於比較文本的相似度,先統計出詞的頻率,然后計算

   KL散度就行了。另外,在多指標系統評估中,指標權重分配是一個重點和難點,通過相對熵可以處理。

4.交叉熵與相對熵


參考:http://www.cnblogs.com/hxsyl/p/4910218.html

         https://www.zhihu.com/question/41252833


ELBO(證據下界)

網上關於ELBO的內容較少,主要常出現在變分推斷當中。

例如在用EM處理LDA主題模型時,

看看文檔數據的對數似然函數 log(w|\alpha,\eta) 如下,為了簡化表示,用 E_{q}(x) 代替 E_{q(\beta,z,\theta|\lambda,\phi,\gamma)}(x) ,用來表示 x 對於變分分布 q(\beta,z,\theta|\lambda,\phi,\gamma) 的期望。

其中,從第(5)式到第(6)式用到了Jensen不等式:

一般把第(7)式記為:

由於 L(\lambda,\phi,\gamma;\alpha,\eta) 是我們的對數似然的一個下界(第6式),所以這個L一般稱為ELBO(Evidence Lower BOund)。那么這個ELBO和我們需要優化的的KL散度有什么關系呢?注意到:

在(10)式中,由於對數似然部分和我們的KL散度無關,可以看做常量,因此我們希望最小化KL散度等價於最大化ELBO。那么我們的變分推斷最終等價的轉化為要求ELBO的最大值。現在我們開始關注於極大化ELBO並求出極值對應的變分參數λ,ϕ,γ。

 


 

參考文獻:https://zhuanlan.zhihu.com/p/29932017


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM