熵與信息量的理解

有人說:“熵越大,信息量越小”

也有人說:“熵越大,信息量越大”

到底在香農的信息框架下,熵指的是什麼?信息量指的又是什麼呢?上面的兩種說法哪種是對的呢?


給定一個隨機變量X,它的熵定義爲 H(X)=- /sum (p_x * log p_x)
熵只是刻畫系統或者變量不確定性的一個量,並不是刻畫系統信息量的一個量 ,但是它與信息量是有關係的,什麼關係呢?當我們談論信息量的時候應該是指的一個具體的事物,即隨機變量的一個具體取值時的狀態,這個時候才能談論信息量! 那這個信息量是多少呢?即隨機變量從原來不知道該取什麼值的時候到現在已經知道具體取值所需要做的“功”,亦即消除這個不確定性所需要做的事情,應該是所求。

顯然,這個值就等於變量的熵。

所以熵不代表隨機變量的信息量,但是隨機變量取某個具體值時具有信息量的值是等於熵的;
故而,熵和信息量是兩個範疇的東西,只是因爲相等,所以現實中經常混用而已,但卻經常引起概念上的混淆;

所以,“熵越大,代表該隨機變量取特定值的時候具有的信息量越大”。

舉例:
一本五十萬字的中文書平均有多少信息量?(例子來自於吳軍,評論是我加的,評論用[]符號
我們知道常用的漢字(一級二級國標)大約有 7000 字。假如每個字等概率,那麼我們大約需要 13 個比特(即 13 位二進制數)表示一個漢字[這裏把漢字作爲一個隨機變量,那麼漢字系統的熵就是約13bit] 。但漢字的使用是不平衡的。實際上,前 10% 的漢字佔文本的 95% 以上。因此,即使不考慮上下文的相關性,而只考慮每個漢字的獨立的概率,那麼,每個漢字的信息熵大約也只有 8-9 個比特。如果我們再考慮上下文相關性,每個漢字的信息熵[其實指的是漢字變量取特定漢字作爲值時候具有的信息量] 只有5比特左右。所以,一本五十萬字的中文書,信息量大約是 250 萬比特[這個時候的信息量就是每個漢字的信息量和數目相乘,指的都是漢字變量取具體值的信息量] 。如果用一個好的算法壓縮一下,整本書可以存成一個 320KB 的文件。如果我們直接用兩字節的國標編碼存儲這本書,大約需要 1MB 大小,是壓縮文件的三倍。這兩個數量的差距,在信息論中稱作“冗餘度”(redundancy)。 需要指出的是我們這裏講的 250 萬比特是個平均數,同樣長度的書,所含的信息量可以差很多。如果一本書重複的內容很多,它的信息量就小,冗餘度就大。

發佈了26 篇原創文章 · 獲贊 152 · 訪問量 134萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章