概率統計——貝葉斯定理與三扇門遊戲

點擊上方藍字,和我一起學技術。

在概率論的課本上有一個經典的問題,一直困擾我很久。有很多次我以為我想明白了,過了一段時間卻又會糊塗。這個問題學過概率論的同學想必都知道,就是著名的三扇門問題

說是之前在美國有一個著名的綜藝節目,這個節目里有三扇關閉著的門。其中有兩扇的後面是山羊,有一扇則放著一輛豪車。主持人會讓嘉賓做出選擇,嘉賓做出選擇之後,主持人會打開其中錯誤的一扇門,詢問嘉賓:夥計,你有一次更改選擇的機會,你要使用嗎?

節目的效果如何我們不談,但是背後的數學問題卻很有意思。我們更改或者不更改選擇,究竟分別有多大的贏面呢?

我們從直覺來分析,我們更不更換答案應該不會影響。畢竟三扇門裡有一個正確答案,主持人排除的是錯誤答案,也就是說正確答案就在剩下的兩個門裡。不管我們換不換選擇,門後是大獎的概率都應該是二分之一才對。但是書上的答案是如果不更換的話,獲獎的概率是三分之一,而更換的話,獲獎的概率高達三分之二。

這個答案顯然和我們的直覺違背,所以,我們去探究一下其中隱藏的深層次的數學原理就很有必要了。實際上,這也是概率論當中理解條件概率和貝葉斯公式非常重要的一個例題。

條件概率

條件概率大家都不陌生,我們在很早的時候就在數學課上學過。

簡單來複習一下,假設在樣本空間當中存在A、B兩個事件。如果A、B兩個事件之間沒有任何關聯,那麼就認為它們是獨立事件。比如說,如果把我今天早上喝了牛奶當做事件A,我這篇文章轉發量超過10當做事件B。顯然這兩個事件沒有任何關聯,我喝不喝牛奶完全不會影響文章的轉發量。那麼就叫做這兩個事件是獨立事件:

當然也會存在兩個事件彼此有關聯的情況,比如我早上喝牛奶和我上班有沒有遲到很有可能就是關聯事件。因為早上喝牛奶要花時間,很有可能會影響是否遲到。在這個時候P(AB)和兩個事件都有關聯,就不只是簡單的乘積了。

如上圖所示,當AB兩個事件不是獨立事件的時候。P(AB)指的就是AB兩個事件的交集,可以認為成在B事件發生的前提下A事件發生,或者是A事件發生的前提下,發生B事件。

概率論上將某件事發生的前提下另一件事發生的概率稱為條件概率,寫作P(B|A)。

我們把前文的結論寫成公式:

這個公式推導非常自然,不過用處卻很大。因為很多時候條件概率並不直觀,需要我們藉助這個公式進行計算。

我們看一道書上的經典例題,鞏固一下。

假設AB兩個城市,A城市下雨的概率是20%,B城市下雨的概率是18%,兩地都下雨的概率是12%,請問B下雨,A也下雨的概率是多少。

這題很簡單,我們可以直接套用公式,顯然

那麼:

全概率公式

我們介紹條件概率的時候,都是用的A和B兩個事件說事。但實際生活當中彼此關聯的事件並不止兩個,如果多個事件都與事件A有關,那麼這個時候的公式又該變成什麼樣呢?

我們把所有與A事件的有關的事件放入一組,稱作B組,其中包含了n個事件。那麼根據前面的條件概率,我們可以用B事件來表示A事件。

這個公式被稱為全概率公式,這個公式成立的前提是B事件組是所有與A事件有關的事件集合,也被稱為完備事件組。

貝葉斯定理

這也是本篇文章的重頭戲,在課本上貝葉斯定理只有一個簡單的公式:

其實就是我們上文當中根據條件概率推導得到的公式。如果只這麼理解當然不錯,但是這樣只能理解其中很淺的一層意思。如果只理解到這一層,後面的先驗、後驗概率、最大似然就很難理解了。

我們接著看下一層理解,這一次,我們對全概率公式進行變形:

那麼,事件A發生事件Bi也發生條件概率為:

這個公式看起來其貌不揚,但其實說明了結果和原因之間的聯繫。舉個很簡單的例子,假設A事件是汽車報警。那麼導致A事件發生的原因有很多,比如行人不小心碰撞,偷車賊來盜竊,或者是警報故障。這些導致A發生的原因的集合,就是B事件組。

如果有一天晚上我們聽到了警報聲,我們要做的其實就是要根據事件A來猜測發生事件A的原因,也即是推算

因為是在晚上,所以行人碰撞的概率很低,所以大概率是因為偷車賊。這個時候,我們就需要起床查看。如果是在白天,則相反,行人碰撞的概率很高,偷車賊作案的可能性很小,我們就可以置之不理。

也就是說事件A是我們可以直接觀測的事件,而事件B則是事件發生背後存在的原因。貝葉斯公式就是一個尋果溯因的工具,這才是貝葉斯定理真正偉大的地方。

在統計學當中,通常將可以直接觀測的事件發生概率稱為先驗概率,言下之意就是我們可以直接通過實驗測量的概率。而發生這個概率背後的原因稱為後驗概率,也就是說是我們需要通過先驗概率來計算的概率。最大似然估計,就是根據後驗概率的函數來計算使得發生概率最大時的參數。

最後,我們回到一開始的那個例子,嘗試著用貝葉斯定理算出結果。

我們用1,2,3分別代表三扇門,顯然豪車可能出現在它們當中任一扇後面。為了簡化表達,我們假設嘉賓一定選擇第一扇門打開,主持人打開了第二扇門。

我們定義ABCD四個事件,ABC三個事件分別代表三扇門後面是豪車,D事件表示主持人打開第二扇門的概率。

直覺上我們覺得

,不過我們並不確定。沒關係,我們可以來推算一下。

首先:

這點也很容易看出來。因為如果獎品出現在第二扇門後面,主持人一定不會打開第二扇門,所以 P(D|B)=0 。同理,如果獎品在第三扇門後面,主持人一定打開第二扇。所以P(D|C)=1 。

代入,可以算出來:

接下來,我們要算的是 P(A|D) 和 P(C|D) 。

根據貝葉斯定理:

通過種種計算,我們終於得到了正確的結果。但是即使我們理解了貝葉斯原理,理解了這些計算過程,還是解答不了我們心中的疑惑,為什麼這和我們的直觀感受不一樣呢?為什麼答案不是

這個問題其實很簡單,因為我們的思維被限制了。我們只關注剩下沒有打開的兩扇門上了,完全忽略了開啟的門帶來的影響。

假設我們換個遊戲,還是三扇門,還是一個獎品,還是隨機擺放。假設某個人一次可以選擇一扇或者兩扇門。那麼這這兩個選項獲獎的概率是多少?顯而易見,選擇兩扇門的概率當然是

。這個時候,我們打開兩扇門中一定是錯誤的那一扇,結果會發生變化嗎?當然也不會。

同樣的,當主持人詢問是否要更換選擇的時候,其實就是問我們是要選擇一扇門還是兩扇門。如果我們不變更選擇,就是選擇了一扇門。而如果我們變更選擇,其實是相當於一開始的時候選擇了兩扇門。兩扇門當中一定有一個錯誤答案,將它排除並不會影響最終的結果。

在主持人打開那扇門之前,三者的概率是均等的。當門開了之後,我們都知道那扇門的概率發生了塌縮,塌縮成了0。它身上縮小的概率,其實並不是均等地分攤在剩下的兩扇門上。理解了這一點,這個問題也就迎刃而解了。

如果覺得文章有所收穫,請轉發或者點擊下方的「在看」,你們的支援是我最好的回報。

程式設計師的數學2 概率論與數理統計(浙江大學第四版)