1.6 Information Theory信息論簡介

今天開始學Pattern Recognition and Machine Learning (PRML),章節1.6,Information Theory信息論簡介

今天開始學Pattern Recognition and Machine Learning (PRML),章節1.6,Information Theory信息論簡介

前面有朋友說寫的東西太理論了,我想說我並不是在和很多其他博客一樣做topic的入門介紹,配合很多示意圖之類;而是在記錄PRML這本經典教科書的內容。如果想好好學Pattern Recognition and Machine Learning,建議花半年時間看一本國外經典。(前面忙實驗室的任務寫的太慢了,這本書要吃透是要花點時間。)章節1.3-1.5都是介紹性質的,我先不寫了後面有時間再補。

信息論,不用多說,在很多領域都得到了應用,應該算是一個相對成熟的主題。PRML這一節裏將介紹信息論的一些基本概念,主要是爲了明白這些概念是怎麼來的(如gain,entropy),代表什麼含義。在書裏沒有具體的應用結合,後面可以單獨簡介一節關於決策樹的方法,需要的信息論知識基本在這一節裏面可以覆蓋到。

 

 

章節1.6 Information Theory

直觀的一種理解,當我們聽到一個不太可能發生的事件時我們所接收的信息量要比聽到一件習以爲常的事件所接收的信息量大,如果我們聽到了一件必然發生的事情那麼我們接收到的信息就是0。讓我們考察對於一個離散隨機變量x,類似的出現那些概率很低的x取值時我們得到的信息量要大。

通過上面的解釋,首先,我們有理由認爲信息量的大小和隨機變量x的概率有關,我們用h(x)表示獲得的信息量的大小,p(x)表示離散隨機變量x取值的概率。我們相信h(x)和p(x)是單調負相關的(一個大另一個就小)。

再來考察這樣一個情況,如果觀察兩個相互無關(獨立)的事件x,y,我們得到的信息量可以寫成:

h(x,y) = h(x)+h(y);

而兩個相互獨立事件的概率符合:

P(x,y) = p(x)*p(y);

由此可見啊,h應當和p成對數(log)關係,於是,我們結合上述兩點觀察,得出

clip_image002

可見,信息量是大於等於0的。這裏我們先用2爲對數的底,此時,h的單位是bits。(信息量大小由比特長度來衡量。)

好了,讓我們考慮這樣一個情況,一個信息發送者要發送一個隨機變量的值給一個接收者,那麼在傳輸過程中的平均信息量是(1.92)的h(x)的期望:

clip_image004

該值就稱爲一個隨機變量的熵(Entropy),特別的,當p等於0的時候,p(x)logp(x)=0。接下來讓我們看一個實際的例子,來體會一下熵這個概念:

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

例子:假如一個隨機變量x有8種可能的狀態,每一種都有相同的概率。傳輸該變量我們至少需要3個bits(2^3=8),或者我們可以用熵來刻畫:

clip_image006

同樣是3個bits,即平均信息量爲3 bits,或者說我們平均需要3bits來傳輸。

考慮另外一種情況,如果x的8個狀態(a-h)的概率分別爲clip_image008,那麼,熵爲:

clip_image010

也就是說,不均勻分佈的變量擁有較小的熵。在這個情況下,我們怎麼才能做到平均2bits來傳輸呢?因爲不均勻分佈,我們可以用短bit來代表大概率的狀態,長bit來代表小概率的狀態,把上述8個狀態編碼成0, 10, 110, 1110, 111100, 111101, 111110, 111111,這個時候,平均的編碼長度就是:

clip_image012

可見,我們可以用平均2bits長來傳輸變量x,和熵是等價的。

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

香農提出了noiseless coding theorem熵是傳輸一個隨機變量(所有狀態or取值)所需編碼長度的下限。(似乎很牛逼的樣子- -)

上面我們是用2爲log的底來考量的,接下來爲了一些計算的方便,我們使用自然對數e爲底來考慮熵。當用ln的時候,熵的單位是nats,很容易證明nats和bits相差一個常數倍數ln2。 Nat = ln2 Bit

隨機變量X的熵可以定義爲:

clip_image014

其中xi是X的一種取值(狀態)。對於那些更sharp分佈的變量,有較小的熵;而那些均勻分佈的變量有較大的熵,圖1.30說明了這個情況:

clip_image016

上面都考慮了離散變量的情況,接下來我們考慮連續變量的情況:

變量X取值落在一個小區段內的概率是:

clip_image018

上面用到了均值定理,在一個很小的區段(bin)裏面(長度爲clip_image020),總能找到一個xi使得上述等式成立。因此概率就用(1.101)的右邊來表示了,這樣就離散化了。類似前面熵的定義:

clip_image022

可見,離散變量的熵和連續變量的熵在定義上相差一個clip_image024,當clip_image020[1]很小的時候,該項很大,因此得到符合常識的結論是:當我們需要很精細地刻畫一個連續變量時,我們需要很長的bits。

根據

clip_image026

我們定義

clip_image028

微分熵。相應的結論是,使得微分熵最大化的分佈是高斯分佈。微分熵是可以小於0的。

根據定義可以計算高斯分佈的微分熵可以寫成

clip_image030

當方差越大的時候,微分熵越大。

1.6.1 相對熵和互信息

相對熵也就是KL-divergence, 很多地方都有看到KL。它的含義是什麼呢?下面來解釋一下:對於一個未知的分佈p(x),我們用q(x)來model它,那麼我們需要的平均額外的信息量

clip_image032

上述式子很容易理解,就是兩者平均需要信息量的差,定義爲KL-divergence。KL-divergence是不對稱的。

上述式子中的兩個期望的表達也可用離散的形式去估計,就是用一個集合的平均值。另外,我們可以假設我們估計的分佈q是受一些參數影響的,那麼KL-D可以近似寫成

clip_image034

其中求平均的常熟係數被略去了。因此可以看到,(1.119)的第二項是和theta無關的,不變的。那麼最小化KL其實就等價於最大化似然方程了。

我們知道如果兩個變量x,y獨立,那麼p(x,y) = p(x)p(y)。我們希望衡量兩個變量相互獨立的程度,就用到互信息了。互信息的定義是這樣的:

clip_image036

從定義就很容易想到,互信息是在衡量聯合p(x,y) 和p(x)p(y)相關性。可以知道,I是大於等於0的,且當x,y獨立時取0.

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