白話資訊熵

hearthougan發表於2017-08-04

    距離有近有遠,時間有長有短,溫度有高有低,我們知道可以用米或者千米來度量距離,用時分秒可以來度量時間的長短,用攝氏度或者華氏度來度量溫度的高低,那麼我們常說這句話資訊多,那句話資訊少,那麼資訊的多少用什麼度量呢?資訊量!

    資訊量是度量知曉一個未知事物需要查詢的資訊的多少,單位是位元。比如昨天你錯過一場有8匹賽馬的比賽,編號為1~8號,每匹馬贏的概率都一樣,那麼你需要獲得多少資訊(也就是猜測多少次)才可以知道哪匹馬獲勝?利用二分法,猜測三次即可,如下圖:


    那麼你需要的資訊量就是3位元。資訊量度量的是從未知已知所需資訊的多少,比如上圖,一開始不知道哪匹馬 獲勝,我們開始猜測,最後猜測是1號獲勝,其中需要3位元資訊。

    但是因為每匹馬是等概率獲勝的,而你又不知道哪匹馬獲勝,如果最後猜測出來是3號勝,這同樣也需要3位元資訊, 同理最後猜測出其它號的馬獲勝,每個都是需要3位元資訊。那麼現在我想計算一下,猜測出最後獲勝的馬,平均需要多少位元資訊呢?也就是對資訊量求期望(加權平均),我們給這個期望一個名字,就是資訊熵這裡每匹馬獲勝是等概率的,當然平均也是3位元。

    那麼假如現在1~8號獲勝的概率分別為{1/2、1/4、 1/8、 1/16、 1/64、 1/64、 1/64、 1/64},那麼現在你平均要猜測對少次呢?猜測的時候,肯定是按照概率大小的來測,如下圖:


    對應上圖,猜測每匹馬獲勝至少要猜測的次數分別為1、2、3、4、6、6、6、6;那麼平均要猜測多少次呢?即:


也就是猜測出獲勝的馬匹,平均需要2次。由於我們描述事物的時候常常使用隨機變數,給出隨機變數取值的概率, 那麼該如求該隨機變數取某個值時的資訊量和該隨機變數的資訊熵呢?上例中我們用次數來表示資訊量,對資訊求期望作為資訊熵,那麼我們如何抽象成數學模型呢?

資訊量:隨機變數取某個值時,其概率倒數的對數就是資訊量。


其中底數可以是2,單位是位元,底數也可以是其他,單位也相應不同,這裡不予細究。

    比如上例概率不等的時候,猜測6號獲勝的所需的資訊量為:


這恰好符合我們的認識。

資訊熵:資訊量的期望。


比如上例,設X為賽馬編號,則X的資訊熵為:


所以,這也符合我們之前的認識。

例:

    如果上例還是不明白,再舉一個例子,一個箱子有9個球,4個紅色,3個綠色,2個黃色,如下圖:


    我們從中抽取一個紅球、黃球、綠球所帶來的資訊量分別為:


由於從箱子裡抽取球,有三種可能,紅、黃、綠。設X為球的顏色,則:

即隨機變數X的資訊熵為1.53。

總結:

資訊量:從未知到已知所需資訊的含量。

資訊熵:資訊量的期望。



相關文章