貝葉斯推理原理

貝葉斯推理原理

1 人贊了文章

貝葉斯推理是一種精確的數據預測方法。當沒有足夠多的數據,而又想準確的獲取預測信息時,它特別有用。

提起貝葉斯,人們總是對它充滿了敬仰之情,但是貝葉斯並不是傳說中的那麼神秘。它的概念很容易理解,並不是那麼深不可測。貝葉斯推理可以讓我們從已知數據的綜合判斷中得出更有力的結論。

貝葉斯推理源自托馬斯貝葉斯的觀點,托馬斯貝葉斯是300年前住在倫敦的一位思想開放從不墨守成規的長老會牧師。他寫過兩本書,一本是關於神學的,一本是關於概率的。他的工作就包括現在著名的並且已經被應用到推理問題以及基於經驗的推測問題中的貝葉斯定理的原始形式。貝葉斯推理能夠快速的被人們熟知得益於另外一位牧師理查德普萊斯的大力推崇,他看到了貝葉斯的重要性,對貝葉斯推理進行了總結和提煉,因此貝葉斯定理也被人們稱為Bayes-Price定理。

影院中的貝葉斯推理

想像下面一個場景,你正在影院中看電影,突然前面一個人掉了一張電影票。上圖就是這個人的背影。此時,你想引起那位朋友的主意,但是你只看到了那個人的背影,一頭飄逸的長髮......你不知道這個人是男生還是女生,是說:「先生,你票掉了」還是「美女,你票掉了」呢?鑒於對當地男生和女生髮型的了解,我們可能會認為這是個女生。這個例子很簡單,只有兩種髮型長度和兩種性別。

接下來,考慮一下情況的變化,假如發現這個人在男士休息室排隊,那麼有了這個額外的信息,我們可能會認為這個人是位男生。此例依據常識和背景知識就能做出判斷,無需思考。而貝葉斯推理就是這種方式的數學形式,我們藉助貝葉斯推理可以對事物做出更準確的預測。

現在我們將上面的情況加上數字,假定影院中一半是男生一半是女生,假定觀影的人一共100個人,那麼有50個女生,50個男生。 在這些女生中有一半(25人)留長發,一半(25人)留短髮;在男生中,有48人留短髮,2個人留長發。因此就有25個留長發的女生和2個留長發的男生。由此可推斷,那位掉票的人很大幾率上是女生。

假定100個人在男士休息室外面排隊,其中98個男士,另外還有2個女士陪伴著他們自己的伴侶。一半的女士仍然留著長發,另一半留著短髮,即2個女士中一個留著長發一個留著短髮。長發男士和短髮男士的比例依舊保持不變,那麼98個男士中94個是長發,4個是短髮。那麼就有1個女士和4個男士留有長發,據此可以推斷,持票者是男士的幾率更大一些。這是貝葉斯推理原理的實際例子,事先知道一個關鍵信息-門票持有者在男士休息室外排隊,可以幫助我們更好的做出預測。

為了更清楚的討論貝葉斯推理,我們有必要花一些時間明確的定義一些理念。在深入理解貝葉斯推理的原理之前需要了解一些數學概念,包括概率、條件概率、聯合概率以及邊際概率。

概率

一件事發生的概率等於改時間發生的數目除以所有事件發生的數目。觀影者中為女士的概率為50除以所有觀影者100,即50%,那麼觀影者中為男士的概率也是50%。

而在男士休息室外排隊這種情況下,排隊者中為女士的概率變為2%,而為男士的概率變為98%。

條件概率

條件概率回答了類似這樣的問題:「假如我知道一個人是女士,那麼她留長發的概率是多少?」條件概率的計算方法和直接概率的計算方法是一樣的,但它們更像所有例子中滿足特定條件的一個子集。在我們的例子中,P(long hair | woman)為擁有長發女士的數目除以女士的總數,這個結果是50%,不管是在男士休息室外排隊的女士還是整個影院觀影的女士。

同樣P(long hair | man)為留長發的男士的概率,這個結果為4%,不管他是在觀影還是在男士休息室外排隊。

很重要的一點,條件概率P(A|B)並不等於P(B|A)。比如,P(cute | puppy) 是不一樣的 P(puppy | cute)。如果我抱著是小狗,那麼它可愛的概率就很高,如果我抱著的東西很可愛,那麼它是小狗的概率就可能很低,因為它可能是小貓、兔子、刺蝟或者是一個小寶寶。

聯合概率

聯合概率適合回答類似這樣的問題:「一個人是短髮女人的概率是多少?」找出這個問題的答案需要兩個步驟,首先我們關注的是某個人是女人的概率P(woman),然後我們引入某人是短髮的概率,假設她是女士, P(short hair | woman),通過乘法將他們結合起來得到聯合概率,P(woman with short hair) = P(woman) * P(short hair | woman),通過這個方法,我么可以計算出P(woman with long hair)=0.5*0.5=0.25,而男士休息室中 P(woman with long hair)為0.01,因為P(woman)是不同的,

同樣,在所有觀影者中P(man with long hair) 為0.02, 但是在男士休息室外排隊的P(man with long hair)為0.04。

與條件概率不同,聯合概率和順序無關,P(A and B) 等同於P(B and A)。比如,我們同時吃牛奶和油炸圈的概率和同時吃油炸圈和牛奶的概率是一樣的。

邊際概率

這些基礎的概念中,最後我們了解一下邊際概率。邊際概率特別適合回答類似這樣的問題:「某人留有長發的概率是多少?」 為了找出答案,我們需要累加所有可能發生的情況,男人留有長發的概率加上女人留有長發的概率,P( long hair)=P(man with long hair)+P(woman with long hair),有上面計算的結果可以得出,某人留有長發的概率在所有觀影者中為0.27,在男士休息室這個概率為0.05。

貝葉斯定理

現在來看一下我們真正關心的地方,我們想找出這個問題的答案:「如果我們指導某個人有長頭髮,那麼他是女人或男人的概率是多少?」這是一個條件概率, P(man | long hair),與前面我們得到的P(long hair | man)恰好相反,但是條件概率不可逆,因此我們對P(man | long hair)一無所知,值得一提的是,托馬斯貝葉斯觀察到一些很酷的東西可以幫到我們

我們應該還記得上面聯合概率的計算方法,我們可以寫出P(man with long hair) 和 P(long hair and man)的求解方程,因為聯合概率是可逆的,因此這兩個方程是相等的。

藉助一點代數知識我們就能求解出P(man | long hair)

用A和B代替man和long hair,我們可以得出貝葉斯定理

回到前面開始的部分,我們藉助貝葉斯定理解決電影票的問題

首先我們需要擴大我們的邊際概率P(long hair)

代入數字,計算出某人是男士且留長發的概率。對於在男士休息室外排隊的人當中留長發且為男士P(man | long hair)為0.8,這個數字也證實了我們的直覺,那位丟票的人很大概率上是位男士。貝葉斯定理抓住了此情形下我們的直覺,更重要的是它整合了人們先驗知識,即在男士休息室外排隊的人中,男士遠多於女士。利用這一先驗知識,它更新了我們在此情形下的認識。

概率分布

以上的例子很好的解釋了貝葉斯推理的由來,並展示了其運作機理。然而,在數據科學應用中它長應用於數據解釋。通過對所測量東西的先驗知識的提取,我們可以通過小數據集得出更有力的結論。在詳細展示貝葉斯是如何工作之前我們徐亞先弄清楚所謂的概率分布。

現在可以想像有一壺咖啡正好可以裝滿一個杯子,如果我們有不止一個杯子,那麼我們就必須考慮如何分配這一壺咖啡。當然,我們可以任意分,只要將所有咖啡倒入杯子中。放到電影院的例子中,一個杯子可能代表男士或代表女士。

或者我們可以用四個杯子來表示性別和長短髮的所有組合分布,在這兩種情況下,總咖啡量加起來為一杯。

通常我們將這些杯子挨個放到一起,每個杯子里的咖啡量看做一個柱狀圖,將咖啡看做我們的信仰,然後他們的分布展示了我們相信某種事物的強烈程度。

假如我們扔出一枚硬幣,並蓋住它,你會認為正面或反面的概率是一樣的。

同樣我們擲一個骰子,並蓋住它,你會認為六個面朝上的概率是一樣的。

假如我們買了一期彩票,我們會認為中獎的概率幾乎為零,拋硬幣、擲骰子以及購買彩票等這些都可以視為測量和數據收集的例子。

毫不奇怪,我們也可以對其它收集的數據持有某種觀點,比如美國人的身高,如果我告訴你我見過並測量過某人的身高,那麼你對他們身高的看法就類似上圖,這表明人們相信美國人的身高在150-200cm之間,而且最有可能在180-190cm之間。

也可以將這個分布區間細化,可以看做將一壺咖啡裝在更多更小的杯子上,以獲得更小的細粒度。

最終虛擬的杯子數量越來越多,以至於這個比喻可能不那麼恰當了,此時這個分布是連續的。使用它的數學方法可能有一些變化,但是底層的基本思想還是一致的,此圖展示了我們對某一事物認知的概率分布。

至此,我們了解了概率分布,我們可以使用貝葉斯定理去解釋一些數據了,為了說明這個問題,我們以狗的稱重為例。

獸醫領域的貝葉斯推理

當去看獸醫時,需要給小狗稱重,但是小狗總是喜歡在秤上晃來晃去,這樣就很難得到準確的體重,但是這個體重是否準確還是很關鍵的。如果體重增加了,我們必須減少它的食物攝入量,狗狗愛吃勝過愛自己。就這樣,在狗狗的來回晃動中,我們測得了三組數據,分別是13.9磅、17.5磅、14.1磅。通過計算這組數據的均值、標準差和標準誤差就可以得到小狗的體重分布圖

這個圖就是狗的稱重分布圖,它是一個均值為15.2標準差為1.2的正態分布,三條白線是我們三次實際測量的結果,從這條曲線可以看出,儘管峰值為15.2但在13處很容易達到一個很低的值,在17處很容易達到一個很高的值,過於寬泛,我們很難做出一個合理的預測,當遇到這種情況時,我們可以進行更多次的測量,但是在某些情況下多次測量是不可行的,我們的例子中在狗狗失去耐心前也只能進行這幾次的測量。

這個時候貝葉斯定理就派上用場了。

為了更清楚的描述貝葉斯的使用,我們用w(weight)和m(measurements)替換A和B,先驗P(w)表示我們對已有事物的認知,在這裡為在狗狗稱重前我們認為的它的體重w,似然值P(m | w)表示測量某一特定重量的概率。後驗P(w | m)表示測量後體重為w的概率,當然這也是我們最關心的。

P(m)表示任何數據點被測到的概率,本例中我們假設它為一常量,且測量本身是無偏的。

假定狗狗的體重是 13磅或者15磅或者1磅或者1000000磅的概率是一樣的,因此我們假設一個統一的先驗,這意味著它的概率分布對於所有的值都是一個常數,因此可以將貝葉斯定理簡化為P(w | m) = P(m | w)

藉助狗狗的每個可能體重我們可以得到三個測量值的似然值,比如,如果體重是1000磅,那麼我們的測量結果是極不可能的。如果體重實際上是14磅或16磅,那麼我們的測量值是很有可能的。我們可以遍歷體重的每一個假設值計算我們的測量結果的似然值,這就是P(m | w)。得益於這個均一的先驗,它等同於後驗分布P(w | m)

這並非偶然,通過均值、標準偏差、標準差計算得來的結果,很像答案。實際上他們是一樣的,都是採用一個統一的先驗給出一個傳統的統計結果的估計,曲線的峰值即均值,15.2也被稱為最大似然估計MLE

雖然使用了貝葉斯定理,但離有用的估計還差一些距離。為此,我們需要均一的先驗概率,先驗概率表示我們在進行測量之前對某一事物的信任程度。均一的先驗概率說明我們相信每一個可能的結果都具有相同的概率,這通常很少見。我們通常知道我們測量的量年齡總是大於零,溫度總是高於-276攝氏度,成年人的身高很少超過8英尺。有時候我們有額外的領域知識,有些值很有可能出現在其他值中。

在狗狗的稱重案例中,還有一些其他的信息,比如,上次去看獸醫時它的體重是14.2磅,而且這段時間並沒有感覺到它有明顯的變重和減輕。雖然手臂並不能準確的感覺到這個重量的變化。鑒於此,我們粗略的估計它大概有14.2磅,可能有上下一兩磅的偏差,為了方便,我們使用一個最大值14.2,標準差為0.5的正態分布表示

有了先驗概率,我們就可以重複計算後驗概率。為此,我們考慮一種可能性,假設狗狗的重量為一特定值,比如說17磅,然後17磅這一似然值乘以測量值為17的條件概率,接著對於其他的體重,重複這一過程。先驗的作用是降低某些概率,擴大其他概率。本例中,增加更多的測量值在13-15磅之間,之外的區間減少測量值,這與均一先驗概率是不同的。它給出了一個狗狗體重是17磅的合理的可能性,在非均一先驗概率下,17磅落在正太分布的尾部,乘以該處的概率使17磅體重的似然值降的很低。

通過計算狗狗每一個可能的體重的概率,我們得到一個新的後驗概率。後驗概率分布的峰值也叫作最大後驗概率(MAP),在本例中為14.1磅。這與之前使用均一先驗概率計算的結果明顯不同,此峰值更窄,有助於我們做出更可信的估計。現在看,狗狗的體重變化不大,它的體型依舊如前。

通過整合我們的認知以及測量值,我們能夠更有信心的做出一個更準確的估計。有助於我們使用更小的數據集。先驗概率賦予17.5磅一個很低的概率值,這幾乎等同於反對此偏離正常值的測量值。不同於直覺和常識的異常檢測方式,貝葉斯定理有助於我們使用數學的方式進行異常檢測。

另外,我們假設P(m)是均一的,碰巧我們知道我們的測量存在某種程度上的偏差,這將反映在P(m)中,如果測量僅僅輸出一些偶數或者10%的時間內返回一個2.0或者每三次測量產生一個隨機數,那麼必須手動修改P(m)以提高後驗概率的準確性

規避貝葉斯陷阱

求解狗狗的體重體現了貝葉斯推理的優勢,但這也存在一定的陷阱。通過對答案做一些假設我們提高了我們的估計,測量某個事物的目的就是了解它,假設我們已經知道答案,那麼我們可能會刪減一些數據。馬克吐溫簡明扼要的指出了強先驗的危害:「讓你陷入困境的不是你所不知道的事情,而是你知道的那些看似正確的東西」

假如採用強先驗假設,一開始假設它的體重在13磅到15磅之間,那麼如果真實體重為12.5磅,那麼我們將無法探測到。我們的先驗會為這個結果賦零概率值,無論做多少次測量,低於13磅的值都將視作無效。

幸運的是有一種方法可對沖我們的賭注,避免盲目的排除可能性。對於每一個結果至少賦予一個小的概率,假如藉助物理學上的某種巧合,狗狗的體重真的有1000磅,那麼我們的測量數據也能反映在後驗概率後果。這就是正態分布常被用作先驗概率的原因之一。正太分布集中了我們對於某種事物的大多數認識,但是他們的尾部很長,無論延伸多遠,尾部永遠不會是零。

紅桃皇后在這方面是一個很好的榜樣:

愛麗絲笑道:「試了也沒用的,沒有人相信那些不可能的事情」 皇后說:「我敢說,你練得不多。當我年輕的時候,我通常每天花半個小時都在閉上眼睛做深呼吸,為什麼,因為在早飯前我就已經意識到六種不可能了」

劉易斯·卡羅爾(《愛麗絲漫遊奇境記》)

本文翻譯自:brohrer.github.io/how_b


推薦閱讀:

自我驅動,如何構建個人的技術思維?
Ian Goodfellow暢談,離散的失敗與連續的失敗
人工智慧之計算機視覺應用專題報告2016
斯坦福大學李飛飛等人談AI醫療:病床邊的計算機視覺
外語專業,路在腳下

TAG:貝葉斯理論 | 人工智慧 | 機器人 |