資訊理論之從熵、驚奇到交叉熵、KL散度和互資訊

LeonYi發表於2023-04-15

一、熵(PRML)

考慮將A地觀測的一個隨機變數x,編碼後傳輸到B地。
這個隨機變數有8種可能的狀態,每個狀態都是等可能的。為了把x的值傳給接收者,需要傳輸⼀個3⽐特的訊息。注意,這個變數的熵由下式給出:
0
⾮均勻分佈⽐均勻分佈的熵要⼩。
如果機率分佈非均勻,同樣使用等長編碼,那麼並不是最優的。相反,可以根據隨機變數服從的機率分佈構建Huffman樹,得到最優的字首編碼。
0
可以利⽤⾮均勻分佈這個特點,使⽤更短的編碼來描述更可能的事件,使⽤更長的編碼來描述不太可能的事件。
可以使⽤下⾯的編碼串:0、10、110、1110、111100、111101、111110、111111來表⽰狀態{a, b, c, d, e, f, g, h}。傳輸的編碼的平均長度就是
0
⽆噪聲編碼定理(noiseless coding theorem)表明,熵是傳輸⼀個隨機變數狀態值所需的⽐特位的下界。
 
事實上,熵的概念最早起源於物理學,是在熱⼒學平衡的背景中介紹的。後來,熵成為描述統計⼒學中的⽆序程度的度量。
考慮⼀個集合,包含N個完全相同的物體,這些物體要被分到若⼲個箱⼦中,使得第i個箱⼦中有ni個物體。考慮把物體分配到箱⼦中的不同⽅案的數量。有N種⽅式選擇第⼀個物體,有(N -1)種⽅式選擇第⼆個物體,以此類推。
因此總共有N!種⽅式把N個物體分配到箱⼦中,其中N!表⽰乘積N × (N -1) × · · · × 2 × 1。然⽽,我們不想區分每個箱⼦內部物體的重新排列。在第i個箱⼦中,有ni!種⽅式對物體重新排序,因此把N個物體分配到箱⼦中的總⽅案數量為:
0
這被稱為乘數(multiplicity)。熵被定義為透過適當的引數放縮後的對數乘數,即
0

二、驚奇與資訊

考慮關於⼀個隨機試驗中可能出現的事件E。當我們真正觀察到事件E時,我們接收到了多少資訊呢?對事件E的驚奇程度取決於E發生機率,越是不可能的事件發生,帶來的驚奇程度越大
0
  • 如果有⼈告訴我們⼀個相當不可能的事件發⽣了,我們收到的資訊要多於我們被告知某個很可能發⽣的事件發⽣時收到的資訊。
  • 如果聽到⼀個必然事情,那麼就不會接收到資訊。EX: 明天有24h
對驚奇程度進行量化:資訊量可看成E發生時的“驚訝程度”(消除不確定性的程度)
對於資訊內容的度量將依賴於機率分佈p(x),因此想要尋找⼀個函式h(x),它是機率p(x)的單調遞增函式,表達了資訊的內容。
h(·)的形式可以這樣尋找:
  • 如果有兩個不相關的事件x和y,那麼觀察到兩個事件同時發⽣時獲得的資訊應該等於觀察到事件各⾃發⽣時獲得的資訊之和,即h(x, y) = h(x) + h(y)。
  • 兩個不相關事件是統計獨⽴的,因此p(x, y) = p(x)p(y)。
根據這兩個關係,很容易看出h(x)⼀定與p(x)的對數有關。因此有:h(x) = -log2p(x)。
  • 其中,負號確保了資訊⼀定是正數或者是零。
  • 注意,低機率事件x對應於⾼的資訊量。
  • 對數的底遵循資訊理論使⽤2作為對數的底(2進位制編碼最短)。
h(x)的單位是⽐特(bit, binary digit)。
0
隨機變數的熵,衡量了其分佈下的編碼長度(機率值的倒數的對數)的期望,即平均編碼長度。
0
 

三、熵的相關變數

熵用於衡量不確定性,其相當於是編碼一個隨機變數的平均最小編碼長度(最優編碼的下界,即huffman編碼)

1.自資訊-二進位制編碼長度

\[\frac{1}{q(x)} \]

2.資訊熵

\[ H\Big(p(x)\Big) = - \int p(x)\ln p(x)dx \\ = \int p(x)\ln \frac{1}{p(x)}dx = \mathbb{E}_{x\sim p(x)}\left[\ln\frac{1}{p(x)}\right] \]

3.交叉熵,用一個分佈p(x)的編碼去編碼另一個分佈q(x)的代價(平均編碼長度)

\[C\Big(p(x)\Big\Vert q(x)\Big) = - \int p(x)\ln q(x)dx \\ = \mathbb{E}_{x\sim p(x)}\left[\ln\frac{1}{q(x)}\right] \]

分佈q(x)的自資訊(最小編碼長度)關於分佈p(x)的期望
Ex: q(x1) = 0.25需要2bits,例如00來編碼,但p(x1)=0.01
,相當於用更短的編碼來編碼低頻取值(不符合高頻短碼),可能導致編碼代價更大。

隨機變數取值越多,熵越大(資訊增益)

4.KL散度,衡量兩個分佈p(x)和q(x)的距離(不相似程度):
用一個分佈p(x)的編碼去編碼另一個分佈q(x)的額外代價

若KL散度為0,則表示編碼額外代價為0,即兩個分佈相同

\[ KL\Big(p(x)\Big\Vert q(x)\Big) = - \int p(x)\ln \frac{q(x)}{p(x)} dx = \int p(x)\ln \frac{p(x)}{q(x)} dx \\= \int p(x)\ln p(x) - p(x)\ln q(x)dx \\ = - \int p(x)\ln q(x)dx - (-\int p(x)\ln p(x) ) \\ = C\Big(p(x)\Big\Vert q(x)\Big) - H\Big(p(x)\Big) \\ = \mathbb{E}_{x\sim p(x)}\left[\ln\frac{p(x)}{q(x)}\right] \]

由於熵為常數項,最小化交叉熵,相當於最小化KL散度(最大似然),離散形式即求和。

  1. 互資訊
    image
    image

聯合分佈p(x, y)和邊緣分佈乘積累p(x)p(y)的KL散度。
如果互資訊為0,則兩個邊緣分佈獨立p(x, y) = p(x) p(y)

相關文章