文本建模系列之二:pLSA

來源:互聯網
上載者:User

標籤:

“廟小妖風大,水淺王八多”。還是這句話,這是業餘研究生的文本建模系列之二:關於pLSA。前述就到此。

 

pLSA:Probabilistic Latent Senmantic Indexing.是Hoffman在1999年提出的基於機率的隱語義分析【1】。之所以說是probabilistic,是因為這個模型中還加入了一個隱變數:主題Z ,也正因為此,它被稱之為主題模型。

 

在pLSA中,一片文檔可能有多個主題,而一個主題對應著多個單詞的分布,以【2】LDA數學八卦一文中的描述為例,可以比較生動的闡述在pLSA模型中,一篇文檔是如何產生的。



 因此,對於文檔d中的一個單詞w,其機率可以描述為:

 

 

 

 

 對於整個語料,那麼其似然函數是:

 

當然,其對數的似然函數如下:



 其中
 n(d,w)表示在文檔d中,單詞w出現的次數

 

 帶入第一式可以得到對數的似然函數是:



 

 然後現在的問題是:如何求取P(w|z)和P(z|d).

 

這種隱變數的求法和之前的高斯混合分布的求法其實是一樣的,很顯然的需要EM演算法來進行求導。回顧之前的EM演算法,我們首先需要求取Q函數的分布的期望,然後另該期望最大化。

 

根據Jessen不等式:

 

 變成求右邊下界的問題,需要等號成立的話,需要:



 因此我們得出:


於是E步就是:


有兩個約束條件:



 
 
 下面進行M步,也就是求期望最大:

使用拉格朗日乘法求:




 
 

使偏導為零可以得出結果:



 這就求出了我們需要的參數。

 

然後就是重複迭代的過程,直至收斂。

 

 好了,模型已經建立完畢,現在的問題是給出一篇新的文檔,如何求取其文檔的主題分布呢。當然最直接的想法就是,將該文檔丟到語料庫中重新爬一遍,然後得出結果,當然這種耗時大一般不建議採用,論文【1】在給出了幾種方法,我覺的主要是fold-in方法比較重要:

將訓練出來的p(w|z)固定不變,在EM演算法中,只有一個文檔q,通過迭代跑p(z|d),之後計算相似度?

 

OK,這就是pLSA.

求偏導可以參考【3】

 

參考文獻:

[1]Probabilitic Latent Semantic Indexing.Thomas Hofmann .

[2]LDA數學八卦.靳志輝

[3]基於PLSA主題模型的文本聚類

文本建模系列之二:pLSA

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.