信息熵通俗易懂的例子


 

轉自知乎 https://www.zhihu.com/question/22178202/answer/223017546

本科學的時候是院長教的,當時他說這個東西很有用,也仔細聽了沒懂什么意思,現在回過頭來看,還真有用。

信息熵的定義與上述這個熱力學的熵,雖然不是一個東西,但是有一定的聯系。熵在信息論中代表隨機變量不確定度的度量。一個離散型隨機變量 X 的熵 H(X) 定義為:

H(X)=-\sum\limits_{x\in\mathcal{X}}p(x)\log p(x)

這個定義的特點是,有明確定義的科學名詞且與內容無關,而且不隨信息的具體表達式的變化而變化。是獨立於形式,反映了信息表達式中統計方面的性質。是統計學上的抽象概念。

 

所以這個定義如題主提到的可能有點抽象和晦澀,不易理解。那么下面讓我們從直覺出發,以生活中的一些例子來闡述信息熵是什么,以及有什么用處。

 

直覺上,信息量等於傳輸該信息所用的代價,這個也是通信中考慮最多的問題。比如說:賭馬比賽里,有4匹馬 \{A,B,C,D\} ,獲勝概率分別為 \{\frac{1}{2},\frac{1}{4},\frac{1}{8},\frac{1}{8}\} 。

 

接下來,讓我們將哪一匹馬獲勝視為一個隨機變量 X\in\{A,B,C,D\} 。假定我們需要用盡可能少的二元問題來確定隨機變量 X 的取值。

例如:問題1:A獲勝了嗎?問題2:B獲勝了嗎?問題3:C獲勝了嗎?最后我們可以通過最多3個二元問題,來確定 X 的取值,即哪一匹馬贏了比賽。

 

如果 X=A ,那么需要問1次(問題1:是不是A?),概率為 \frac{1}{2} ;

如果 X=B ,那么需要問2次(問題1:是不是A?問題2:是不是B?),概率為 \frac{1}{4} ;

如果 X=C ,那么需要問3次(問題1,問題2,問題3),概率為 \frac{1}{8} ;

如果 X=D ,那么同樣需要問3次(問題1,問題2,問題3),概率為 \frac{1}{8} ;

 

那么很容易計算,在這種問法下,為確定 X 取值的二元問題數量為:

E(N)=\frac{1}{2}\cdot1+\frac{1}{4}\cdot2+\frac{1}{8}\cdot3+\frac{1}{8}\cdot3=\frac{7}{4}

 

那么我們回到信息熵的定義,會發現通過之前的信息熵公式,神奇地得到了:

H(X)=\frac{1}{2}\log(2)+\frac{1}{4}\log(4)+\frac{1}{8}\log(8)+\frac{1}{8}\log(8)=\frac{1}{2}+\frac{1}{2}+\frac{3}{8}+\frac{3}{8}=\frac{7}{4}\mathrm{bits}

 

在二進制計算機中,一個比特為0或1,其實就代表了一個二元問題的回答。也就是說,在計算機中,我們給哪一匹馬奪冠這個事件進行編碼,所需要的平均碼長為1.75個比特。

 

平均碼長的定義為: L(C)=\sum\limits_{x\in\mathcal{X}}p(x)l(x)

 

很顯然,為了盡可能減少碼長,我們要給發生概率 p(x) 較大的事件,分配較短的碼長 l(x) 。這個問題深入討論,可以得出霍夫曼編碼的概念。

 

那么 \{A,B,C,D\} 四個實踐,可以分別由 \{0,10,110,111\} 表示,那么很顯然,我們要把最短的碼 0 分配給發生概率最高的事件 A ,以此類推。而且得到的平均碼長為1.75比特。如果我們硬要反其道而行之,給事件 A 分配最長的碼 111 ,那么平均碼長就會變成2.625比特。


免責聲明!

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



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