【機器學習中的數學】貝葉斯框架下二元離散隨機變量的概率分布

引言

我感覺學習機器學習算法還是要從數學角度入門才是唯一正道,機器學習領域大牛Michael I. Jordan給出的機器學習定義是,“A field that bridge computation and statistics,with ties to information theory, signal processing, algorithm, control theory and optimization theory”。所以對于機器學習的門徒來說,我認為將計算機和統計理論有機結合起來才是正確的出路。市面上吹噓的所謂不介紹數學背景,只引入如何使用算法的書籍,只能是迎合那些急功近利的人的口味,確實可以感覺出被火熱概念炒出來的人們的浮躁。
當然,看別人的浮躁,說明你也有一顆浮躁的心。
我還是踏踏實實的一步一個腳印的趕緊上路吧!不然,我也是一個隨波逐流,追趕魚潮的打漁人,沒有自己的根本,一旦翻了船,那才是一無所獲呢。
學校里很多老師教的課程確實都是在忽悠學生,其實他們可能也沒有很扎實的數學基礎,以至于很難將學生領入正確的道路上來。至少作為聽課學生來講,我是這么感覺的。造成的結果是,感覺這門課程是獨立于一個領域的,是很孤立的。而從一些外文書籍中可以看出來,機器學習其實是多學科交叉的衍生物,和很多工程領域理論都有密切的聯系,這樣,至少讓我們這種初學者有據可查,不至于感覺它是從石頭縫里蹦出來的。

接下來,幾篇文章介紹的概率分布是構建復雜模型的基礎。討論這些概率分布的一個重要應用就是密度估計(density estimation),即根據有限的觀測數據,去建立模型,然后得到這些隨機變量的樣本所遵循的概率分布。(直到這時,我才多少明白一點本科時概率統計課上教的參數估計是干什么用的)

二元變量(Binary Variables)

我們首先來考慮二元隨機變量x∈{0,1}。

伯努利分布(Bernoulli Distribution)

伯努利分布(the Bernoulli distribution,又名兩點分布或者0-1分布,是一個離散型概率分布,為紀念瑞士科學家雅各布·伯努利而命名),若伯努利試驗成功,則伯努利隨機變量取值為1。若伯努利試驗失敗,則伯努利隨機變量取值為0。


最大似然估計(Maximum Likelihood Estimation)

現在給出一組觀測數據D={x1,...,xN},我們通過構建似然函數,來估計參數μ(隨機變量取1時對應的概率)。


舉個例子,
如果進行三次觀測,三次觀測結果x均為1,那么μML為1,這說明未來的觀測結果應該均為x=1。根據常識,這顯然是不合常理的。實際上,這是由于小數據集導致的過擬合的結果。接下來我們要解釋的就是從貝葉斯理論的角度,如何去理解這個問題。

二項分布(Binomial Distribution)

二項分布是n個獨立的是/非試驗中成功的次數的離散概率分布,其中每次試驗的成功概率為p。這樣的單次成功/失敗試驗又稱為伯努利試驗。實際上,當n = 1時,二項分布就是伯努利分布。
二項分布定義為:



二項分布的期望和方差分別是:


Beta分布

為了解決小數據集中用最大似然估計的方法來估計參數產生的過擬合的現象,我們嘗試用貝葉斯的方式引入參數μ的先驗分布。



這里a和b被稱為超參數(hyperparameters),因為它們左右了參數μ的分布,它們不一定為整數。
下面的圖像顯示了不同的超參對分布的影響:


先驗概率

在貝葉斯統計中,某一不確定量p的先驗概率分布是在考慮"觀測數據"前,能表達p不確定性的概率分布。它旨在描述這個不確定量的不確定程度,而不是這個不確定量的隨機性。這個不確定量可以是一個參數,或者是一個隱含變量(latent variable)。
在使用貝葉斯定理時,我們通過將先驗概率與似然函數相乘,隨后標準化,來得到后驗概率分布,也就是給出某數據,該不確定量的條件分布。
先驗概率通常是主觀的猜測,為了使計算后驗概率方便,有時候會選擇共軛先驗。如果后驗概率和先驗概率是同一族的,則認為它們是共軛分布,這個先驗概率就是對應于似然函數的共軛先驗

共軛分布(Conjugate Prior)

為了使得先驗分布和后驗分布的形式相同,我們定義:如果先驗分布和似然函數可以使得先驗分布和后驗分布有相同的形式,那么就稱先驗分布與似然函數是共軛的。所以共軛是指:先驗分布和似然函數共軛。
共軛先驗的意義在于,使得貝葉斯推理更加方便,比如在續貝葉斯推理(Sequential Bayesian inference連)中,得到一個observation之后,可以算出一個后驗分布。由于選取的是共軛先驗,因此后驗和原來先驗的形式一樣,可以把該后驗當做新的先驗,用于下一次observation,然后繼續迭代。

后驗分布

參數μ的后驗分布是將其先驗分布乘上二項式似然函數(binomial likelihood function),再歸一化得到。
后驗分布有如下形式:


其中,l = N-m。
我們可以看出,這里的后驗分布和先驗分布有相同的形式,這體現了似然函數的共軛先驗的特性。這個后驗分布也是一個Beta分布,這樣我們可以將這個后驗分布當做是一個新的先驗分布,當得到一組新的數據之后,我們可以更新得到新的后驗分布。
這種順序方法(sequential approach)每次利用一小波(small batches)觀測數據,當新的觀測數據來的時候,就會丟棄舊的觀測數據。
所以這種方法非常適用于數據流穩定到來,而在觀測所有數據之后得出預測結果的實時學習的情景,因為這種方法不要求數據一次性的全部載入內存來計算。
下面的圖片形象的描述了連續貝葉斯推理(sequential Bayesian inference)的一個環節。先驗分布參數a=2、b=2,對應只有一個觀測數據x=1的似然函數,其參數N=m=1,而后驗分布的參數a=3、b=2。

預測數據

現在我們要做的是,根據給定的觀測數據集D來評估x的預測分布。



由上式,我們可以看出,隨著數據癿增加, m、l 趨于無窮大時,這時參數的后驗分布就等于最大似然解。而對于有限數據集來說,參數μ的后驗均值總是介于先驗平均和μ的最大似然估計值之間的。

總結

我們可以看出,隨著觀測數據的增多,后驗分布變成一個越來越陡峭的山峰形狀。這通過Beta分布的方差可以看出,當a和b趨近于無窮大時,Beta分布的方差趨近于0。從宏觀層面上說,當我們觀察到更多的數據時,后驗分布所體現的不確定性將驟然降低(steadily decrease)。
有些先驗分布可以證明,隨著數據的增加方差越來越小,分布越來越陡,最后坍縮成狄拉克函數,這時貝葉斯方法和頻率派方法是等價的。

參考資料

Pattern Recognition and Machine Learning, Christopher M. Bishop
Wiki:β-二項式分布

轉載請注明作者Jason Ding及其出處
Github主頁(http://jasonding1354.github.io/)
CSDN博客(http://blog.csdn.net/jasonding1354)
簡書主頁(http://www.lxweimin.com/users/2bd9b48f6ea8/latest_articles)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容