文本分析的參數估計
來自專欄面向領域的聊天機器人(Chatbot)
文本分析的參數估計
Parameter estimation for text analysis
作者:Gregor Heinrich
2005年5月第一版,2009年9月第2.5版
譯者的話:本文是筆者在研究LDA在任務型對話生成任務中考慮的一種方法。考慮這種方法的動因是大部分的NLU演算法需要基於標註的語料集來工作,而現有的標註語料集基本上是沒有實用價值的玩具,親手對1500句京東售後對話語料進行標註後發現,手工標註過程中會引入大量的錯誤,或語義slot本身設計的缺陷。因此考慮,是否能通過其他方式,能夠對生語料進行一些自動處理。在這方面,LDA方法是一種重要手段。譯稿略去了第4章,因為筆者覺得實在寫的不好。
摘要:本文描述文本建模中應用到的離散分布的常用參數估計方法。從最大似然估計、後驗與貝葉斯估計開始,探討了共軛分布於貝葉斯網等中心概念。作為其應用,詳細解釋了LDA模型,以及由此模型推導出來的基於Gibbs採樣的近似推斷演算法,包括了對Dirichlet超參數估計的探討。最後,討論了LDA模型的分析方法。
第一節 介紹
本文介紹離散域的參數估計基礎理論,這是理解面向topic的文本分析方法,如PLSA[Hofm99],LDA[BNJ02],以及其他mixture方法內在工作機制的必備基礎。儘管這種方法在研究社群里的接受程度非常高,但是直到目前為止,還看沒有相應問題的圖書或綜述性文章。大多數已知文獻使用高斯域的例子,那些公式完全不同。而其他好的topic建模的介紹性文章,如[StGr07],忽略了演算法細節和其他背景知識。
第二節通過一系列簡單的例子系統性介紹參數估計的基礎概念。第三節介紹共軛的概念,並一道講述文本領域所需的常用分布。第四節介紹貝葉斯網,這是通過概率模型來描述系統的圖形化語言。有了這些基礎知識,我們就能在第五節探討LDA了,這是一種對文本屬性進行估計的靈活模型。在LDA的例子里,Gibbs採樣是一個在貝葉斯網中進行近似推斷的直觀方法。隨後講述LDA的其他兩個重要方面。第六節討論LDA超參數的影響,第七節介紹LDA模型的分析方法。
第二節 參數估計方法
我們會遇到兩種推斷問題:
(1)估計一個分布參數集合θ,用以解釋觀察到的數據X;
(2)計算新觀察到的實例x的概率p(x|X)。
第一個問題是估計問題,第二個問題是預測或回歸問題。
數據集X= 是獨立同分布(iid)隨機變數序列。參數θ依賴於所考慮的分布,如高斯分布中,θ={μ,σ2}。對於這些數據和參數,在貝葉斯統計中有很多概率函數。他們作為貝葉斯規則引入。
貝葉斯規則為:

可以定義相應的術語為:

下一節開始,將介紹不同的估計方法,從簡單的最大似然估計開始,然後是最大後驗估計,最後說一下利用貝葉斯規則來推導出一個完整的後驗分布。
2.1.最大似然估計
最大似然估計試圖找到使似然分布最大化的參數。

因為是乘積形式,一般用求對數方式轉成求和的方式來簡化計算。於是,最大似然問題可以寫成:

對於第(1)個推斷問題,可以用求解下面方程組的方法來得到參數的估計值:

對於第(2)個推斷問題,即新觀察實例在給定數據集X下的概率估計,可以用下面的方法:

意思是,下一個實例我們會認為按照估計的參數來計算其概率。
例1.考慮一個二項分布實驗,即重複N次Bernoulli實驗,每次實驗拋出正面的幾率為p。我們知道,對於一次Bernoulli實驗,隨機變數C的概率密度函數為:

這裡c=1表示硬幣正面,c=0表示硬幣背面。
構建一個參數p的ML估計其可以用如下方式來求解:

這裡的是實驗結果為c的樣本個數。用L對參數p求微分得到:

這是硬幣正面的次數除以實例總數的商。
2.2.最大後驗估計
最大後驗估計(MAP)與MLE非常相似,但是允許包含一些參數的先驗知識,通過用先驗分布P(θ)來加權。這個名字得來是因為這種估計的目標是使參數的後驗概率最大化:

通過貝葉斯規則,可以推導如下:

與公式(4)相比,其實就是在似然分布的基礎上加上了先驗分布。實踐中,先驗分布p(θ)的作用就是把一些外部知識編碼進來,通過把制偏好向簡單模型來防止過擬合,這就是所謂的Occam剃刀法則。
通過在優化目標中融合P(θ),MAP遵守了貝葉斯建模方法,在這種方法里,參數θ本身也成了隨機變數,服從某種分布,因此也需要估計先驗分布自己的參數,如p(θ):= p(θ|а),也就是說,給定超參數а,通過先驗分布估計參數θ。
對於第(1)個推斷問題,MAP參數估計也可以用最優化方法去做,也就是對L(θ|X) + logp(θ)求極值。
對於第(2)個推斷問題,與式(7)類似,新觀察實例x的概率可以用如下公式得到:

例2. 還是上面那個簡單的Demo,我們可以在這個基礎上做一個MAP估計器。現在我們假定p的取值服從某種先驗分布,而0.5的概率最大。這裡我們為參數p選擇Beta分布:

上式中,
Beta分布的定義域區間[0,1],因此對生成均勻分布的概率很有用。Beta分布的概率密度函數的圖形化表示如圖1.可以看出來,給定不同的參數,這種分布有完全不同性狀的概率密度函數。

在我們的例子里,我們先假定硬幣是均勻的,因此設定а=β=5,求解這個最優化問題:

這個結果有兩個方面比較有意思:首先是MAP估計的行為變化,即計數對估計的影響被兩個先驗參數а和β削弱了,通過加上的值,結果趨於方向4/8=0.5。а和β的值越大,就需要越多的實際觀測值來修正а和β的作用。
另外就是和的獨特表現,這兩個數是否來自實際的觀測還是臆造的超變數其實無關緊要。這是為什麼а和β被稱為偽計數的原因。偽計數越大,beta分布就越尖銳。
2.3.貝葉斯推斷
MAP方法引入了參數θ的分布,而不是直接使用其估計值。貝葉斯推斷擴展了MAP方法,不僅把這個分布編碼到了求極值的目標函數中,而且把期望作為另一個參數估計也加進來,而且把方差信息作為估計質量或者可信度的測量方法。這種方法的主要步驟是根據貝葉斯法則的後驗概率計算:

由於我們沒有限制找到其最大值的計算方式,因此計算正則項,也就是式(18)中「證據」的概率p(X),是必要的。其值可以表達為參數空間上的全部概率:

這種邊際化方法是為什麼證據又被看做是「邊際似然分布」的原因。這裡用積分是對連續和離散樣本空間的一種泛化寫法,實際上後者需要求和。
一旦觀察到新數據,則公式(18)中的後驗概率就自動調整並最終分析其統計值。然而,式(19)中的正則化積分計算是貝葉斯推斷的麻煩事,下面會進一步處理它。
在預測問題中,貝葉斯方法可以保證(14)式的精確相等(而不是近似值)來擴展MAP,式(14)變換為:

這裡的後驗概率 替換為參數值θ的顯式計算。通過對θ的積分,先驗分布自動融合到預測值中,這個預測值自身是一個的分布,並且也能根據證據做分析,如,通過方差。

例3.還是考慮上面的例子,對上面的N次貝努力實驗構建一個貝葉斯估計器,且把先驗分布表達為一個Beta分布,參數是(5,5)。除了最大化後驗概率值,我們希望對現在是隨機變數的參數p求期望,並且度量證據的估計值。我們有:

這裡分母中的邊際似然分布Z可以確定為Beta分布的正則項約束。
我們知道Beta分布的均值為 ,方差為。利用這些統計結果,我們的估計值為:

第三節 共軛分布
貝葉斯模型的共軛分布通常很難計算,因為邊際似然分布的積分很複雜或者有未知變數。幸運的是,貝葉斯方法在對先驗分布belief的編碼上有些自由度,常用的構造模型推導的策略就是用共軛先驗分布。
3.1.共軛
設似然分布為p(x|θ),共軛先驗分布為p(θ),現在要求後驗分布p(θ|x)。可以通過與先驗分布p(θ)相同的函數形式,融合進觀測樣本x來求出p(θ|x)。式(25)的例子展示了,後驗分布經過推導,成為beta分布,與先驗分布的參數加上對觀測實例的統計計數後形成的分布一致。值得關注的是,正則項1/Z的關鍵決策最後變得很簡單。
除了簡化計算,共軛還可以讓超參數變得可解釋。在我們的Beta-Bernoulli共軛分布中,求解到的後驗分布可以解釋為在先驗分布的基礎上,把觀測計數加到偽計數а和β中。
進一步,共軛先驗-似然對通常允許把似然分布的參數邊際化為closed form。這樣可以把實驗觀測結果的似然分布直接用超參數的形式表達。對於Beta-Bernoulli分布,形如:

在上述計算中,用到了beta積分定理
,這個式子又叫做第一類Eulerian積分。
這個結果可用於預測未來的Bernoulli實驗,可以在沒有明確的參數知識p的基礎上,直接通過觀測實例來做預測。下面的式子來預測一個新實例:

這個計算用到了Gamma函數的性質:。
有很多重要的先驗-似然共軛對,可以用來簡化貝葉斯推斷。與beta分布相關的一個重要的例子是二項分布,二項分布給出了觀測到的N次貝努力實驗(N,p)中n(1)次頭像出現的概率。

由於參數p在這裡與在Bernoulli分布中有相同的含義,因此也就不奇怪二項分布的參數p的共軛先驗分布是Beta分布。其他用來對貝努力實驗計數的分布也如是,如負二項分布。
3.2.多變數情況
目前考慮的分布都局限在二值實驗。如果我們把樣本空間的維數從2擴展到有限整數K,我們就得到了一個K維貝努力實驗,或稱多項分布,如擲骰子。如果我們重複擲骰子實驗,我們得到一個關於骰子不同面的計數的多項分布。形如:

這裡的coefficient:
並且,和服從約束:=1,和=N。
多項分布管理了多維變數,其分量表示時間k在N次試驗總數中的計數。並且多項分布的coefficient技術了獨立試驗的配置對總數的影響。
一次獨立的多項分布試驗將Bernoulli分布擴展為一類離散隨機變數的分布:

因為只做一次實驗,相當於投了一次骰子,因此計數向量是個獨熱碼式的向量,只有一個元素=1。因此我們能簡化這個乘積,把多維計數向量轉成非零元素z的編號:

設一個隨機變數C服從多項分布,重複N次多項分布試驗,觀察數據集C成為:

這是多項分布缺了coefficient歸一化。差異的原因是我們假定N次試驗的結果序列,而不是一個特定的多項分布計數向量的概率,後者可以通過( )個不同的序列C生成。在文本建模的觀察數據中,後一種重複多項分布試驗更重要。對於參數為的多項分布,其共軛先驗分布為Dirichlet分布。這種分布把二值的beta分布擴展到K維。

參數為,Dirichlet delta函數為,這個函數只是為了書寫方便。一個Dirichlet分布的例子如圖3所示。很多應用用到了對稱的Dirichlet分布,這用到了離散的參數和維數K:

這裡的函數可以看做beta函數的多維擴展:。而且,可以把求和函數表達為第一類Dirichlet積分:
這個式子也可以與Beta積分類比:
3.3.文本建模
考慮N個獨立同分布隨機變數形成的集合W,服從多項分布。這可以想像成從一個次數是V的單詞表V中取N次單詞。這些樣本的似然概率很簡單:

這裡的表示單詞編號t觀察到的次數。這個例子是一個unigram模型,它假設了對於辭彙表V中辭彙的通用分布Multi(t),這裡的是辭彙t在文本中出現的幾率。Unigram模型假定了對於考慮的所有文本而言只有一個似然分布,這對於某種語言或語料庫是有用的,但是對任何子集,如文檔,是無差別的。另外,這是一個基礎模型,可以開發出更為複雜的模型。
考慮共軛模型,辭彙表的參數向量 服從Dirichlet分布,。與式(25)類似,通過先驗偽計數 與多項分布的觀察值W的合併,來獲得Dirichlet後驗分布參數。

這裡,單詞的似然概率重寫為單詞序號的重複次數的概率:並且使用了已知的Dirichlet分布的歸一化。Dirichlet分布的偽計數行為關聯到重要的Polya罈子模式:罈子里裝了W個球,共有V種顏色,對於每個球w採樣後,會補一個同顏色的球進來。意味著Dirichlet展示了一種「富人更富」的效果,或者聚類行為。
通常用之前的觀察結果作為單詞表中單詞的計數,來建模新文檔,而不是前述的unigram統計量。這可以用Dirichlet偽計數超參數,並且用邊際化計算出多項分布參數:

與(30)式中的二值版本相比,積分域不再是[0,1],因為多項分布公式不會確切地包含概率的歸一化常數。我們加上這個限制之後,積分域P就變成了一個K-維空間中的K-1單純形平面,邊界線是每一維軸線上的直線pk=1。對於三維的情況可參考圖3。


在上述計算中用到了第一類Dirichlet積分(對simplex ):

與beta-Bernoulli例子類似,推出來的結果展示了一個term上的分布,不需要其他統計。
第五節 LDA
Blei et al(BNJ02)的隱式Dirichlet分布模型是一個概率生成模型,用在非監督學習場景下估計多項分布觀測樣本的屬性。具體到文本建模領域,LDA是一種隱語義分析方法。隱語義分析背後的思想是找到文本語料集合隱含的主題或概念結構,這些主題或概念能夠透過「字眼」的雜訊,抓住文本的含義。術語「隱語義分析」由Deerwester等引入(DDL90),他經驗性總結出,文本中辭彙的共現結構可用來構造出隱含主題結構,而不需要任何背景知識。反過來,文本的隱式主題表示可以對一些語言現象進行建模,如同義詞和詞義消岐。這些有助於Informcation retrieval系統用滿足用戶需求(或查詢)的方法表示文本,這時內容中的語義項都從意義層面表達出來,而不是表面的詞法分析。
LDA與Hofmann99的PLSA有緊密連接,後者是隱式語義分析任務中latent aspect方法的應用。進一步,LDA擴展了PLSA方法,定義了一個完整的生成過程[BNJ02]。Girolami和Kaban研究表明,對於同一個模型,均勻分布作為先驗的Dir(1)構成的LDA實際上給出了一個貝葉斯估計器。而PLSA給出的是最大似然或最大後驗估計器[GiKa03]。
5.1.混合建模
LDA是一種混合模型,用各種「成分「分布的凸組合來解釋觀測樣本。凸組合是一個加權和,各權值的和為1。在LDA中,一個單詞w由各種主題z的凸組合來生成。在這種混合模型下,一個辭彙t的觀測概率為:

這是一個混合模型,組成成分p(w=t|z=k)是一個多項分布,其樣本空間是辭彙,假定其屬於某個隱主題z=k。權重比例由主題概率p(z=k)構成。事實上,LDA在全局主題比例和對文檔中單詞確定主題的基礎上,還前進了一步。在這個基礎上,把LDA推斷的主要目標形式化描述下來:
(1)對每個主題k,找到全部辭彙對這個主題的分布
(2)對每個文檔m,找到全部主題對這個文檔的分布
待估計的參數集合:和 ,這兩套參數是單詞和文檔的隱語義表示的基礎。
5.2.生成模型

為了構造一個推斷策略,我們先把LDA看成一個生成過程。考慮圖6所示的貝葉斯網,可以這麼解釋:LDA生成觀察到的單詞流,對這個單詞流分區,從而形成文檔。
對每一篇文檔:先抽取一個主題的比例分布,然後,從這個出發,生成主題對應的單詞。也就是說,要生成一個單詞,先根據文檔的混合比例採樣一個主題指示器,然後用該主題下的辭彙分布採樣一個單詞。這裡主題的分布對整個語料庫只採樣一次。
由於LDA對每個觀察到的單詞樣本都分配一個不同的主題,並且每篇文檔中主題的分布比例不同,因此這個模型不僅僅是一個混合模型,事實上是一種超混合模型。通常,超混合模型表示一個混合模型中,混合的成分分布本身又是不同特徵的混合模型。關於離散數據的超混合模型的Bayesian方法在[PSD00]中被揭示出來,這在LDA應用到文本領域之前就研究出來了。[BNJ02]中給出的完整生成過程在圖7,圖8給出了所有統計量的列表。
//主題盤子
對所有主題,循環執行:
| 採樣混合成分分布 //主題 – 辭彙
//文檔盤子
對所有文檔,循環執行:
| 採樣混合比例分布 //文檔 – 主題
| 採樣文檔長度
| //單詞盤子
| 對文檔m中所有單詞,循環執行:
| | 採樣主題
| | 採樣辭彙
圖7 生成過程演算法
M
生成的文檔數(離散的常數)
K
主題數,或稱為混合成分(離散常數)
V
辭彙t的個數,辭彙表的辭彙數(離散常數)
生成主題的參數隨機變數的超參數(K維向量)
由主題生成單詞的參數隨機向量的超參數(V維向量)
K維向量。P(z|d=m)的參數,這是文檔m的主題概率。
每篇文檔對應一個概率,因此共有K個
V維向量。P(t|z=k)的參數,這是主題k的單詞概率。
每個主題對應一個概率,因此共有V個
文檔長度,這裡建模為一個泊松分布[BNJ02],參數為ε
文檔m中,為第n個單詞選擇主題的指示器
文檔m中,第n個單詞對應的辭彙的指示器。
圖8 名詞解釋
5.3.似然分布
看一下貝葉斯網的拓補結構,我們可以定義一篇文檔的complete-data的似然分布,也就是說,在給定的超參數條件下的,所有已知隨機變數和隱藏隨機變數的聯合概率:

定義這個分布比較簡單,而且對後續推導很有用。在給定LDA參數條件下,一個單詞確定為一個特定辭彙的分布,可以通過在上面公式的單詞盤子中把 邊際化出來得到:

這正好是式(55)的混合模型,以特定文檔作為混合權重。一個文檔的似然分布和他所在的語料
正好是作為觀測結果的 獨立事件的聯合似然分布:

5.4.基於Gibbs採樣的推斷
儘管LDA還是個相對簡單的模型,直接推斷還是基本上不現實的。解決方案是使用近似的推斷演算法,例如mean-field variational 期望最大化演算法[BNJ02],期望傳播法[MiLa02]和Gibbs採樣[Grif02, GrSt04, PSD00]。
Gibbs採樣是MCMC模擬的一種特殊情況,可以為高維模型的近似推斷提供相對簡單的演算法。因此我們採用這種演算法,並且提供一種推導,比Griffiths & Steyvers的原始版本更詳細。LDA模型的Gibbs採樣可選的方法是[PSD00]發現的,實質上在其解釋超混合模型時先取得LDA,然後才為類似於貝葉斯PLSA模型建立了直接的Gibbs採樣演算法。
MCMC方法可以通過Markov鏈的靜態行為模擬高維概率分布。這意味著一個樣本可以由Markov鏈上的一步轉移來生成,當Markov鏈轉移到靜態狀態之後。這種所謂的靜態狀態發生在所謂的「burn-in周期」之後,它消除了初始參數的影響。Gibbs採樣是MCMC的一種特殊情形,每次採樣一次分布的維數xi,以所有其他維的值作為條件,表示為。本演算法的工作方式為:
- 選擇維度i(隨機或預設)
- 從採樣
為了構建Gibbs採樣器,需要找到單變數條件概率,這個可以用下面的方法:

對於含有隱變數 的模型,給定證據的後驗概率是經常要求解的分布。基於式(59),這種隱變數模型的Gibbs採樣器的通用形式為:

這裡的積分變成對離散變數的求和。有了足夠數量的樣本後,隱變數後驗概率可以近似成如下:

這裡的Kronecker delta函數定義為
5.5.Collapsed LDA Gibbs採樣器
我們用上述的隱變數方法導出LDA的Gibbs採樣器。我們模型的隱變數是,也就是語料集中單詞的主題。我們不需要包含參數集,或者說可以在他們上面做積分,因為他們可以解釋為觀測結果和對應的的關聯統計。這種在模型推斷中對一些參數做積分的策略通常稱為collapsed方法[Neal00],或Rao-Blackwellised方法[CaRo96],這種方法經常用在Gibbs採樣中。
推斷的目標是分布,可以直接比例化為聯合分布:

這裡略去了超參數。這個分布覆蓋了一個很大的離散隨機變數空間,而且求值分母很困難,因為它表示了個辭彙的匯總。這時Gibbs採樣過程就可以粉墨登場了。在我們的配置中,期望的Gibbs採樣器運行一個Markov鏈,用全條件概率
來模擬
。我們可以通過求值(60),用隱變數法來獲得全條件概率,這就需要計算聯合分布。
聯合分布。在LDA里,聯合分布可以表達為:

因為第一項是與 獨立的(條件獨立
),第二項是與條件獨立的。這樣,聯合分布里的兩個元素就可以分別處理。第一項可以從一個觀察到的隸屬於一個主題的單詞詞頻的多項分布中導出:

也就是說,語料庫中的W個單詞,是通過觀測獨立的多項分布試驗得到的,條件是主題編號zi。現在我們可以把這個單詞的乘積分解為一個對主題的乘積和一個對辭彙的乘積,把主題的貢獻分割開來。

這裡我們用表示辭彙t在主題k中觀測到的次數。然後,目標分布
可以在上求積分獲得,這可以用Dirichlet對z上做積分得到:

這可以解釋為K維Dirichlet-多項分布模型的乘積(參考式52),表示了K個主題詞的語料庫。
主題分布
可以與
類似的方式導出。先分解其條件,重寫其參數為兩個乘積,分離文檔的貢獻:

這裡,di代表文檔,單詞i屬於這個文檔。
表示主題k被觀察到的次數。對進行積分,我們得到:

最終,聯合分布變成醬紫:

全條件分布。從上述聯合分布,我們可以導出一個單詞,編號為 i=(m,n)的全條件分布,也就是Gibbs採樣器取隱變數的更新方程。利用鏈式規則,和規定好
和
,我們有:

這裡面的計數值表示辭彙i不包括在相應的文檔或主題中,並且,超參數忽略掉了。
多項分布參數。最終,我們需要得到與Markov鏈的狀態相關的多項分布參數集 。根據他們的定義,即Dirichlet先驗 – 多項分布共軛對,對式65的組件z=k和式69的m應用貝葉斯規則:

這裡的是文檔m的主題觀察計數向量,表示主題k的辭彙觀察計數向量。使用Dirichlet分布的期望公式
,對這些結果運算:

Gibbs採樣演算法。有了式78,式81,和式82,Gibbs採樣過程(圖9)就可以工作了。整個過程僅用了5個大一點的數據結構:
- 計數矩陣和,各自的維度為M*K,和K*V;
- 他們的按行求和nm和nz,各自的維度為M和K;
- 以及狀態變數zm,n,維度是W。
Gibbs採樣演算法有三個階段:初始化,burn-in和採樣。然而,確定burn-in需要的長度是MCMC方法的一個問題。有很多Markov鏈的收斂準則,我們手動檢查參數集群與單詞和文檔的語義相關性,用這些值作為comparable setting的估計。
演算法LdaGibbs({} | )
輸入:單詞向量{},超參數 ,主題數K
全局數據:計數統計量 ,,和他們的和{}與{},全條件陣列p(zi|.)
輸出:主題association {},多項分布參數,超參數估計
//初始化
對所有文檔,循環執行:
| 對文檔m中的所有單詞,循環執行:
| | 採樣一個主題~Mult(1/K)
| | 增加文檔-主題計數:
| | 增加文檔-主題匯總和的計數:
| | 增加主題-辭彙技術:
| | 增加主題-辭彙匯總和的計數:
//burn-in階段和採樣階段里的Gibbs採樣
如果沒有結束(指示變數),則循環執行:
| 對所有文檔,循環執行:
| | 對文檔m中的所有單詞,循環執行:
| | | //對當前的主題分配策略,即主題k,分配給辭彙t對應的單詞
| | | 降低計數和匯總和:
| | | //根據式78做多項分布採樣(用上一步減少後的數)
| | | 樣本主題編號
| | | //對新的主題分布策略,即主題,分配給辭彙t對應的單詞
| | | 增加計數和匯總和:
| //檢查收斂性和read out參數
| 如果收斂,並且上一次read out之後有L sampling循環了:
| | //不同參數read out被平均了
| | 根據式81,read out參數集
| | 根據式82,read out參數集
要得到Gibbs採樣器的最終模型的參數,有幾種不同方法。一種方法是只使用一種read out,另一種方法是對一些樣本求平均,並且常常對這些樣本和隨後的read out間留一個L次循環的間隔,一邊得到Markov鏈的decorrelated狀態。這個間隔一般稱為「thinning interval」或者採樣延遲。
第六節 LDA超參數
上一節的演算法中假定Dirichlet的參數是已知的。事實上,這些參數會顯著影響LDA模型的行為。這可以從式68和式72看出來,或者觀察Dirichlet密度函數的不同形狀:K=2時,它成為Beta密度函數(圖1)。典型場景下,LDA使用對稱的Dirichlet先驗,這意味著,模型的先驗假設所有主題按相同幾率分配到一個文檔,而所有單詞也按相同幾率分配到一個主題。本節概述超參數的含義並建議其估計方法。
6.1.解釋
Dirichlet超參數通常對多項分布參數有平滑效果。通過降低 的值來削弱這種平滑效果,可以得到更有決策意義的主題分配,但是這樣會使 變得更稀疏。的稀疏程度由控制,意味著模型傾向於為每個主題分配更少的辭彙,並且可能影響主題的數量。這與單詞的「相似性」怎麼去計算相關(或者說,他們需要在不同上下文中共現的頻度)。對於稀疏主題,當K更大時,模型能夠擬合的更好,因為模型可以為給定的辭彙分配多個主題。這是為什麼在一些學習K的模型中,例如非參數化的貝葉斯方法[TJB06],K強依賴於超參數。意味著模型傾向於用更少的主題來刻畫文檔。
超參數、主題數量,和模型行為三者之間的關係是一個共同體,它可以用來綜合特定屬性的模型,也可以分析數據中內在的特徵。在[GrSt04]中報道,取時,可以得到較好的模型量。另一方面,給定主題數量K,從數據中學習也可以提到模型量。另外,超參數估計可以解釋出數據集的特定屬性。對的估計揭示出文檔間語義上的差異程度,對的估計揭示出常用的共現單片語的大小。然後,對超參數估計的解釋不總是那麼簡單,而且特定的文檔內容薈萃的影響也沒有更深入的研究。下文中我們考慮對的估計,對的估計可以以此類推。
6.2.估計
我們知道一些學習Dirichlet參數向量的方法,不幸的是,沒有確切的closed-form解的存在,也沒有可以直觀上做貝葉斯推斷的共軛先驗分布。最確切的方法是迭代式的近似。[Mink00]上有更深入的理解。實時上,學習Dirichlet參數的最好方法是利用Gibbs採樣得到的可用信息,也就是,用主題相關的計數統計來代替多項分布參數。這意味著超參數可以通過Dirichlet-多項分布共軛對的參數估計得到。
對於無限制條件的Dirichlet向量化參數,一個簡單和穩定定點循環的最大似然估計器是:

這裡的是digamma函數,即的微分。估計過程可以通過某種簡單的啟發式方法或估計啟動,然後經過若干次迭代後收斂。
對於對稱式Dirichlet分布,在LDA中更常見(主題和辭彙可替換),目前沒有報道的估計器可以在Gibbs採樣器下工作的很好。這裡可以用這個事實:

擴展。最大似然估計器可以用最大後驗估計器來增強,通過在超參數中加入一個先驗,例如一個gamma分布。這就需要通過最大化加入到似然函數中的先驗分布,來拓展導出過程。所以,可以用MCMC方法來採樣超參數,這允許用完全貝葉斯方法。這時採樣分布就是
,通過接受拒絕Metropolis採樣方法[GBT95]來模擬。或者,如果這個採樣分散式log-concave
,接受拒絕採樣[GiWi92]演算法忽略了Metrpolis演算法中複雜計算部分,可以使用。
參考文獻
AGR03. L. Azzopardi, M. Girolami & K. van Risjbergen. Investigating the relationship between language model perplexity and IR precision-recall measures. In Proc. SIGIR. 2003.
BaRi99. R. A. Baeza-Yates & B. A. Ribeiro-Neto. Modern Information Retrieval. ACM Press & Addison-Wesley, 1999. ISBN 0-201-39829-X. URL http://citeseer.ist.psu.edu/baeza-yates99modern.html.
BNJ02. D. Blei, A. Ng & M. Jordan. Latent Dirichlet allocation. In Advances in Neural Information Processing Systems 14. MIT Press, Cambridge, MA, 2002.
BNJ03. ———. Latent Dirichlet allocation. Journal of Machine Learning Research, 3:993–1022, Jan. 2003. URL http://www.cs.berkeley.edu/~blei/papers/blei03a.ps.gz.
CaRo96. G. Casella & C. P. Robert. Rao-blackwellisation of sampling schemes. Biometrika,83(1):81–94, March 1996.
DDL+90. S. C. Deerwester, S. T. Dumais, T. K. Landauer, G. W. Furnas & R. A. Harshman. Indexing by latent semantic analysis. Journal of the American Society of Information Science, 41(6):391–407, 1990. URL http://citeseer.ist.psu.edu/deerwester90indexing.html.
GBT95. W. R. Gilks, N. G. Best & K. K. C. Tan. Adaptive rejection metropolis sampling within gibbs sampling. Applied Statistics, 44(4):455–472, 1995.
GiKa03. M. Girolami & A. Kaban. On an equivalence between PLSI and LDA. In Proc. of ACM
SIGIR. 2003. URL http://citeseer.ist.psu.edu/girolami03equivalence.html.
GiWi92. W. R. Gilks & P. Wild. Adaptive rejection sampling for gibbs sampling. Applied Statistics, 41(2):337–348, 1992.
Grif02. T. Gri_ths. Gibbs sampling in the generative model of Latent Dirichlet Allocation.
Tech. rep., Stanford University, 2002. URL http://www-psych.stanford.edu/~gruffydd/cogsci02/lda.ps.
GrSt04. T. L. Gri_ths & M. Steyvers. Finding scientific topics. Proceedings of the National Academy of Sciences, 101(Suppl. 1):5228–5235, April 2004.
Hein09. G. Heinrich. A generic approach to topic models. In Proc. European Conf. on Mach. Learn. / Principles and Pract. of Know. Discov. in Databases (ECML/PKDD)(in press). 2009.
HeSa55. E. Hewitt & L. Savage. Symmetric measures on cartesian products. Trans. Amer. Math. Soc., 80:470501, 1955.
HKL+05. G. Heinrich, J. Kindermann, C. Lauth, G. Paa? & J. Sanchez-Monzon. Investigating word correlation at di_erent scopes—a latent concept approach. In Workshop Lexical Ontology Learning at Int. Conf. Mach. Learning. 2005.
Hofm99. T. Hofmann. Probabilistic latent semantic analysis. In Proc. of Uncertainty in Artificial Intelligence, UAI』99. Stockholm, 1999. URL http://citeseer.ist.psu.edu/hofmann99probabilistic.html
推薦閱讀:


















