貝葉斯統計在機器學習中占有一個什麼樣的地位,它的原理以及實作過程又是如何的?本文對相關概念以及原理進行了介紹。
引言:在很多分析學者看來,貝葉斯統計仍然是難以了解的。受機器學習這股熱潮的影響,我們中很多人都對統計學失去了信心。我們的關注焦點已經縮小到隻探索機器學習了,難道不是嗎?
機器學習難道真的是解決真實問題的唯一方法?在很多情況下,它并不能幫助我們解決問題,即便在這些問題中存在着大量資料。從最起碼來說,你應該要懂得一定的統計學知識。這将讓你能夠着手複雜的資料分析問題,不管資料的大小。
在18世界70年代,thomas bayes提出了“貝葉斯理論”,即便在幾個世紀後,貝葉斯統計的重要性也沒有減弱。事實上,世界上那些最優秀的大學都在教授有關這個話題的深度課程。
在真正介紹貝葉斯統計之前,首先來了解下頻率統計這個概念。
有關頻率統計和貝葉斯統計的争論以及持續了好幾個世紀,是以對于初學者來說了解這兩者的差別,以及如何劃分這兩者十分重要。
它是統計領域中應用最為廣泛的推理技術。事實上,它是初學者進入統計學世界中的第一所學校。頻率統計檢測一個事件(或者假設)是否發生,它通過長時間的試驗計算某個事件發生的可能性(試驗是在同等條件下進行的)。
在此處,使用固定大小的采樣分布作為例子。然後該實驗理論上無限次重複的,但實際上是帶着停止的意圖的。例如當我腦海中帶着停止的意圖時,它重複1000次或者在擲硬币過程中我看到最少300詞頭在上的話,我将停止進行實驗。現在讓我們進一步了解:
通過擲硬币的例子我們就會明白頻率統計,目的是估計抛硬币的公平性,下表是代表抛硬币過程中頭在上的次數:
我們知道在公平的擲硬币過程中得到一個頭在上的那機率為0.5。我們使用no. of heads表示所得頭在上的實際數量。difference表示0.5*(no. of tosses) 與 no. of heads之間的差别。
要注意的是,雖然投擲的數量增加時,頭在上的實際數量和頭在上的預期數(抛擲數目的50%)之間的差異會逐漸增大。但是以抛擲的總數來說,頭在上出現的比例接近0.5(一個公平的硬币)。
該實驗中我們在頻率方法中發現了一個很常見的缺陷:實驗結果的獨立性與實驗次數是重複的。
到這裡,我們開始來探讨頻率統計的缺陷:
在20世紀有大量的頻率統計被應用到許多模型中來檢測樣本之間是否不同,一個參數要放在模型和假設檢驗的多種表現中足夠重要。但是頻率統計在設計和實作過程存在一些重大缺陷,這些在現實中的問題引起相當大的關注。例如:
1. p-values 對固定大小的樣本進行檢測。如果兩個人對相同的資料工作,并有不同的制動意向,他們可能會得到兩種不同的p- values。
2. 置信區間(ci)和p-value一樣,在很大程度上取決于樣本的大小。因為無論多少人如何執行相同的資料測試,其結果應該是一緻的。
3. 置信區間(ci)不是機率分布,是以它們不提供最可能的值以及其參數。
這三個理由足以讓你對于頻率統計的缺陷進行思考,以及對為什麼需要貝葉斯方法進行考慮。
有關貝葉斯統計的基礎知識就先了解到這裡。
“貝葉斯統計是将機率運用到統計問題中的數學過程。它提供給人們工具來更新資料中的證據。”要更好的了解這個問題,我們需要對于一些概念要有所認識。此外,也需要有一定的前提:
線性代數 機率論與數基本統計
3.1條件機率
條件機率被定義為:事件a中給定事件b的機率等于b和a一起發生的機率再除以b的機率
例如:如下圖所示設兩部分相交集a和b
集合a代表一組事件,集合b代表了另一組。我們希望計算給定b的機率已經發生了的機率,讓我們用紅色代表事件b的發生。
現在,因為b已經發生了,現在重要的a的部分是在藍色陰影部分。如此,一個給定的b的機率是:
是以,事件b的公式是:
要麼
現在,第二方程可以改寫為:
這就是所謂的條件機率。
假設,b是james hunt的中獎事件,a是一個下雨的事件。是以,
p(a)= 1/2,由于每倆天都會下一次雨。 p(b)為1/4,因為詹姆斯每四次比賽隻赢一次。 p(a | b)= 1,因為每次下雨james都赢。
條件機率公式中代入數值,我們得到的機率在50%左右,這幾乎是25%的兩倍(下雨的情況不考慮)。
也許,你已經猜到了,它看起來像貝葉斯定理。
貝葉斯定理建立在條件機率的頂部,位于貝葉斯推理的心髒地區。
3.2 貝葉斯定理
下圖可以幫助了解貝葉斯定理:
現在,b可被寫為
是以,b的機率可以表示為,
但
是以,我們得到
這就是貝葉斯定理方程。
讓我們從抛硬币的例子來了解貝葉斯推理背後的過程:
貝葉斯推理中一個重要的部分是建立參數和模型。
模型觀察到的事件的數學公式,參數是在模型中影響觀察到資料的因素。例如在擲硬币過程中,硬币的公平性 可以被定義為θ——表示硬币的參數。事件的結果可以用d表示
4個硬币頭朝上的機率即給定硬币(θ)的公平性,即p(d|θ)
讓我們用貝葉斯定理表示:
p(θ|d)=(p(d|θ) x p(θ))/p(d)
p(d|θ) 是考慮到我們給定分布θ時,我們結果的可能性。如果我們知道硬币是公平的,這就是觀測到的頭朝上的機率。
p(d)就是證據,這是因為通過在θ的所有可能的值,是θ的那些特定值權重求和(或積分)确定的資料的機率。
如果我們的硬币的公正性是多個視圖(但不知道是肯定的),那麼這告訴我們看到翻轉的一定順序為我們在硬币的公平信念所有可能性的機率。
p(θ|d) 是觀察,即頭在上數目之後我們的參數。
4.1 伯努利近似函數
回顧讓我們了解了似然函數。是以,我們得知:
它是觀察翻轉為硬币的一個給定的公平的特定數目的磁頭的特定數目的機率。這意味着我們的觀察頭機率/萬尾取決于硬币(θ)的公平性。
p(y=1|θ)=
[如果硬币是公平的θ= 0.5,觀察到頭的機率(y = 1)為0.5]
p(y=0|θ)=
[如果硬币是公平的θ= 0.5,觀察到尾部的機率(y = 0)為0.5]
值得注意的是,1為頭和0為尾是一個數學符号制定的典範。我們可以将上述數學定義結合成一個單一的定義來表示兩者的結果的機率。
p(y |θ)=
這就是所謂的伯努利近似函數,抛硬币的任務被稱為伯努利試驗。
y={0,1},θ=(0,1)
而且,當我們想看到一系列的頭或翻轉,它的機率為:
此外,如果我們感興趣的是頭的數目的機率ž在卷起Ñ數翻轉下的情況,則機率如下所示:
4.2 前置信度分布
這個分布用于表示關于基于以往的經驗,我們的參數分布情況。
但是,如果一個人沒有之前的經驗呢?
不用擔心,數學家們想出了方法來緩解這一問題。它被認為是uninformative priors。
那麼,用來表示先驗數學函數稱為beta distribution, 它有一些非常漂亮的數學特性,使我們對模組化有關二項分布有所了解。
beta分布的機率密度函數的形式為:
在這裡,我們的焦點停留在分子上,分母那裡隻是為了確定整合後的總機率密度函數的計算結果為1。
α和 β被稱為形狀決定密度函數的參數。這裡α類似于試驗中出現頭的數量,β對應于實驗中尾的數量。下圖将幫助您想象不同值中 α和 β的測試分布
你也可以使用r中的代碼繪制自己的beta分布:
> library(stats) > par(mfrow=c(3,2)) > x=seq(0,1,by=o.1) > alpha=c(0,2,10,20,50,500) > beta=c(0,2,8,11,27,232) > for(i in 1:length(alpha)){ y<-dbeta(x,shape1=alpha[i],shape2=beta[i]) plot(x,y,type="l") }
注: α和β是直覺的了解,因為它們可以通過已知的平均值(μ)和分布的标準偏差(σ)來計算。實際上,它們是相關的:
如果分發的平均值和标準偏差是已知的,那麼有形狀參數可以容易地計算出來。
從上面的圖表可以推理出:
當沒有抛擲的時候,我們認為硬币的公平性可以通過一條平滑的線來描繪。 當頭比尾部出現的更多時,圖中顯示的峰值向右一側移動,表明頭出現的可能性較大,以及硬币是不公平的。 随着越來越多的抛擲動作完成後,頭所占比重較大的峰值變窄,增加了我們對硬币抛擲公正性的信心。
4.3 後置信度分布
我們選擇之前所相信的原因是為了獲得一個β分布,這是因為當我們用一個近似函數相乘,後驗分布産生類似于現有配置設定,這是很容易涉及到和了解的形式。
使用貝葉斯定理進行計算
之間的公式變為
隻要知道的平均值和我們的參數标準釋出 θ,并通過觀察頭的n翻轉,可以更新我們對模型參數的(θ)。
讓我們用一個簡單的例子來了解這一點:
假設,你認為一個硬币有失偏頗。它具有為0.1的标準偏差,約0.6的平均(μ)偏差。
然後 ,α= 13.8 , β=9.2
假設你觀察到80次頭在上(z=80在100翻轉中)( n=100)。則
prior = p(θ|α,β)=p(θ|13.8,9.2)
posterior = p(θ|z+α,n-z+β)=p(θ|93.8,29.2)
将其圖像化:
上述圖中的r代碼實作過程是:
> x=seq(0,1,by=0.1) > alpha=c(13.8,93.8) > beta=c(9.2,29.2) > for(i in 1:length(alpha)){ y<-dbeta(x,shape1=alpha[i],shape2=beta[i]) plot(x,y,type="l",xlab = "theta",ylab = "density")
随着越來越多的翻轉被執行,以及新的資料觀察到,我們能進一步得到更新,這是貝葉斯推理的真正力量。
無需使用到嚴格的數學結構,這部分将提供不同的頻率論和貝葉斯方法預覽。相關的簡要概述,以及測試組哪種方法最可靠,和它們的顯着性和差異性。
5.1 p值
針對特定樣本的t分和固定大小樣本中的分布是計算好的,然後p值也被預測到了。我們可以這樣解釋p值:(以p值的一例0.02均值100的分布):有2%的可能性的樣品将具有等于100的平均值。
這種解釋說明從取樣不同尺寸的分布,人們勢必會得到不同的t值,是以不同的p值的缺陷受到影響。p值小于5%并不能保證零假設是錯誤的,也沒有p值大于5%確定零假設是正确的。
5.2 置信區間
置信區間也有同樣的缺陷,此外因ci不是一個機率分布,沒有辦法知道哪些值是最有可能的。
5.3 貝葉斯因子
貝葉斯因子是p值在貝葉斯架構等價量。
零假設在貝葉斯架構:僅在一個參數的特定值(例如θ= 0.5)和其他地方零機率假定∞機率分布。(m1)
另一種假設是θ的所有值都是可能的,是以代表分布曲線是平坦的。(m2)
現在,新資料的後驗分布如下圖所示。
θ的各種值代表貝葉斯統計調整可信度(機率)。可以很容易地看出,機率分布已經轉向m2具有更高的值m1,即m2更可能發生。
貝葉斯因子不依賴于θ的實際配置設定值,但在m1和m2的值幅度間移位。
在面闆a(上圖所示):左邊欄是零假設的先驗機率。
在圖b(上圖所示),左邊欄是零假設的後驗機率。
貝葉斯因子被定義為後驗機率的對現有的進行對比:
要拒絕零假設,bf <1/10是首選。
我們可以看到使用貝葉斯因子代替p值的好處,它們具有獨立的意圖和樣本量。
5.4 高密度間隔(hdi)
hdi由後驗分布觀察新資料形成,由于hdi是一個機率,95%的hdi給出95%的最可信的值。它也保證了95%的值将處于不同的ci區間。
請注意,前95%的hdi比95%後驗分布更廣泛,這是因為我們在hdi中增加了對新資料的觀察。
總結:貝葉斯統計作為一個基礎算法,在機器學習中占據重要的一席之地。特别是在資料處理方面,針對事件發生的機率以及事件可信度分析上具有良好的分類效果。
本文作者:李尊