Bayesian Learning Notes | 棒棒生
文章推薦指數: 80 %
枉費我學習ML 這麼久, 最近才完整了解Bayesian learning 大架構, 以及與MLE, MAP, Variational Inference, Sampling 之間的關聯. 枉費我學習ML這麼久,最近才完整了解Bayesianlearning大架構,以及與MLE,MAP,VariationalInference,Sampling之間的關聯.這才終於有了見樹又見林的港覺阿!筆記整理如下… 圖片來自wiki,我也好想要這個裝飾燈.就這麼一個Baye’sRule,撐起了統計機器學習的基石! BayesianLearning給定訓練集($X,Y$)和一個probabilisticclassifier$p(y|x,\theta)$,同時定義好priordistribution$p(\theta)$. 根據Baye’srule,Trainingstage如下: $$\begin{align} p(\theta|X,Y)=\frac{p(Y|X,\theta)p(\theta)}{\color{red}{\intp(Y|X,\theta)p(\theta)\,d\theta}} \end{align}$$ Testingstage如下: $$\begin{align} p(y^*|x^*,X,Y)=\color{red}{\intp(y^*|x^*,\theta)p(\theta|X,Y)\,d\theta} \end{align}$$ 注意到關鍵的兩個紅色積分通常都是不容易算,或根本算不出來.此時我們有兩種選擇: 使用VariationalInference找出一個$q(\theta)$來逼近$p(\theta|X,Y)$ 使用sampling方法.理解一下這個積分的形式,可以發現這是在算根據某個機率分佈$p(x)$計算$f(x)$的期望值.因此,如果我們直接根據$p(x)$sample出$M$個$x$,就可以用如下的平均算出近似值了. $$\begin{align} \intp(x)f(x)\,dx\simeq\frac{1}{M}\sum_{i=1}^Mf(x_i)\mbox{,where}x_i\simp(x) \end{align}$$ 我們可能會想,是不是可以將Bayesianlearning做些簡化來避掉上述紅色積分?是的,MLE和MAP就是簡化了完整的Bayesianlearning過程.下面介紹. MLEandMAPBaye’srule(式(1)),在ML中舉足輕重,幾乎是所有的根本.重新列出來並用不同顏色做強調 $$\begin{align} \color{orange}{p(\theta|X,Y)}=\frac{\color{blue}{p(Y|X,\theta)}\color{green}{p(\theta)}}{\color{red}{\intp(Y|X,\theta)p(\theta)\,d\theta}} \end{align}$$ 橘色稱為posteriordistribution,藍色為likelihood,而綠色為priordistribution.注意到紅色的期望值基本算不出來,在這種情況下,我們要怎麼得到posterior? MLEMLE(MaximumLikelihoodEstimation)的想法是,既然posterior算不出來,那乾脆直接用一個$\theta^*$代表整個$p(\theta|X,Y)$分布算了.至於要找哪一點呢,就找對likelihood最大的那點吧!數學這麼寫: $$\begin{align} \theta_{MLE}=\arg\max_\thetap(Y|X,\theta) \end{align}$$ 既然已經用一個點來代表整個posterior了,因此原來的testing(2)就不需要積分了,testingstage直接就是: $$\begin{align} p(y^*|x^*,\theta_{MLE}) \end{align}$$ MAPMAP(MaximumAPosterior)estimation跟MLE相同,也使用一個點來代表整個posterior: $$\begin{align} \theta_{MP}=\arg\max_\thetap(\theta|X,Y) \end{align}$$ 意思是MAP直接使用mode來代表整個posterior.因此testingstage也如同MLE情形: $$\begin{align} p(y^*|x^*,\theta_{MP}) \end{align}$$ 不過聰明的讀者應該會覺得很疑惑,posterior不是很難計算,或根本算不出來,這樣怎麼可能找的到mode?是的,一般情形下是找不出來,但有一個特殊情況叫做conjugateprior.conjugateprior指的是prior與posterior屬於同一個distributionfamily,等於是告訴我們posterior是什麼樣的distribution,因此算不出來的紅色期望值(式(4))也根本沒必要去計算,只不過是個normalizationconstant.因此明確知道posterior是什麼樣的distribution,找mode就容易多了. 所以對於MAP來說有哪些distribution是互為conjugate變得很重要.我們可以從wiki上查到明確資料.基本上exponentialfamily都是. 完全避掉紅色積分項了嗎?很多模型都具有latentvariable(一般都用$z$表示)的形式 稍微說明下,一般說的latentvariable會隨著data變大而變大,而parameter$\theta$不會.以GMM為例子,latentvariable指每一個observation是哪一個Gaussian產生出來的那個index,而parameter是Gaussiancomponents的mean,var,和mixtureweights集合. 可以使用EMalgorithm來找出MLE或MAP.其中E-step為“令$q(z)$等於$p(z|x,\theta^{odd})$”,這又回到如同式(1)求posterior會遇到分母積分項的問題.如果我們的$z$的值有限個的(如GMM,$z$的值就是component的index),$p(z|x,\theta^{odd})$可以直接算出來.但複雜一點就不行了,所以情況又變得跟原來的Bayesianlearning一樣,兩種選擇: 使用VariationalInference,這時稱為VariationalEM. 使用sampling方法.Sampling通常採用MCMC方式,這時稱為MCMCEM. Summary擷取自Coursera的BayesianMethodsforMachineLearning課程投影片如下:(圖中的$T$指的是latentvariable) Postauthor: Chih-ShengChen Postlink: http://yoursite.com/2018/12/20/Bayesian-Learning-Notes/ CopyrightNotice: AllarticlesinthisblogarelicensedunderCCBY-NC-SA3.0unlessstatingadditionally. 文章目錄 本站概覽 Chih-ShengChen 78 文章 5 分類 158 標籤 1.BayesianLearning2.MLEandMAP2.1.MLE2.2.MAP3.完全避掉紅色積分項了嗎?4.Summary
延伸文章資訊
- 1Bayesian inference - Wikipedia
Bayesian inference is a method of statistical inference in which Bayes' theorem is used to update...
- 2foundations of computational agents -- 7.8 Bayesian Learning
- 3foundations of computational agents -- 7.8 Bayesian Learning
The idea of Bayesian learning is to compute the posterior probability distribution of the target ...
- 4How Bayesian Machine Learning Works | by ODSC - Medium
- 5What is Bayesian inference? - Towards Data Science