常見概率分佈的直覺與聯絡
作者:Sean Owen
編譯:weakish
資料科學,不管它到底是什麼,其影響力已不可忽視。“資料科學家比任何軟體工程師都更擅長統計學。”你可能在本地的技術聚會或者黑客鬆上無意中聽到一個專家這麼說。應用數學家大仇得報,畢竟 ofollow,noindex">從咆哮的二十年代起人們就不怎麼談論統計學 了。以前聊天的時候,像你這樣的工程師,會因為分析師從來沒聽說過Apache Bikeshed(口水仗)這個分散式評論格式編排專案而發出嘖嘖聲。現在,你卻突然發現人們在聊置信區間的時候不帶上你了。為了融入聊天,為了重新成為聚會的靈魂人物,你需要惡補下統計學。不用學到正確理解的程度,只需學到讓人們(基於基本的觀測)覺得你可能理解了的程度。

正如資料結構是電腦科學的基礎,概率分佈是統計學的基礎。如果你計劃像一個數據科學家一樣聊天,那麼概率分佈就是你學習的起點。有時候,不怎麼理解概率分佈的情況下,使用R或scikit-le arn就可以完成一些簡單的分析,就像不理解雜湊函式也可以編寫Java程式一樣。然而,很快你就會碰到bug和虛假的結果,併為此痛哭流涕,或者更糟:收穫統計學專業人士的嘆息和白眼。
概率分佈有數百種,有些聽起來像是中世紀傳說中的怪獸,比如Muth和Lomax。不過,實踐中經常出現的概率分佈只有15種。這15種概率分佈是什麼?關於它們你需要記憶哪些明智的洞見?請看下文。
什麼是概率分佈?
每時每刻都有各種事件正在發生:骰子擲出、雨滴落下、巴士到站。事件發生之後,特定的結果便確定了:擲出3點加4點,今日的降雨量是半英寸,巴士3分鐘到站。在事件發生之前,我們只能討論結果的可能性。概率分佈描述我們對每種結果出現概率的想法,有些時候,我們更關心概率分佈,而不是最可能出現的單個結果。概率分佈有各種形狀,但大小隻有一種:概率分佈的概率之和恆等於1.
例如,拋擲一枚勻質硬幣有兩種結果:正面、反面。(假定硬幣落地時不可能以邊緣立起,或者被空中的海鷗偷走。)在扔硬幣之前,我們相信有二分之一的機率扔到正面,或者說,0.5的概率。扔到反面的概率同理。這是扔硬幣的兩種結果的概率分佈。實際上,如果你充分理解了上面的話,那麼你已經掌握了伯努利分佈。
除了奇異的名字之外,常見分佈之間的關係直觀而有趣,所以不管是記憶它們,還是以權威的語氣評論它們,都很容易。例如,不少分佈都能很自然地從伯努利分佈匯出。是時候揭開概率分佈的相互關係地圖了。

上圖中的每種分佈都包含相應的 概率質量函式或概率密度函式 。本文只涉及結果為單個數字的分佈,所以橫軸均為可能的數值結果的集合。縱軸描述了結果概率。有些分佈是離散的,例如,結果為0到5之間的整數,其概率質量函式圖形為稀疏的直線,每根線表示一種結果,線高表示該結果的概率。有些分佈是連續的,例如,結果為-1.32到0.005之間的任意實數,其概率密度函式為曲線,曲線下的面積表示概率。概率質量函式的線高之和,概率密度函式的曲線下面積,總是等於1.
把上面這張圖打印出來放到錢包或坤包中。它能指引你釐清概率分佈和它們之間的聯絡。
伯努利分佈和均勻分佈
你已經通過上面扔硬幣的例子接觸過伯努利分佈了。扔硬幣有兩個離散的結果——正面或反面。不過,你可以把結果看成0(反面)或1(正面)。這兩種結果發生的可能性都一樣,如下圖所示。

伯努利分佈可以表示可能性不同的結果,例如拋擲一枚不均勻的硬幣。那麼,扔到正面的概率就不是0.5,而是不等於0.5的概率p,扔到反面的概率則是1-p. 和很多分佈一樣,伯努利分佈實際上是由引數定義的一系列分佈(伯努利分佈由p定義)。你可以將“伯努利”想象為“扔(可能不均勻的)硬幣”。

有多個結果,所有結果發生概率相等的分佈,則是均勻分佈。想象拋擲一枚勻質骰子,結果為1點到6點,出現每種點數的可能性相同。均勻分佈可以由任意數目n的結果定義,甚至可以是連續分佈。

看到均勻分佈,就聯想“投擲一枚均質骰子”。
二項分佈和超幾何分佈
二項分佈可以看成遵循伯努利分佈的事件的結果之和。拋擲一枚均質硬幣,扔20次,有多少次扔出正面?這一計數的結果遵循二項分佈。它的引數是試驗數n和“成功”(這裡的“成功”指正面,或1)的概率p。每次拋擲硬幣得到的是一個遵循伯努利分佈的結果,也就是一次伯努利試驗。累計類似拋擲硬幣(每次拋擲硬幣的結果相互獨立,成功的概率保持不變)的事件的成功次數時,想想二項分佈。

或者,你可以想像一個甕,其中放著數量相等的白球和黑球。閉上你的眼睛,從甕裡抽一個球,並記錄它是不是黑球,接著把這個球放回。重複這一過程。你有多少次抽到黑球?這一計數同樣遵循二項分佈。
想象這種奇怪的場景是有意義的,因為這讓我們容易解釋超幾何分佈。在上面的場景中,如果我們 不放回抽取的球 ,那麼結果計數就遵循超幾何分佈。毫無疑問,超幾何分佈是二項分佈的表兄弟,但兩者並不一樣,因為移除球后成功的概率改變了。如果球的總數相對抽取數很大,那麼這兩個分佈是類似的,因為隨著每次抽取,成功的機率改變很小。
當人們談論從甕中抽取球而沒有提到放回時,插上一句“是的,超幾何分佈”幾乎總是安全的,因為我在現實生活中從來沒碰到任何人真用球裝滿一個甕,接著從中抽球,然後放回。(我甚至不知道誰擁有一個甕。)更寬泛的例子,是從種群中抽取顯著的子集作為樣本。
泊松分佈
累計每分鐘呼叫熱線的客戶數?這聽起來像是二項分佈,如果你把每一秒看成一次伯努利試驗的話。然而,電力公司知道,停電的時候,同一秒可能有數百客戶呼叫。將它看成60000次毫秒級試驗仍然不能解決這個問題——分割的試驗數越多,發生1次呼叫的概率就越低,更別說2次或更多呼叫了,但是這個概率再低,技術上說,始終不是伯努利試驗。然而,如果n趨向於無限,p趨向於0,相當於在無窮多個無窮小的時間切片上,呼叫概率無窮小,我們就得到了二項分佈的極限,泊松分佈。
類似二項分佈,泊松分佈是計數的分佈——某事件發生的計數。泊松分佈的引數不是概率p和試驗次數n,而是平均發生率λ(相當於np)。試圖累計連續事件發生率,統計一段時間內某事件的發生數時, 千萬別忘了 考慮泊松分佈。

到達路由的包、到訪商店的客戶、在某種佇列中等待的事物,遇到類似這樣的事情,想想“泊松”。
幾何分佈和負二項分佈
從伯努利試驗又可以引出另一種分佈。在第一次出現正面向上之前,扔出了多少次背面向上的硬幣?這一計數遵循幾何分佈。類似伯努利分佈,幾何分佈由引數p(成功概率)決定。幾何分佈的引數不包括試驗數n,因為結果本身是失敗的試驗數。

如果說伯努利分佈是“成功了多少次”,那麼幾何分佈就是“在成功前失敗了多少次”。
負二項分佈是幾何分佈的簡單推廣。它是成功r次前失敗的次數。因此,負二項分佈有一個額外的引數,r。有時候,負二項式分佈指r次失敗前成功的次數。我的人生導師告訴我,成功和失敗取決於你的定義,所以這兩種定義是等價的(前提是概率p與定義保持一致)。
聊天時,如果你想活躍氣氛,那麼可以說,顯然,二項分佈和超幾何分佈是一對,但是幾何分佈和負二項分佈也很類似,接著提問:“我想說,誰起名字起得這麼亂?”
指數分佈和威布林分佈
回到客戶支援電話的例子:距下一個客戶呼叫還有多久?這一等待時間的分佈聽起來像幾何分佈,因為直到終於有客戶呼叫的那一秒為止,無人呼叫的每一秒可以看成失敗。失敗數可以視為無人呼叫的秒數,這 幾乎 是下一次呼叫的等待時間,但還不夠接近。這次的問題在於,這樣計算出的等待時間總是以整秒為單位,沒有計入客戶最終呼叫的那一秒中的等待時間。
和之前一樣,對幾何分佈取極限,趨向無窮小的時間切片,可以奏效。我們得到了指數分佈。指數分佈精確地描述了下一呼叫前的時間分佈。它是一個連續分佈,因為結果不一定是整秒。類似泊松分佈,指數分佈由引數發生率λ決定。

和二項分佈與幾何分佈之間的關係相呼應,泊松分佈是“給定時間內事件發生了多少次”,指數分佈則是“直到事件發生過了多少時間”。給定一個某段時間內發生次數遵循泊松分佈的事件,那麼事件間隔時間遵循引數λ相同的指數分佈。正是基於這兩種分佈之間的這一對應關係,在談論兩者之一時提下另一種是很安全的。
涉及“到某事件發生前的時間”(也許是“無故障工作時間”),應該考慮指數分佈。實際上,無故障工作時間是如此重要,我們有一種更一般的分佈對其加以描述,威布林分佈。指數分佈適用於發生率(例如,損毀或故障概率)恆定的情況,威布林分佈則可以建模隨著時間而增加(或減少)的發生率。指數分佈不過是威布林分佈的一個特例。
當聊天轉向無故障工作時間時,考慮“威布林”。
正態分佈、對數正態分佈、t分佈、卡方分佈
正態分佈,又稱高斯分佈,也許是最重要的概率分佈。它的鐘形曲線極具辨識度。像自然對數e一樣,神奇的正態分佈隨處可見。從同一分佈大量取樣—— 任何 分佈——然後相加,樣本的和遵循(近似的)正態分佈。取樣數越大,樣本之和就約接近正態分佈。(警告:必須是非病態分佈,必須是獨立分佈,僅僅趨向正態分佈)。無論原分佈是何種分佈,這一點均成立,真是令人驚奇。
這稱為中心極限定理,你必須知道這個名詞和它的含義,不然立遭鬨笑。

從這個意義上說,正態分佈和所有分佈相關。不過,正態分佈和累加尤為相關。伯努利實驗的和遵循二項分佈,隨著試驗數的增加,二項分佈變得越來越接近正態分佈。它的表兄弟超幾何分佈也是一樣。泊松分佈——二項分佈的極端形式——也隨著發生率引數的增加而逼近正態分佈。
如果對結果取對數,所得遵循正態分佈,那麼我們就說結果遵循對數正態分佈。換句話說,正態分佈值的對數遵循對數正態分佈。如果和遵循正態分佈,那麼相應的乘積遵循對數正態分佈。

學生t-分佈 是t檢驗的基礎,許多非統計學家在其他學科中接觸過t檢驗。它用於推斷正態分佈的均值,隨著其引數的增加而更加接近正態分佈。學生t-分佈的主要特點是,尾部比正態分佈更厚(見下圖所示,紅線為學生t-分佈,藍線為標準正態分佈)。

如果厚尾的說法不能引起鄰居的驚歎,那可以講講比較有趣的和啤酒有關的背景故事。一百年前,Guinness使用統計學釀製更好的烈性黑啤酒。在Guinness,William Sealy Gosset研究出了一種新的統計學理論以種出更好的大麥。Gosset說服老闆其他釀酒商無法搞明白如何利用這些想法,取得了發表成果的許可,不過是以筆名“學生”發表。Gosset最出名的成果就是學生t-分佈,某種程度上而言是以他的名字命名的。
最後,卡方分佈是正態分佈值的平方和的分佈。它是卡方檢驗的基礎。卡方檢驗基於觀測值和理論值的差(假定差遵循正態分佈)的平方和。

伽瑪分佈和貝塔分佈
如果都談到卡方分佈之類了,那麼談話應該算是比較嚴肅的。你可能在和真正的統計學家聊天,到了這個份上,你也許該致歉,表示自己知道的不多,因為伽瑪分佈之類的名詞會出現了。伽瑪分佈是指數分佈 和 卡方分佈的推廣。伽瑪分佈通常用作等待時間的複雜模型,這一點上更像指數分佈。例如,伽瑪分佈可以用來建模接下來第 n 個事件發生前的時間。在機器學習中,伽瑪分佈是一些分佈的“共軛先驗”。

別在共軛先驗的對話中插話,不過如果你真的插話了,準備好談論貝塔分佈,因為它是上面提到過的大多數分佈的共軛先驗。就資料科學家而言,貝塔分佈的用途主要在此。不經意地提到這一點,然後朝門口移動。

智慧的開端
概率分佈的知識浩如煙海。真正對概率分佈感興趣的可以從下面這張所有單元分佈的地圖開始。

希望本文能給你一點信心,讓自己看起來知識淵博,並且能融入今日的技術文化。或者,至少能為你提供一種方法,能夠以很高的概率判斷什麼時候你應該找一個不那麼書呆的雞尾酒會。