LDA的全稱是Latent Dirichlet allocation
LDA算法可以根據(jù)給定的文本集合以及預(yù)先指定的主題個數(shù),對文本進行主題分類智亮,并給出每個類別下的主題關(guān)鍵詞卧檐。
理解LDA算法的關(guān)鍵是共軛先驗分布帘瞭,LDA利用了共軛先驗分布的特性:經(jīng)過Bayes推斷之后的后驗分布仍然和先驗分布的形式相同朱浴,這意味著可以利用一批數(shù)據(jù)來更新先驗分布P0的參數(shù),使其變成服從同樣分布的后驗分布P1顶捷,并可以將P1作為下一批數(shù)據(jù)的先驗分布挂绰。這樣,我們就可以使用解析的方法進行機器學(xué)習(xí)了服赎。
用公式來解釋:
其中
如果制定了數(shù)據(jù)生成過程的概率分布葵蒂,以及參數(shù)模型的先驗分布,我們可以推導(dǎo)出后驗概率分布服從的概率分布模型重虑。如果先驗分布和后驗分布可以使用同一種概率分布模型來表示践付,則稱
共軛分布描述的是概率分布之間的關(guān)系。比如高斯分布是高斯分布的先驗分布缺厉,Beta分布是二項分布的先驗分布永高。這里有個小技巧,為了證明上述兩個例子提针,無須完整計算Bayes后驗分布的表達形式乏梁,即可得出結(jié)論:
如何理解共軛先驗分布?
我們可以將先驗分布看做機器學(xué)習(xí)中的模型(比如Beta分布)关贵,那么Beta分布中的參數(shù)a,b可以作為模型狀態(tài)的表示卖毁。每次有新的訓(xùn)練數(shù)據(jù)(樣本觀測結(jié)果)揖曾,我們就可以更新模型參數(shù)(根據(jù)數(shù)據(jù)將先驗分布轉(zhuǎn)換為后驗分布),以Beta分布為例亥啦,如果數(shù)據(jù)生成過程服從二項分布炭剪,參數(shù)a,b根據(jù)數(shù)據(jù)更新后的值為a+s翔脱,b+f奴拦,其中s和f只依賴于訓(xùn)練數(shù)據(jù)。那么我們可以說模型得到了“訓(xùn)練”届吁,訓(xùn)練的結(jié)果就是模型的狀態(tài)(a错妖,b)得到了更新。這個解釋類似于維基百科【1】中的Dynamical system的解釋疚沐。
更多細節(jié)可以參考文末給出的兩個鏈接暂氯。
參考文獻
1. https://en.wikipedia.org/wiki/Conjugate_prior
2.https://courses.engr.illinois.edu/cs598jhm/sp2010/Slides/Lecture02HO.pdf