1. 程式人生 > >【信息論】如何徹底理解信息和熵?

【信息論】如何徹底理解信息和熵?

語言 信息論 clas 不出 選擇 智能 公眾 自乘 mat

目錄

  • 信息和熵
    • 定義熵和信息
    • 消除熵?
    • 假信息?
    • 概率 VS 熵?
    • 信息的度量和熵的計算

信息和熵

? 飛翔的豬o

說明:本文是作者在看了weixin公眾號【超智能體】錄制的學習視頻後的總結,有需要請移步公眾號【超智能體】,利益無關,良心推薦。大多數教材都將信息和熵混為一談,統稱為信息熵,這其實是不恰當的,因而有了這篇文章的誕生。

定義熵和信息

定義熵之前,首先說明什麽是宏觀態和微觀態。

具體的一件事情為宏觀態,而這件事情有多種可能情況發生,每種可能情況叫微觀態

比如:拋擲硬幣這件事,稱作宏觀態,而正面朝上和反面朝上作為兩種可能的情況,都是微觀態。

熵:當一件事情有多種可能情況時,這件事情對某人而言究竟是那種情況發生的不確定性叫做

信息:信息是能夠消除某人對某件事情的不確定的事物。信息和能量、質量一樣,是實實在在存在的事物,是可量化的。

因此可以說,獲取信息就是消除熵,熵和信息數量相等,但意義相反。因此,度量信息的時候,實際上我們真正求的是的量,即某件事情(宏觀態)的不確定性的大小。

至於熵(信息)怎麽度量,後面講。

消除熵?

信息是來消除熵(不確定性)的。為了好理解,現在熵後面我都加(不確定性)。獲得多少信息,就消除了多少熵(不確定性),這些消除不確定性的信息分為三種類型:

  • 1.調整某一微觀態的概率
  • 2.排除某一可能的微觀態的幹擾
  • 3.直接確定實際情況(百分之百確定是該微觀態發生),即直接確定某一微觀態

上面三條的確不好理解,下面舉例解釋。

小明正在做一選擇題,有ABCD四個選項,正確答案是C。小明完全不會這道題,那麽小明對於四個選項(微觀態)的不確定性最大,即熵最大。小明選擇任一選項的概率都是25%。為消除不確定性,小明需要知道一些信息:

  • 如小紅告訴小明,C選項正確的可能是50%,那麽小明就有更大的可能會考慮C選項,不確定性也就減少了,在這個過程中,小紅告訴了小明信息,小明得到了這些信息,並消除了對等數量的不確定性。這對應著上面的第一種類型。
  • 若小紅告訴小明,A選項絕對不對,那麽小明只要再剩余的BCD選項中考慮,此時小明選出正確答案的概率是1/3,大於25%,不確定性也減少了。小明排除了A這一微觀態的幹擾,減少了不確定性。
  • 若小紅直接告訴小明,C是正確答案。那麽小明可以迅速知道,A選項正確的概率是100%,完全沒有了不確定性,這是因為小紅告訴了小明所需的全部信息(就本事件而言),這對應於上面的第三種類型。

所以現在應該理解了:獲取信息=消除熵(不確定性)。

假信息?

如果小紅告訴小明答案是A,這顯然是錯的,那這是不是“假信息”呢?

在上面的定義下,其實並沒有“假信息”這種說法。小紅告訴小明答案是A,根本就不是信息,或者說:信息量是0,因為小明聽到得到這句話後,並沒有減少不確定性,小明依舊完全沒有獲得能夠幫助他得到該事件究竟哪種情況發生的任何信息。

“小紅告訴小明答案是A”,如果這不是信息,那這是什麽呢?

數據,或者說是噪音。所謂噪音,是指幹擾某人獲得信息的事物,而數據信息噪音的混合體,需要用知識將其分離。

概率 VS 熵?

那麽概率和熵又有什麽區別呢?

概率是某件事情(宏觀態)的某個可能情況(微觀態)發生的確定性。

是某人對某件事情到底哪種情況發生的不確定性。

兩者是有本質不同的。下面舉例說明。

如我們說,拋硬幣正面朝上的概率是50%,是說,拋一枚硬幣,正面朝上這個可能情況(微觀態)發生的確定性是50%,或者通俗的說:我們有50%的把握認為正面朝上。

指的是,我們對“拋硬幣”這一事件(宏觀態),究竟是正面朝上還是反面朝上的不確定性是多少。消除這個不確定性,需要信息,那麽,信息如何度量?

信息的度量和熵的計算

在說明度量信息之前,必須明確信息的幾個性質。

  • 媒介無關
  • 相對個體
  • 相對事件

第一點很容易理解,小紅可以用語言告訴小明正確答案是C(媒介是聲波),也可以寫在紙上(媒介是紙),兩種情況下小明都能夠準確的接收到該信息,與媒介無關。

第二點指的是,信息的數量是相對個體而言的。小剛本來就知道正確答案是C,那麽他對這道題就沒有不確定性,當他聽到小紅的話“正確答案是C”,對小剛來說信息量是0。而對於小明,信息量卻不是0。

第三點指的是,對不同事件,信息的數量是不同的。這點也很容易理解,假如這道題只有AB兩個選項,小明就會有50%的可能性選中,那麽小明對這道題的不確定性就相對小一些。

但必須明確,信息雖然是相對的,信息卻是自然界實實在在存在的,不隨人的主觀意識而改變,即使對小剛來說信息量為0,信息也是實際存在的,這和能感受到的質量等物理量是有很大區別的。

因而,可以這樣定義信息:信息描述的是一個觀察者確定一個宏觀態是哪種微觀態時所需的物理量。下面正式說明信息的度量。

前面提到,信息和質量一樣,是自然界實實在在存在的物理量,那麽我們想想質量是怎麽度量的?(即kg是怎麽定義的)。

我們現在說1kg,最初也沒有kg的概念,而是選擇了一個參照物體,定義它的質量為1kg,之後說其他物體的質量,就是多少個參照物體,比如說某個物體8kg,就是說該物體的質量相當於8個參照物體,說某個物體m kg,就是說該物體相當於m個參照物體,這個m實際上是這麽算的:

拿一天平,左邊放m個參照物體,右邊放被測物體,左邊為\(m*1kg\),為乘法,此時天平恰好平衡。所以已知被測物體的質量,要知道他相當於多少個參照物體(即度量),只要采取乘法的逆運算-除法,被測物體質量除以參照物體的質量(1kg),就是該物體的質量的一個度量。

而信息的度量也是類似的。

我們知道,信息是用來某事情消除不確定性的,即和熵的數量相等。那麽,信息即為某件事物的不確定性的大小。我們是否也可以找一件參照事件,定義某事件的不確定性為“多少個”該參照事件不確定性?

答案是肯定的。我們選取參照事件為拋擲硬幣,那麽毫無疑問有兩種微觀態,等概率為50%,我們定義該參考事件的不確定性(即信息量)為1bit,其他事件的不確定性的度量都相對於該參考事件。

但是這可和質量不一樣,不是簡單地倍數關系。且看:

拋擲1個硬幣有2種微觀態,信息量為1bit。

拋擲2個硬幣有4種微觀態,信息量為2bit。

拋擲3個硬幣有8種微觀態,信息量為3bit。

拋擲4個硬幣有16種微觀態,信息量為4bit。

可見,若某個事件有16種微觀態,那麽他的不確定性,即信息量為4bit。這是怎麽算的呢?拋擲硬幣數與微觀態顯然是指數關系,而若已知微觀態數,相當於拋擲了多少個硬幣(即相當於多少個參考事件的不確定性)是指數運算的逆運算--即對數運算。所以,已知m種微觀態,且m種微觀態等可能發生,那麽不確定性,即信息量計算為信息量\(I=log_2m\),單位是bit。

需要指出的是,上面選擇參照事件是拋硬幣,完全可以選擇其他事件,那麽求對數的底就會相應變化。

還有一個問題,現實生活中並不是所有事件的微觀態都是等可能發生的,比如完全存在下面這種事件:

事件A有4種微觀態abcd,發生的概率分別為\(;;;a:1/6;b:1/6;c:1/6;d:1/2\)。那麽事件A的不確定性(即熵,即信息量大小)該如何計算呢?

答案是,分別計算四種微觀態的信息量,再加權平均,即各自乘以自己的概率求和:

\(I(A)=P(a)*I(a)+P(b)*I(b)+P(c)*I(c)+P(d)*I(d)\)

那麽顯然剩下的問題是:\(I(a)\)如何計算?顯然不能再用公式\(I=log_2a\)。因為微觀態\(a\)作為一個事件,我們是不知道更多細節的。

我們知道,概率\(p = 1/100\)相當於某事件有100種微觀態,每種微觀態的可能性都是1%。那麽顯然,概率\(p\)的倒數\(1/p\)就是等可能微觀態的數量。那麽很顯然,微觀態\(a\)作為事件的信息量就是\(I(a)=log_2(1/P(a))\)

從而,計算事件A的信息量變成了:

\(I(A)=P(a)*log_2(1/P(a))+P(b)*log_2(1/P(b))+P(c)*log_2(1/P(c))+P(d)*log_2(1/P(d))\)

更一般的,對於事件(宏觀態)A,有m種微觀態,其中第i種微觀態的可能性是\(P(i)\),那麽消除他的不確定性所需的信息量,也就是熵的大小是:\(\sum_{i=1}^{m}{P(i)*log(1/P(i))}\);

需要說明的是,式子中,\(log(1/P(i))\)稱作自信息

由此,我們推導出了熵的計算公式:

\(Entropy(A) =\sum_{i=1}^{A}{P(i)*log(1/P(i))}\)

根據數學知識可知:

\(Entropy(A)=E(log(1/P(i)))\),即熵的大小為自信息的期望。

上面的論述是香農理論的基礎,也奠定了我們今天的通信基礎,但香農完全從數學的角度推導出,我不信有天才,可我實在想不出什麽別的詞來形容他。

【信息論】如何徹底理解信息和熵?