您當前的位置:首頁 > 動漫

理解資訊瓶頸(1):從機率論與資訊理論談起

作者:由 湯圓不說話 發表于 動漫時間:2021-09-15

前言

神經網路的可解釋性是一個令人著迷的問題,在我有限的機器學習的生涯中,已然被眼花繚亂的各類演算法,難以調和的各種引數,折磨得疲憊不堪。由於算力的提升,神經網路在近幾年高速發展。但直到現在,仍然沒有一個通用的理論框架來告訴我們,針對某種特定的任務,應該選用哪種網路結構,如何確定網路超引數,在訓練尚未完成之前,我們甚至無法確定這個資料集以及我們選用的網路能否完成預定目標。

機器學習不應當成為一個經驗性的學科,從神經網路誕生以來就有大量學者投入到神經網路的可解釋性工作,寄希望找到造“大房子”背後的“物理‘”,讓神經網路工程師能夠完成從“搭積木”到“造高樓”的華麗轉變,找到神經網路應用的邊界。

我個人相信,如果未來我們能夠找到正確開啟神經網路黑盒的方式,那種方式一定與資訊理論有關。

本系列主要是對於Naftali Tishby教授從2000年到2017年到三篇有關資訊瓶頸的論文進行逐一解讀,著重梳理論文邏輯,提煉論文中的要點,算式的推導請讀者前往文末論文連結自行檢視。本人能力有限,如有如有錯誤和遺漏,請在評論區指出,感謝!

首先是第一篇文章,這片論文完成於1999年9月,發表於2000年4月,是資訊瓶頸概念與方法的第一次提出。

(一)資訊理論基礎

互資訊

KL散度是衡量兩種隨機變數分佈距離的一種計算方式,其定義為:

D_{KL}(p||q) = \sum_{x}{p(x)log\frac{p(x)}{q(x)}} \tag{0}

互資訊,也是兩個隨機變數的聯合分佈與邊緣分佈的乘積間的KL散度

D_{KL}(p(x,y)||p(x)p(y))

,其定義方式為:

理解資訊瓶頸(1):從機率論與資訊理論談起

如果為連續隨機變數,定義為:

理解資訊瓶頸(1):從機率論與資訊理論談起

其具有非負性,直觀上可以理解為兩個隨機變數中共同保有的資訊量,這也是衡量兩個隨機變數之間關聯性的一個很好的指標,如果互資訊為

0

則兩個隨機變數相互獨立。

馬爾可夫鏈

如果三個隨機變數構成馬爾可夫鏈

X\rightarrow Y \rightarrow Z

,即有:

\begin{equation} p(x,y,z) = p(x)\cdot p(y|x)\cdot p(z|y) \tag{1}  \end{equation}

可以推導得出:

\begin{equation} I(X;Z|Y) = 0 \tag{2} \end{equation}

即給定

Y

X

Z

條件獨立。

率失真理論

率失真理論的背景是單個隨機變數的量化問題,由於一個連續的隨機資訊源需要無限的精確度才可以精確表示,我們希望使用一個更簡單的隨機量來描述它,並希望這種表達能夠儘量精準,設

X

為一個被表示的隨機變數,記

X

的表示為

\tilde{X}

率失真理論中,用失真

D

來度量用

\tilde{X}

表示

X

時的“失真”程度,首先定義失真函式:

d:X \times \tilde{X} \rightarrow R^{+}

,其中

d(x,\tilde{x})

是用來刻畫使用

x

來表示

\tilde{x}

的代價度量,這個代價度量可以是任意建立在兩個變數上的“距離”函式,比如平方誤差等等。對於兩個隨機變數而言,對於失真函式取期望便得到了失真

D

直觀來講,如果我們的

\tilde{X}

越接近

X

,失真越小,

\tilde{X}

表示

X

將會更加精確,但同時簡化程度也降低了,位元速率會增加。

理論上可以證明,在失真小於

D

的約束下,對於一個有界的失真函式,其位元速率存在下界:

\begin{equation} R(D) = \mathop{min}\limits_{p(\tilde{x}|x):\sum_{(\tilde{x},x)}{p(\tilde{x},x)}d(\tilde{x},x)\leq D}  I(X;\tilde{X}) \tag{3} \end{equation}

為了找到這個下界與對應的分佈,可以引入拉格朗日乘子,將問題轉為最佳化問題,再透過相應方法進行求解:

\begin{equation} F\left[ p(\tilde{x}|x) \right] = I(\tilde{X};X) + \beta Ed(\tilde{x},x)  \tag{4} \end{equation}

(二)資訊鏈條構造

論文在率失真理論描述的模型之上,新增了一個隨機變數

Y

,如果用文字描述這個模型:

Y

X

是兩個並不獨立的隨機變數,

\tilde{X}

是一種對於

Y

有表徵能力的

X

的表示。

\tilde{X}

X

的表示,這意味著,

\tilde{X}

的取值僅僅取決於

X

,在給定

X

的情況下,

Y

取何值都不會影響到

\tilde{X}

的分佈,數學語言來講就是:

\begin{equation} p(\tilde{x}|x,y) = p(\tilde{x}|x)  \tag{5} \end{equation}

按照條件機率的定義有:

 \begin{equation} p(x,\tilde{x},y) = p(y)p(x|y)p(\tilde{x}|x,y) \tag{6} \end{equation}

帶入模型條件可以得到:

 \begin{equation} p(x,\tilde{x},y) = p(y)p(x|y)p(\tilde{x}|x) \tag{7} \end{equation}

回到之前(2)式對於馬爾可夫鏈的定義,我們就成功透過模型構造了一條馬爾可夫鏈:

 \begin{equation} Y\rightarrow X\rightarrow\tilde{X} \tag{8} \end{equation}

這個資訊鏈條在後續的論文中還會反覆出現,不妨先劇透一下,在神經網路中,正是因為我們透過神經網路建立了從原始資料

X

建立了到中間層資料

\tilde{X}

的對映關係(這種函式對映條件比這裡的條件獨立條件還要強),使得神經網路的標籤,資料,中間層資料正好滿足這個模型,後續有關資訊瓶頸的討論才能直接應用於神經網路。

這個鏈條要特別注意理解,這三個隨機變數並非按照我們直覺的排列方式

X\rightarrow\tilde{X}\rightarrow Y

構成馬爾地夫鏈,搞清了這點,讀懂這三篇論文,看明白一些推導細節就容易多了。

(三)最佳化目標:資訊瓶頸

在提出了以上的模型結構過後,論文提出了生動的資訊瓶頸概念,所謂資訊瓶頸就是在已知

X,Y

的聯合分佈(

p(x,y)

已知)的情況下,最小化最佳化以下的算式:

 \begin{equation} L\left[ p(\tilde{x}|x) \right] = I(\tilde{X};X) -\beta I(\tilde{X};Y) \tag{9} \end{equation}

直觀理解這個式子,就是儘量使

\tilde{X}

更多的保留

Y

的資訊,並儘可能地壓縮其包含

X

的資訊。有沒有覺得有一絲熟悉?這正是神經網路希望做到的事情,把

\tilde{X}

看作最後神經網路的輸出,

\tilde{X}

最理想的訓練結果難道不就是包含最後標籤

Y

的全部資訊,而把原始高維資料

X

中無關的資訊全部拋掉嗎?

其中

\beta

為拉格朗日乘子, 改變

\beta

,可以讓

\tilde{X}

在盡力保留

Y

資訊與儘量丟掉

X

的資訊之間選擇合適的平衡,用資訊瓶頸來比喻,

\tilde{X}

可以比作一個瓶子,將其含有的資訊比作水,

p(\tilde{x}|x)

比作調節瓶子大小的工具,

\beta

引數規定了瓶子大小的下限,在最佳化過程中,瓶子不斷縮小,水不斷被排出,最終瓶子減小到下限,保有的資訊量也就收斂了。

我們也可以很容易看出,這個式子與前面的率失真理論所討論的內容一脈相承,為什麼會想到構造這個模型?為何指導這個形式的最佳化可解?這些都有跡可循。

(四)資訊瓶頸的解

論文在提出最佳化目標後,透過拉格朗日乘子法,推導獲得了最終的解析解:

p(\tilde{x}|x) = \frac{p(\tilde{x})}{Z(x,\beta)}exp\left[ -\beta\sum_{y}{p(y|x)}log\frac{p(y|x)}{p(y|\tilde{x})} \right] \tag{10}

其中

Z(x,\beta)

為配分函式,保證條件機率求和為

1

Z(x,\beta) = \sum_{\tilde{x}}{p(\tilde{x})exp(-\beta d(x,\tilde{x}))} \tag{11}

其中

d(x,\tilde{x}) = D_{KL}[p(y|x)||p(y|\tilde{x})] \tag{12}

利用馬爾可夫鏈的性質與貝葉斯法則,可以得到

Y

關於

\tilde{X}

的條件機率:

p(y|\tilde{x}) = \frac{1}{p(\tilde{x})}\sum_{x}{p(y|x)p(\tilde{x}|x)p(x)} \tag{13}

(五)利用迭代逼近資訊瓶頸的解

不難發現,在解析式當中,出現了迴圈表示式,是不好直接消掉的,對於這種結構,在論文中給出了迭代數值逼近的方法,迭代式如下:

\begin{equation} \left\{ \begin{aligned} p_t(\tilde{x}|x)&=\frac{p_{t}(x)}{Z(x,\beta)}exp(-\beta d(x,\tilde{x}))\\ p_{t+1}(\tilde{x})&=\sum_{x}p(x)p_{t}(\tilde{x}|x)\\ p_{t+1}(y|\tilde{x})&=\sum_{y}p(y|x)p_{t}(x|\tilde{x})\\ \end{aligned} \right. \tag{14} \end{equation}

(六)總結

本篇論文從率失真理論出發,構建了新的資訊鏈條,討論了一個新的資訊理論模型,在此框架下首次提出了資訊瓶頸的最佳化問題,透過拉格朗日乘子法得到了迴圈的解析解,最終給出了迭代式用以逼近最優解。

參考文獻

[1] Tishby N, Pereira F C, Bialek W。 The information bottleneck method[J]。 arXiv preprint physics/0004057, 2000。

[2]T。 M。 Cover and J。 A。 Thomas, Elements of Information Theory (Wiley,

New York, 1991)。

[3] Tishby N, Zaslavsky N。 Deep learning and the information bottleneck principle[C]//2015 IEEE Information Theory Workshop (ITW)。 IEEE, 2015: 1-5。

[4]資訊瓶頸理論-基礎與應用 - 白楚的文章 - 知乎

https://

zhuanlan。zhihu。com/p/60

958638