(轉載)KL距離,Kullback-Leibler Divergence

來源:互聯網
上載者:User

標籤:

 

註:當兩個分布比較接近時,D會趨近于于0,當兩個分布差得比較遠時,D會趨近於1 

當兩個機率分布完全相同時,即P(x)=Q(X),其相對熵為0 。我們知道,機率分布P(X)的資訊熵為:

其表示,機率分布P(x)編碼時,平均每個基本事件(符號)至少需要多少位元編碼。通過資訊熵的學習,我們知道不存在其他比按照本身機率分布更好的編碼方式了,所以D(P||Q)始終大於等於0的。雖然KL被稱為距離,但是其不滿足距離定義的三個條件:1)非負性;2)對稱性(不滿足);3)三角不等式(不滿足)。

我們以一個例子來說明,KL距離的含義。

假如一個字元發射器,隨機發出0和1兩種字元,真實發出機率分布為A,但實際不知道A的具體分布。現在通過觀察,得到機率分布B與C。各個分布的具體情況如下:

A(0)=1/2,A(1)=1/2

B(0)=1/4,B(1)=3/4

C(0)=1/8,C(1)=7/8

那麼,我們可以計算出得到如下:

也即,這兩種方式來進行編碼,其結果都使得平均編碼長度增加了。我們也可以看出,按照機率分布B進行編碼,要比按照C進行編碼,平均每個符號增加的位元數目少。從分布上也可以看出,實際上B要比C更接近實際分布。

如果實際分布為C,而我們用A分布來編碼這個字元發射器的每個字元,那麼同樣我們可以得到如下:

再次,我們進一步驗證了這樣的結論:對一個資訊源編碼,按照其本身的機率分布進行編碼,每個字元的平均位元數目最少。這就是資訊熵的概念,衡量了資訊源本身的不確定性。另外,可以看出KL距離不滿足對稱性,即D(P||Q)不一定等於D(Q||P)。

當然,我們也可以驗證KL距離不滿足三角不等式條件。

上面的三個機率分布,D(B||C)=1/4log2+3/4log(6/7)。可以得到:D(A||C) - (D(A||B)+ D(B||C)) =1/2log2+1/4log(7/6)>0,這裡驗證了KL距離不滿足三角不等式條件。所以KL距離,並不是一種距離度量方式,雖然它有這樣的學名。

其實,KL距離在資訊檢索領域,以及統計自然語言方面有重要的運用。我們將會把它留在以後的章節中介紹。

其他相關連結:http://en.wikipedia.org/wiki/Kullback-Leibler_divergence

http://hi.baidu.com/shdren09/item/e6441ec2bd495b0e0ad93aca

利用資訊理論的方法可以進行一些簡單的自然語言處理

比如利用相對熵進行分類或者是利用相對熵來衡量兩個隨機分布的差距,當兩個隨機分布相同時,其相對熵為0.當兩個隨機分布的差別增加時,器相對熵也增加。我們下面的實驗是為了橫量機率分布的差異。

實驗方法、要求和材料

要求:

    1.任意摘錄一段文字,統計這段文字中所有字元的相對頻率。假設這些相對頻率就是這些字元的機率(即用相對頻率代替機率);

    2.另取一段文字,按同樣方法計算字元分布機率;

    3.計算兩段文字中字元分布的KL距離;

    4.舉例說明(任意找兩個分布p和q),KL距離是不對稱的,即D(p//q)!=D(q//p);

方法:

D(p//q)=sum(p(x)*log(p(x)/q(x)))。其中p(x)和q(x)為兩個機率分布

約定 0*log(0/q(x))=0;p(x)*log(p(x)/0)=infinity;

具體實驗可參考:http://www.cnblogs.com/finallyliuyu/archive/2010/03/12/1684015.html

(轉載)KL距離,Kullback-Leibler Divergence

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.