當前位置:
首頁 > 最新 > 概率論之概念解析:邊緣化

概率論之概念解析:邊緣化

學術plus】 新添加號內搜索功能!

→輸入關鍵詞→一鍵檢索您需要的文章。快來試試!

本文轉載自:專知,來源:專制內容組(編)

【導讀】前不久,專知內容組為大家整理了數據科學家Jonny Brooks-Bartlett的系列博客(包括概率論引言、極大似然估計、貝葉斯參數估計等),引起不錯的反響,前兩天Jonny Brooks-Bartlett又退出了最新的技術博客「概率論概念解釋:邊緣化(Marginalisation)」。繼承其系列博客的優良傳統,這篇文章依然保持通俗易懂、深入淺出的風格,內容主要圍繞概率論的「邊緣化的概念」進行呢詳細的介紹,並通過一個例子來解決一個簡單的「極大似然問題」。OK!話不多說,讓我們一起學習今天的內容吧。專知內容組編輯整理。

概率論基礎概念系列博客——概率論之概念解析:引言篇,極大似然估計,貝葉斯推斷,閱讀專知以前推出的報道:

Probability concepts explained:Marginalisation

概率論概念解釋:邊緣化

引言(Introduction)

在這篇文章中,我將解釋邊緣化的概念,並通過一個例子來解決一個相當簡單的[極大似然問題]。 這篇文章涉及到的一些關於基本概率概念的知識,你可以在本系列的[介紹性博客文章]中找到。

鏈接:

https://towardsdatascience.com/probability-concepts-explained-maximum-likelihood-estimation-c7b4342fdbb1

https://towardsdatascience.com/probability-concepts-explained-introduction-a7c0316de465

什麼是邊緣化(What is marginalisation)

邊緣化是一種方法,它要求對一個變數的可能值求和,以確定另一個變數的邊緣貢獻。這個定義可能聽起來有點抽象,讓我們用一個例子來說明這一點。

假設我們對天氣如何影響英國人的幸福這一話題感興趣。我們可以把它寫成P(幸福|天氣),即給定天氣類型的情況下一個人的幸福水平的概率是多少。

假設我們有測量一個人幸福所需的設備和定義,並記錄了一個人所在的英格蘭和另一個人所在的蘇格蘭的天氣情況。現在,通常來說蘇格蘭人比英格蘭人更幸福。問題是,人們總是有國籍的,所以在測量中我不能擺脫這個因素。所以我們實際測量的是P(幸福,國家|天氣),即我們同時關注幸福和國家

邊緣化告訴我們,如果我們把所有國家的可能性都加起來,我們可以計算出我們想要的數量(記住,英國是由三個部分組成的:英格蘭、蘇格蘭和威爾士),即P(福,國家=英格蘭|天氣)+ P(幸福,國家=蘇格蘭|天氣)+ P(幸福,國家=威爾士|天氣)。

而就是這樣!邊緣化告訴我們,只要把一些概率加起來就能得到所需的概率量。一旦我們計算出了答案(它可以是一個單個值或一個分布),我們就可以得到我們想要的任何屬性(推理)。

相關定義(Related definitions)

如果這個概念聽起來你覺得熟悉,但你以前沒有聽說過邊緣化,這可能是因為你聽說的是它的另一個名字。有時這種方法被稱為對妨害變數(nuisance variable)進行積分。積分本質上是對一個變數進行累加(「adding up」)的另一種說法,你正在求和的變數被稱為「妨害變數」(「nuisance variable」)。 所以在上面的例子中,「國家」這個變數是妨害變數。

如果你正在使用[概率圖模型],那麼邊緣化是你可以執行精確推斷的一種方法(也就是說,你可以從你感興趣的分布中記下確切的數量,例如可以從分布中精確計算均值)。在這種情況下,邊緣化是[變數消除]的一種方法,有時被用作同義詞來代替。

鏈接:

https://blog.statsbot.co/probabilistic-graphical-models-tutorial-and-solutions-e4f1d72af189

https://en.wikipedia.org/wiki/Variable_elimination

舉例:骰子遊戲

我將會講一個例子,這是世界上最好的數學和計算晶體學家之一Airlie J. McCoy所寫的論文中的例子。如果你正在尋找一個關於骰子的各種極大似然概念的很好的介紹(例如,對數似然,中心極限定理等),那麼我強烈推薦它。

假設我們有四個不同類型的骰子:4面骰子,6面骰子,8面骰子和10面骰子(如下圖所示)。

圖:我們有4個骰子。從左到右依次是:4面骰子,6面骰子,10面骰子和8面骰子。

關於遊戲

我把6面和8面的骰子放在一個紅色的盒子里,4面和10面的骰子放在一個藍色的盒子里。

我從每個紅藍盒子中隨機選擇一個骰子,然後把它們放在一個黃色的盒子里。

我從黃箱子里隨機選擇一個骰子,擲骰子並告訴你結果。

玩完遊戲後,我們被告知結果是3。我們想要回答的問題是:骰子最可能是來自紅盒子還是藍盒子?*

圖:關於遊戲過程的圖形描述

解決方案

為了解決這個問題,我們必須計算出骰子從紅盒子中取出的可能性,因為我們擲出了一個3, 即L(box=red| dice roll =3),以及我們擲了一個3,並且骰子從藍色方框中被選中的可能性是L(box=blue| dice roll =3)。無論哪個概率是最高的,都是我們給出答案。(這裡面dice roll是指擲骰的意思)

那麼我們如何計算L(box=red| dice roll=3)和L(box=blue| dice roll=3)?

首先要知道的是,可能性和概率是通過如下等式聯繫起來的:

關於這個式子的詳情請參閱我的博文:

https://towardsdatascience.com/probability-concepts-explained-maximum-likelihood-estimation-c7b4342fdbb1

這意味著可能性L(box=red| dice roll =3),等同於骰子來自於紅框,投擲出3的概率,即P(dice roll =3|box=red)。類似地,L(box=blue| dice roll =3) = P(dice roll =3| box=blue)。

假設我們選了一個紅盒子里的骰子。它可以是六面骰子,也可以是八面骰子,每個骰子都是50/50的機會。假設我選擇了六面骰子。這意味著我必須從黃色盒子中選擇6面骰子然後擲出3。所以在這種情況下,概率由以下公式給出:

這個公式中,「1/2」是因為我有50%的幾率從紅色的盒子里隨機挑選6面的骰子(因為盒子中還有8面的骰子,所以是1/2)。 「1/6」來自於這個6面骰子有六個面的事實,因此有1/6的機會投擲出3。

請注意,答案中沒有包含從黃色盒子中選取六面骰子的概率。這是因為在這種情況下,從黃色盒子中拾取六面骰子的概率是1(你可能以為它是1/2,因為黃色盒子包含了6面骰子,同時也包含了從藍色的盒子中取出來的骰子)。這是因為我們正在計算從紅色盒子中取出一個六面骰子擲出一個3的條件概率,因此,黃色箱子里的另一種情況是不可能的,因為另一種情況原本是從藍箱子里拿來的。所以前提條件是從紅色箱子取出,六面骰子只在紅色的箱子里,所以我們從黃色箱子中選擇六面骰子的概率是1。

用同樣的方法我們可以計算取出一個八面骰子(實際上從紅色盒子中取出),投擲出3的概率是:

現在我們已經做了幾乎所有的工作來計算骰子來自紅色盒子的可能性。請記住,紅色盒子中只包含了6面和8面的骰子,所以我們需要做的是找到這個骰子是6面或8面的概率。從第一段介紹性的文字中,我們知道在「或」情況下,我們需要把概率相加。所以骰子來自紅色盒子的概率是:

上面等式中「波浪」等號的意思是「近似等於」。 它的真正的答案是0.1458333333 ......(這3個是永遠繼續下去的,我們說它是3的循環),但是我很懶,只給了小數點後三位數字的回答(即四捨五入到小數點後三位)。要明確的是,我們沒有給出精確的答案,我們通常使用「波浪」等號。

接下來,我們可以對藍色盒子進行相同的計算,得到:

骰子最初來自藍色盒子的可能性更高,因此使用極大可能性我們可以得出結論,骰子最有可能來自藍色盒子。

這個例子中的邊緣化在哪裡?

對於那些非常善於觀察的人,你會注意到,在這個例子中,我沒有使用過「邊緣化」這個詞。這是因為我想讓你們直觀理解如何計算從盒子中取出骰子的概率。

如果你看一下上面這個計算藍色盒子的方程,你會看到我們把所有可能性的概率加在一起,即選擇4面骰子和10面骰子。這就是邊緣化!我們相加了這個討厭的變數(骰子)。注意在那個遊戲中,我們從來沒有觀察到我們選擇的骰子,因為我們不需要!我們需要知道的是結果(擲骰子= 3)和所有可能的骰子值。這就是為什麼它如此強大。我們可以計算我們從未觀察過的事物的概率。只要我們知道可能的妨害變數值,我們就可以用它來執行邊緣化,並計算不同變數的分布。

關於符號

下面是讓我們寫一些更可怕的方程式的部分,但請大家寬容我,我會盡我所能使其容易理解。

讓我們來思考我們剛才在這個例子中做了什麼。 我們以一個聯合概率開始,P(擲骰子,骰子|盒子)(即擲骰子是3,骰子是我們選擇的骰子,而盒子是最初的盒子;藍色或紅色)。一旦我們進行邊緣化,我們能夠得到一個條件概率,P(擲骰子|盒子)。這是邊緣化的主要好處之一。 我們可以從聯合概率轉變成條件概率。

實際上,我們也可以從聯合概率到邊緣概率。如果你看到邊緣化的數學定義,這通常是你會看到的形式。如果你還沒有看到數學的定義,...。 你很幸運。你即將看到它。

這個大寫的"Σ"把所有一切相加的偷懶寫法,它下面的「y」告訴我們應該把什麼相加起來。所以這個等式意思是說「如果你想要得到X(等式左邊)的邊緣概率,那麼你需要對變數Y的每一個可能的結果來計算X和Y的聯合概率值。」

聯合概率有時候是很難處理的,所以我們可以用[一般乘法法則](https://www.khanacademy.org/math/ap-statistics/probability-ap/probability-multiplication-rule/a/general-multiplication-rule)重寫右側的聯合概率。

方程的右邊寫成條件分布和邊緣分布的乘積的形式,有時更容易計算。

像我之前提到的,Σ的意思是把所有的東西相加。我沒有提到的是,只有當變數是「離散的」時候才使用特定的符號。我的意思是變數只能取有限的數值。在前面的例子中,我們相加了離散的妨害變數(例如,英國的國家只能是英格蘭,威爾士或蘇格蘭,而骰子只有有限的結果,例如1到6)。離散值不一定是有限的。例如,它們可以是所有的正整數(即正整數),如1,2,3,...。等等

然而,當我們使用在給定邊界內具有無限可能值的變數時(例如0到10米之間的距離度量可以具有無限數量的值,例如5米,5.1米,5.01米,5.001米,5.0001 m,...等等),我們把這些稱為「連續變數」,我們不使用「Σ」符號。相反,我們使用「 ∫ 」。這個符號仍然告訴我們,我們必須把所有東西都加起來,但是我們知道,這時候妨害變數是連續的,所以把邊緣化寫成:

這意味著與上述離散變數情況下的邊緣化方程相同。 最後的「dy」告訴我們要把什麼求積分(「積分」是我們用在連續變數的表示「加起來」的意思)。

「dy」是必要的原因是,如果我們不聲明它,它並不總是很明顯。考慮一下這個情況,其中妨害變數是一個圓周的角度。我們知道角度在0到360度之間,或者從技術上講,我們喜歡用弧度而不是度,我們說角度從0到2π

來源:維基百科。一個圓周中的弧度

所以我們可能會寫成如下的形式:

我們知道,我們需要對0到2π之間的值求積分,但是我們是對X的值求呢還是對Y的值求呢?提出這個問題,世界各地的數學家都恨不得把我的臉狠狠地揍一頓。

為了解決這個問題,我們把「dy」放在最後,清楚地表明我們將對0和2π之間的Y值進行積分,這意味著我們也知道結構是求X的邊緣分布(下面所示)。

對於感興趣的人來說,從0到2π求積分是我們在X射線晶體學領域(我的博士領域)所要做的事情,因為這個問題叫做[相位問題](https://en.wikipedia.org/wiki/Phase_problem)。這基本上是我們無法測量實驗中「相位」的問題,而相位可以像一個角度一樣被數學化處理。因此,為了計算我們觀察到的數據的理論分布,我們不得不邊緣化這些相位。

亞當·凱勒([Adam Kelleher](https://medium.com/@akelleh))利用因果關係中的邊緣化來消除混雜因素的影響(https://github.com/akelleh/causality )。他還使用一般的乘法規則,如上所述,用條件分布和邊緣分布的乘積來寫出邊緣化。你可以在他的[博客文章](https://medium.com/@akelleh/causal-inference-with-pandas-dataframes-fc3e64fce5d)中閱讀。

結束語

概率的鏈式法則

在上面的計算中,我們實際上使用了一個相當常見的概率過程,甚至沒有很重視它。我們使用的結果是概率的鏈式規則(不要與鏈式規則混淆)

它允許我們寫一個聯合概率(左邊),它等於條件和邊緣概率的乘積(右邊)。

這在計算聯合分布時用的很多,因為正如我們已經提到的那樣,我們可以相對容易地確定條件和邊緣概率。

要看看我們何時使用了上面的公式,請記住使用了下面的方程:

對比方程式,我們可以讓A = dice roll,B = die和C = box。 這意味著我們可以把上面方程的左邊寫成

現在讓我們理解一下:

P(擲骰= 3,骰子面數= 6面,盒子=紅)是我們擲出3的概率,因為我們拿起了6面的骰子並且它在紅盒子中。這個概率為1/6。

P(骰子面數= 6面 | 盒子=紅)是我們從紅盒子中挑選出來的六邊骰子的概率。這個概率值為1/2。

因此,我們得到1/2?1/6,這正是我們從直覺中得出的結果。

這裡我們用三個變數顯示了鏈式規則。如果你看看維基百科鏈式規則的(看起來很可怕)定義,你會看到四個變數和無限多變數的外觀。

這看起來可怕,但想法是一樣的。 我們在左邊有一個聯合概率分布,我們想把它寫成右邊的條件和邊緣概率的乘積。

貝葉斯推斷的使用

如果你閱讀我以前關於貝葉斯推斷的帖子,你會知道貝葉斯定理的模型形式能夠寫成

我提到我們經常不計算分母P(data),也就是所謂的歸一化常數,因為在很多情況下,計算起來可能太難了,我們並不總是需要它。

在某些情況下,邊緣化可以幫助我們準確地計算出它。如果我們在上面的「符號」部分中以與連續變數情況相同的形式來寫邊緣化方程,我們有

顯然我們正在通過所有可能的參數值來擬合右側。在某些情況下,我們可以精確地或近似地評估這個表達式,以便我們可以得到一個歸一化的後驗分布。

再次感謝你讀到了這裡。我知道這篇文章包含了相當多的數學,我也希望這樣是合理的。 請毫不猶豫地告訴我是否有什麼寫的不清楚或者可以改善的地方。

謝謝你!

https://web.stanford.edu/class/cs230/index.html

-END-

歡迎大家評論

GIF

聲明:版權歸原作者所有。文章觀點不代表本機構立場。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 學術plus 的精彩文章:

2017年國外高超聲速飛行器技術發展綜述
學報:一種無人集群系統模擬平台設計(下)無人集群模擬平台設計與系統驗證

TAG:學術plus |