神經科學與資訊理論 - Part 1
前文中提及了不確定性與資訊熵的概念,但仍侷限在只有一個變數的情況,這篇文章將從一個變數增加至兩個變數,介紹聯合熵、條件熵,最後引入相互資訊和不確定性的關係。
聯合熵 (Joint Entropy)
若是系統含有多於一個以上的變數,使用聯合熵:
$$H(X,Y) = - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x,y)$$
-
丟擲一枚硬幣,並且從黑桃、紅心、方塊、梅花四張A中任抽一張,會有以下八種組合,機率各1/8。
\(X=\{正面,反面\}\)
\(Y=\{黑桃,紅心,方塊,梅花\}\)黑桃 紅心 方塊 梅花 正面 1/8 1/8 1/8 1/8 反面 1/8 1/8 1/8 1/8 $$ \begin{aligned} H(X,Y) &= - \sum_{\substack{x \in {heads,tails} \\ y \in {spades,hearts,diamonds,clubs}}} P(x,y)\ \log_{2} P(x,y) \\ &= 8\cdot-[\frac{1}{8} \log_2(\frac{1}{8}) ] = 3 \end{aligned} $$
聯合熵為3 bit,可以理解成用3個是非題得知最終狀態,例如:是正面嗎 → 是黑色的牌嗎 → 是黑桃嗎。
當X、Y兩變數是獨立的時候(如前例,丟擲硬幣和抽撲克牌並不會互相影響),\(P(x,y)=P(x)P(y)\),此時的聯合熵為兩變數各自的資訊熵之和。 $$ \begin{aligned} H_{independent}(X,Y) &= - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x,y) \\ &= - \sum_{x \in X,y \in Y} P(x)P(y)\ \log_{2}[P(x)P(y)] \\ &= - \sum_{x \in X,y \in Y} P(x)P(y)\ [\log_{2} P(x) + \log_{2} P(y)] \\ &= - \sum_{x \in X,y \in Y} P(x)P(y)\ \log_{2} P(x) - \sum_{x \in X,y \in Y} P(x)P(y)\ \log_{2} P(y) \\ &\qquad (\because \sum_{x \in X} P(x) = 1) \\ &= - \sum_{x \in X} P(x)\ \log_{2} P(x) - \sum_{y \in Y} P(y)\ \log_{2} P(y) \\ &= H(X) + H(Y) \end{aligned} $$
- 如前例 (丟擲一枚硬幣和抽一張撲克牌):
$$
\begin{aligned}
H_{independent}(X,Y) &= H(X) + H(Y) \\ &= 1+2 \\ &= 3
\end{aligned}
$$
條件熵 (Conditional Entropy)
條件熵計算的是,當已經知道一個變數的狀態時,整個系統的平均不確定性為何。
$$H(X \mid Y) = - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x \mid y)$$
-
再一次使用前面的例子,但這次我們先抽出並翻開一張牌,也就是說在知道花色的情況下,計算擲硬幣的資訊熵。 $$ \begin{aligned} H(X \mid Y) &= - \sum_{\substack{x \in {heads,tails} \\ y \in {spades,hearts,diamonds,clubs}}} P(x,y)\ \log_{2} P(x \mid y) \\ &= 8\cdot-[\frac{1}{8} \log_2(\frac{1}{2}) ] = 1 \end{aligned} $$
這邊\(P(x \mid y)= \frac{1}{2}\)表示當我們已知撲克牌花色,硬幣是正面或背面的機率為1/2。事實上,因為這兩件事相互獨立,知不知道花色並沒有任何影響,因此條件熵的結果\(H(X \mid Y)=1\)和只有擲硬幣的資訊熵\(H(X)=1\)是一樣的。
-
讓我們考慮另一種情況,撲克牌花色和硬幣之間有神祕關係,當抽到黑色牌(黑桃、梅花),硬幣容易出現正面,反之抽到紅色牌(紅心、方塊),硬幣比較容易出現反面,新的機率如下表。
黑桃 紅心 方塊 梅花 正面 4/20 2/20 2/20 4/20 反面 1/20 3/20 3/20 1/20 此時的聯合熵 (已經不再是3 bit): $$ \begin{aligned} H(X,Y) &= - \sum_{\substack{x \in {heads,tails} \\ y \in {spades,hearts,diamonds,clubs}}} P(x,y)\ \log_{2} P(x,y) \\ &= -\frac{4}{20} \log_2(\frac{4}{20}) -\frac{1}{20} \log_2(\frac{1}{20}) \\ &\quad -\frac{2}{20} \log_2(\frac{2}{20}) -\frac{3}{20} \log_2(\frac{3}{20}) \\ &\quad -\frac{2}{20} \log_2(\frac{2}{20}) -\frac{3}{20} \log_2(\frac{3}{20}) \\ &\quad -\frac{4}{20} \log_2(\frac{4}{20}) -\frac{1}{20} \log_2(\frac{1}{20}) \\ &\approx 2.85 \end{aligned} $$
此時的條件熵 (也不再是1 bit): $$ \begin{aligned} H(X \mid Y) &= - \sum_{\substack{x \in {heads,tails} \\ y \in {spades,hearts,diamonds,clubs}}} P(x,y)\ \log_{2} P(x \mid y) \\ &= - \sum_{\substack{x \in {heads,tails} \\ y \in {spades,hearts,diamonds,clubs}}} P(x,y)\ \log_{2}(\frac{P(x,y)}{P(y)}) \\ &= -\frac{4}{20} \log_2(\frac{4/20}{1/4}) -\frac{1}{20} \log_2(\frac{1/20}{1/4}) \\ &\quad -\frac{2}{20} \log_2(\frac{2/20}{1/4}) -\frac{3}{20} \log_2(\frac{3/20}{1/4}) \\ &\quad -\frac{2}{20} \log_2(\frac{2/20}{1/4}) -\frac{3}{20} \log_2(\frac{3/20}{1/4}) \\ &\quad -\frac{4}{20} \log_2(\frac{4/20}{1/4}) -\frac{1}{20} \log_2(\frac{1/20}{1/4}) \\ &\approx 0.85 \end{aligned} $$
由此可看出,因為花色和正反面的神秘關聯性,只要先得知抽到什麼花色,就會知道正面或是反面的機率高,因此不確定性較小。
而無論X、Y是否相互獨立,皆滿足\(H(X,Y)=H(X \mid Y) + H(Y)\),推導如下:
$$
\begin{aligned}
H(X,Y) &= - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x,y) \\ &= - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2}[P(x \mid y)P(y)] \\ &= - \sum_{x \in X,y \in Y} P(x,y)\ [\log_{2} P(x \mid y) + \log_{2} P(y)] \\ &= - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x \mid y) - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(y) \\ &= - \sum_{x \in X,y \in Y} P(x,y)\ \log_{2} P(x \mid y) - \sum_{y \in Y} P(y)\ \log_{2} P(y) \\ &= H(X \mid Y) + H(Y)
\end{aligned}
$$
相互資訊 (Mutual Information)
從神經科學與資訊理論-Part1中,我們一再說明一個概念是:資訊代表減少不確定性。
現在,讓我們更清楚地把資訊描述成:當已知一個變數時,所減少的不確定性。
上述的概念,又可以如下的方式表達:全部的不確定性 = 資訊 + 殘餘的不確定性。
$$H(X) = I(X;Y) + H(X \mid Y)$$
也就是說,資訊 = 全部的不確定性 - 殘餘的不確定性。
$$I(X;Y) = H(X) - H(X \mid Y) = \sum_{x \in X, y \in Y} p(x,y)\ log_{2}(\frac{p(x,y)}{p(x)p(y)})$$
Kullback-Leibler divergence, 相對熵 (\(D_{\text{KL}}\), Relative Entropy)
這邊額外插入一個度量方法:
$$D_{\text{KL}}(p \mid \mid q)=\sum_{x \in X} p(x)\ log \frac{p(x)}{q(x)}$$
\(D_{\text{KL}}\)用來測量兩個分布之間的差異程度,當兩個分布重合時\(D_{\text{KL}}=0\),而當兩個分布差異愈大時,\(D_{\text{KL}}\)值也愈大,也因此\(D_{\text{KL}}\)又稱為兩個分布的相對熵,但須注意\(D_{\text{KL}}(p \mid \mid q) \neq D_{\text{KL}}(q \mid \mid p)\)。
-
如Fig. 1,這裡有3條高斯分布曲線,\(D_{\text{KL}}(藍 \mid \mid 紅) < D_{\text{KL}}(藍 \mid \mid 綠)\),這裡使用連續版本\(D_{\text{KL}}(p \mid \mid q)=\int_{} p(x)\ log \frac{p(x)}{q(x)} dx\)。
比較相互資訊、\(D_{\text{KL}}\)的公式,可以發現:
$$I(X;Y) = D_{\text{KL}}(p(x,y) \mid \mid p(x)p(y))$$
也就是說,相互資訊在看\(p(x, y)\)、\(p(x)p(y)\)間的差異程度,如果二者互相獨立,此時\(p(x, y) = p(x)p(y)\),知道其中之一並不會帶給另一方資訊,\(D_{\text{KL}}=0\)。
-
回到例一,計算知道花色所帶來的資訊:
黑桃 紅心 方塊 梅花 正面 1/8 1/8 1/8 1/8 反面 1/8 1/8 1/8 1/8 $$I(X;Y) = H(X) - H(X \mid Y) = 1-1=0$$
-
回到例二,也計算知道花色所帶來的資訊:
黑桃 紅心 方塊 梅花 正面 4/20 2/20 2/20 4/20 反面 1/20 3/20 3/20 1/20 $$I(X;Y) = H(X) - H(X \mid Y) \approx 1-0.85 \approx 0.15$$
相互資訊的對稱性
最後描述相互資訊的其中一個性質:對稱性。意思是,X提供給Y的資訊量=Y提供給X的資訊量,這也是使用"相互資訊"這個名詞的原因。
$$ \begin{aligned} I(X;Y) &= H(X) - H(X \mid Y) \\ &= H(X) - (H(X,Y) - H(Y)) \\ &= H(X) + H(Y) - H(X,Y) \\ &= H(Y) - (H(X,Y) - H(X)) \\ &= H(Y) - H(Y \mid X) \\ &= I(Y;X) \end{aligned} $$
小結
當引入時間關係之後,就可以用來測量因果關係,例如已知過去的X,是否能提供資訊給未來的Y。因此在下一篇文中,將介紹傳遞熵(transfer entropy),用來度量一個變數到另一個變數之間的資訊傳遞量。
原始論文:
Timme, N. M. & Lapish, C. A tutorial for information theory in neuroscience. eNeuro 5, (2018) doi:10.1523/ENEURO.0052-18.2018.
參考文章:
- Cover, T. M. & Thomas, J. A. Elements of information theory, 2nd Edition (Wiley-Interscience, 2006).