機器學習白板推導系列(一)頻率派VS貝葉斯派

簡介

對概率的詮釋有兩大學派,一種是頻率派另一種是貝葉斯派。爲了討論的方便,後面我們對觀測樣本數據集採用下面記號:
X_{N\times m}=(x_{1},x_{2},\cdots,x_{N})^{T}= \begin{pmatrix} x_{11} & x_{12} & ... & x_{1m}\\ x_{21} & x_{22} & ... & x_{2m}\\ ... & ... & ... & ...\\ x_{N1} & x_{N2} & ... & x_{Nm} \end{pmatrix}_{N\times m},\qquad x_i=(x_{i1},x_{i2},\cdots,x_{im})^{T}
這個記號表示觀測集有 N 個樣本,每個樣本都是 m 維向量。其中每個觀測都是由 p(x|\theta) 生成的。其中 \theta 是數據空間參數 (模型參數)。

頻率派的觀點

頻率派認爲 p(x|\theta) ( 或寫爲 p(x;\theta) ) 中的 \theta 是一個未知常量。對於 N 個觀測來說觀測集的概率爲 p(X|\theta)\mathop{=}\limits _{iid}\prod\limits _{i=1}^{N}p(x_{i}|\theta)) 。爲了求 \theta 的大小,我們採用極大似然估計MLE方法,希望通過調整模型參數來使得模型能夠最大化樣本情況出現的概率,這樣的模型參數就是我們需要的:

\theta_{MLE}=\mathop{argmax}\limits _{\theta}\log p(X|\theta)\mathop{=}\limits _{iid}\mathop{argmax}\limits _{\theta}\sum\limits _{i=1}^{N}\log p(x_{i}|\theta)

例子:設隨機事件總體 X \sim B(1,\theta) ,即隨機事件 X 發生的概率爲 \theta 未知,現在重複試驗 n 次,得到結果 0,0,0,...,1,1X 發生了 k 次,現在我們用MLE來估計 \theta。由概率論知識我們知道,n次試驗出現1的次數 Y \sim B(n,\theta) ,現在的實驗所得情況發生的概率如下:
P(Y=k)={C_n^k\theta^k(1-\theta)^{(n-k)}}=P(Y=k;\theta)
既然發生我們就認爲它是最可能發生的,也就是上述概率要最大,現在用MLE方法來估計 \theta
\theta_{MLE}=\mathop{argmax}\limits _{\theta}logP(Y=k;\theta)=\mathop{argmax}\limits _{\theta}logC_n^k+klog\theta+(n-k)log(1-\theta)
求導不難得到極大值且是最大值點 \frac{k}{n} ,即 \theta_{MLE}=\frac{k}{n}

貝葉斯派的觀點

貝葉斯派認爲 p(x|\theta) 中的 \theta 是一個隨機變量。這個 \theta 滿足一個預設的先驗的分佈 \theta\sim p(\theta) (概率密度函數)。於是根據貝葉斯定理依賴觀測集參數的後驗可以寫成:

p(\theta|X)=\frac{p(X|\theta)\cdot p(\theta)}{p(X)}=\frac{p(X|\theta)\cdot p(\theta)}{\int\limits _{\theta}p(X|\theta)\cdot p(\theta)d\theta} \propto p(X|\theta)\cdot p(\theta)
爲了根據觀測樣本數據求 \theta 的後驗分佈 p(\theta|X),我們要最大化這個參數後驗MAP:

\theta_{MAP}=\mathop{argmax}\limits _{\theta}p(\theta|X)=\mathop{argmax}\limits _{\theta}p(X|\theta)\cdot p(\theta)
其中第二個等號是由於分母計算後爲定值和 \theta 沒有關係。求解這個 \theta 值後計算\frac{p(X|\theta)\cdot p(\theta)}{\int\limits _{\theta}p(X|\theta)\cdot p(\theta)d\theta} ,就得到了參數的後驗概率 p(\theta|X) 。其中 p(X|\theta) 是似然函數,是我們的模型分佈。得到了參數的後驗分佈後,我們可以將這個分佈用於做貝葉斯預測,即已知 X 後,求新來樣本 x_{new} 的概率,\theta 是二者之間的一個橋樑:
p(x_{new}|X)=\int\limits _{\theta}p(x_{new},\theta|X)d\theta=\int\limits _{\theta}p(x_{new}|\theta)\cdot p(\theta|X)d\theta
例子:有一個硬幣,假設朝向正面的機率爲 \theta ,朝向反面的機率爲 1−\theta ,這個 \theta 是未知的,現在爲了估計 \theta ,投擲了10次,其中有6次朝向正面。問再投擲兩次,都朝向正向的概率爲多少。

如果按照頻率派的觀點,很容易知道 \theta=0.6 ,再投擲兩次,假設是獨立過程,則:
p(hh|X)=\theta^2=0.36
而在貝葉斯派眼中,問題就沒那麼簡單了,貝葉斯派認爲參數 \theta 應該是一個隨機變量,服從一個先驗分佈。那麼我們就需要用觀測到的數據 X 來估計 \theta 的後驗分佈,對於後驗分佈的估計也是樣本越多越準確:
p(\theta|X)=\frac{p(X|\theta)\cdot p(\theta)}{p(X)}\propto p(X|\theta)\cdot p(\theta)
因爲在已觀測到的數據中,X 是固定的,所以 p(X) 是定值。其中似然函數:
p(X|\theta)=C_{10}^{6}\theta^{6}(1-\theta)^4
\theta 服從的先驗分佈 (概率密度函數) 爲:
Beta(\theta;a,b)=\frac{1}{B(a,b)} \cdot \theta^{a-1}(1-\theta)^{b-1}=\dfrac{\Gamma(a+b)}{\Gamma(a) \cdot \Gamma(b)} \cdot \theta^{a-1}(1-\theta)^{b-1}=p(\theta),\quad\theta\in(0,1)
(貝塔分佈(Beta Distribution) 是一個作爲伯努利分佈和二項式分佈的共軛先驗分佈的密度函數,在機器學習和數理統計學中有重要應用。)

a=1,b=1 時就是(0,1)上的均勻分佈。於是:
p(\theta|X)\propto p(X|\theta)\cdot p(\theta) \propto \theta^{6+a-1}(1-\theta)^{4+b-1}
爲了讓
\int_{0}^{1} p(\theta|X) d\theta = 1
需要配一個 \frac{1}{B(a+6,b+4)} 的係數,最終 \theta 的後驗概率分佈爲:
p(\theta|X)=Beta(\theta;a+6,b+4)
假設再投擲的過程中不更新 p(\theta|X) ,則有 p(hh|\theta)=(p(h|\theta))^2=\theta^2 ,所以有:
p(hh|X) = \int_{0}^{1} \theta^2 \cdot p(\theta|X) \rm d\theta=\dfrac{1}{B(6+a,4+b)} \int_{0}^{1} p^{(6+a-1)+2} (1-p)^{4+b-1} = \dfrac{B(8+a,4+b)}{B(6+a, 4+b)}
對於給定的 a,b 會得到一個確定的概率。

頻率派和貝葉斯派對比

在對事物建模時,用 \theta 表示模型的參數,注意,解決問題的本質就是求 \theta 或其分佈。

抽象一點來講,頻率學派和貝葉斯學派對世界的認知有本質不同:

頻率學派認爲世界是確定的,我們的目標就是要找到這個確定的規則。對應到機器學習建模,\theta 是確定的,當觀測樣本數據量趨於無窮時,這種方法能給出 \theta 精準的估計,然而缺乏數據時則可能產生嚴重的偏差。

貝葉斯學派認爲世界是不確定的,人們對世界先有一個預判,而後通過觀測數據對這個預判做調整,我們的目標是要找到最優的描述這個世界的概率分佈。對應到機器學習建模,我們在沒有觀測到任何數據時會對 \theta 有一個預先判斷,然後會不斷地根據觀測到的數據樣本來更新參數的後驗估計,以求更加精準刻畫模型。這種方法在先驗假設比較靠譜的情況下效果顯著,隨着數據量的增加,參數分佈會越來越向數據靠攏,先驗的影響力也會越來越小。特殊情況下,如果把先驗去掉或者先驗是uniform distribution,則貝葉斯方法等價於頻率方法。因爲直觀上來講,先驗是uniform distribution本質上表示對事物沒有任何預判。

參考文獻

B站機器學習白板推導
貝葉斯派理論例子
MAP高斯先驗等價於MLE的l2正則
頻率派和貝葉斯派的解釋
GithubMachineLearningNotes/tsyw

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章