机器学习(十六)——隐式狄利克雷划分
http://antkillerfarm.github.io/
隱式狄利克雷劃分
Latent Dirichlet Allocation,簡稱LDA。注意不要和Linear Discriminant Analysis搞混了。
這方面的文章,首推rickjin(靳志輝)寫的《LDA數學八卦》一文。全文篇幅長達55頁,我實在沒有能力寫的比他更好,因此這里就做一個摘要好了。
注:靳志輝,北京大學計算機系計算語言所碩士,日本東京大學情報理工學院統計自然語言處理方向博士。2008年加入騰訊,主要工作內容涉及統計自然語言處理和大規模并行機器學習工具的研發工作。目前為騰訊社交與效果廣告部質量研發中心總監,主要負責騰訊用戶數據挖掘、精準廣告定向、廣告語義特征挖掘、廣告轉化率預估等工作。
他寫的另一篇文章《正態分布的前世今生》,也是統計界著名的科普文,非常值得一看。
馬氏鏈及其平穩分布
Markov chain的定義如下:
P(Xt+1=x|Xt,Xt?1,?)=P(Xt+1=x|Xt)
即狀態轉移的概率只依賴于前一個狀態的隨機過程。
注:上面是1階Markov過程的定義。類似的還可以定義n階Markov過程,即狀態轉移的概率只依賴于前n個狀態的隨機過程。
Andrey(Andrei) Andreyevich Markov,1856~1922,俄國數學家。圣彼得堡大學博士,導師Pafnuty Chebyshev。最早研究隨機過程的數學家之一。圣彼得堡學派的第二代領軍人物,俄羅斯科學院院士。
雖然現在將隨機過程(stochastic process)劃為數理統計科學的一部分,然而在19世紀末期,相關的研究者在學術界分屬兩個不同的團體。其中最典型的就是英國的劍橋學派(Pearson、Fisher等)和俄國的圣彼得堡學派(Chebyshev、Markov等)。因此將Markov稱為統計學家是非常錯誤的觀點。
一些非周期的馬氏鏈,經過若干次的狀態轉移之后,其狀態概率會收斂到一個特定的數值,即平穩分布(stationary distribution)。
如各參考文獻所示,這里一般會舉社會學上的人口分層問題,引出馬氏鏈的極限和平穩分布的概念。這里要特別注意馬氏鏈收斂定理以及它的具體含義。
細致平穩條件:如果非周期馬氏鏈的轉移矩陣P和分布π(x)滿足
π(i)Pij=π(j)Pjifor alli,j
則π(x)是馬氏鏈的平穩分布,上式被稱為細致平穩條件(detailed balance condition)。
滿足細致平穩條件的馬氏鏈,其后續狀態都是平穩分布狀態,不會再改變。
注:細致平穩條件,比平穩分布的條件要強,因此它是平穩分布的充分條件,而非必要條件。
參考:
http://blog.csdn.net/lanchunhui/article/details/50451620
http://blog.csdn.net/pipisorry/article/details/46618991
MCMC
對于給定的概率分布p(x),我們希望能有便捷的方式生成它對應的樣本。由于馬氏鏈能收斂到平穩分布,于是一個很的漂亮想法是:如果我們能構造一個轉移矩陣為P的馬氏鏈,使得該馬氏鏈的平穩分布恰好是p(x),那么我們從任何一個初始狀態x0出發沿著馬氏鏈轉移,得到一個轉移序列x0,x1,x2,?xn,xn+1?,如果馬氏鏈在第n步已經收斂了,于是我們就得到了π(x)的樣本xn,xn+1?。
Markov Chain Monte Carlo算法的核心是引入一個參數α(i,j)使得一個普通的馬氏鏈,變成一個滿足細致平穩條件的馬氏鏈。即:
p(i)q(i,j)α(i,j)Q′(i,j)=p(j)q(j,i)α(j,i)Q′(j,i)
以上即為Metropolis算法。
注:Nicholas Constantine Metropolis,1915~1999,希臘裔美籍物理學家。芝加哥大學博士,反復供職于Los Alamos和芝加哥大學。(其實也就這倆地方,只不過這邊干幾年到那邊去,那邊教幾年書再回這邊來,這么進進出出好幾個來回而已)“曼哈頓計劃”的主要科學家之一,戰后主持MANIAC計算機的研制。
α的大小,決定了馬氏鏈的收斂速度。α越大,收斂越快。因此又有Metropolis–Hastings算法,其關鍵公式為:
α(i,j)=min{p(j)q(j,i)p(i)q(i,j),1}
注:Wilfred Keith Hastings,1930~2016,美國統計學家,多倫多大學博士,維多利亞大學教授。
Gibbs Sampling
這個算法雖然以Gibbs命名,但卻是Geman兄弟于1984年研究Gibbs random field時,發現的算法。
注:Josiah Willard Gibbs,1839~1903,美國科學家。他在物理、化學和數學方面都有重大理論貢獻。耶魯大學博士和教授。統計力學的創始人。
Donald Jay Geman,1943年生,美國數學家。美國西北大學博士,布朗大學教授。隨機森林算法的早期研究者之一。
Stuart Alan Geman,1949年生,美國數學家。MIT博士,約翰霍普金斯大學教授。美國科學院院士。最早將Markov random field(MRF)應用于機器視覺和機器學習。
因為高維空間中,沿坐標軸方向上的兩點之間的轉移,滿足細致平穩條件。因此,Gibbs Sampling的核心就是沿坐標軸循環迭代采樣,該算法收斂之后的采樣點即符合指定概率分布。
這里需要特別指出的是,Gibbs Sampling比Metropolis–Hastings算法高效的原因在于:Gibbs Sampling每次沿坐標軸的轉移是必然會被接受的,即α=1。
Unigram Model
假設我們的詞典中一共有V個詞v1,v2,?vV,那么最簡單的Unigram Model是定義一個V面的骰子,每拋一次骰子,拋出的面就對應產生一個詞。
頻率學派的Unigram Model如下圖:
貝葉斯學派的Unigram Model如下圖:
這里使用Dirichlet分布的原因在于,數據采用多項分布,而Dirichlet分布正好是多項分布的共軛先驗分布。
Dir(p→|α→)+MultCount(n→)=Dir(p→|α→+n→)
和wiki上對Dirichlet分布的pdf函數的描述(參見《數學狂想曲(二)》中的公式1)不同,rickjin在這里采用了如下定義:
Dir(p→|α→)=1Δ(α→)∏k=1Vpαk?1k,α→=(α1,?,αV)
其中:
Δ(α→)=∫∏k=1Vpαk?1kdp→
可以看出兩種描述中的B(α)和Δ(α→)是等價的。
下面我們來證明這個結論,即:
B(α)=∫∏k=1Vpαk?1kdp→(1)
證明:這里為了簡化問題,令V=3。則根據《數學狂想曲(二)》中的公式1可得:
Dir(p→|α→)=1B(α1,α2,α3)pα1?11pα2?12pα3?13
對該pdf進行積分:
?1B(α1,α2,α3)pα1?11pα2?12pα3?13dp1dp2dp3=1B(α1,α2,α3)∫pα1?11pα2?12pα3?13dp→
由pdf的定義可知,上面的積分值為1。
因此:
B(α1,α2,α3)=∫pα1?11pα2?12pα3?13dp→
證畢。
從上面的證明過程,可以看出公式1并不是恒等式,而是在Dirichlet分布下才成立的等式。這也是共軛先驗分布能夠簡化計算的地方。
總結
以上是生活随笔為你收集整理的机器学习(十六)——隐式狄利克雷划分的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数学狂想曲(三)——统计杂谈, PID算
- 下一篇: Raspberry Pi, UPNP(二