topic model 是一種應(yīng)用十分廣泛的產(chǎn)生式模型(generative model),在IR, NLP,ML都有廣泛的應(yīng)用,本文將對目前已有的topic model進行分類總結(jié),然后選擇幾個代表性的topic model進行較為詳細(xì)的介紹,從而理解topic model 的思想,以及怎么應(yīng)用。
topic model最經(jīng)典的模型之一是LDA(latent dirichlet allocation) ,其它的topic model大都充分利用了LDA的思想去設(shè)計,所以下面先簡單地描述一下其生成一個文檔集合過程:
Topic Model (LDA)認(rèn)為一個離散數(shù)據(jù)集合(如文檔集合,圖片集合,為行文方便,本文統(tǒng)統(tǒng)以文檔集合作為描述對象,其他的數(shù)據(jù)集合只需換掉對應(yīng)的術(shù)語即可)是由隱含在數(shù)據(jù)集合背后的topic set 生成的,這個set中的每一個topic都是詞的概率分布。對于文檔中的每一篇文檔,先抽取一個topics
proportion \theta;然后對于這個文檔中的每一個詞的位置 w_i, LDA 先從\theta中選擇一個topic,然后再從這個topic對應(yīng)的詞分布中選擇一個詞去填充;按照上述步驟直到整個文檔集合產(chǎn)生完畢。
下面我會把目前出現(xiàn)的topic models進行分門別類,小結(jié)。 我認(rèn)為topic models主要可以分為四大類:1)無監(jiān)督的、無層次結(jié)構(gòu)的topic model;2)無監(jiān)督的、層次結(jié)構(gòu)的topic model;3)有監(jiān)督的、無層次結(jié)構(gòu)的topic model;4)有監(jiān)督的、層次結(jié)構(gòu)的topic model。 對于1)主要有: PLSA, LDA, Correlated Topic Model, PAM,Concept Topic Model等 對于2)主要有: HLDA, HDP,HPAM等 對于3)主要有: S-LDA, Disc-LDA, MM-LDA, Author-Model, Labeled LDA, PLDA 等等 對于4)主要有: hLLDA, HSLDA 以上模型對應(yīng)的文章名字,用google直接搜索即可得到,這里就不列出。
下面對于每一類topic model,我都選擇一個模型來進行介紹: 對于1) 上述已經(jīng)介紹了LDA,所以就不介紹這類模型了; 對于2) 我想介紹HLDA(Hierarchical Latent Dirichlet Allocation) 模型 由于LDA產(chǎn)生出來的topic都是孤立的,topic之間沒有關(guān)系,HLDA模型在LDA的基礎(chǔ)上,試圖建立topic之間的層次關(guān)系,同時考慮到LDA需要指定topic的數(shù)量作為參數(shù),如果能自動決定topic的數(shù)量就比較理想了。為了自動發(fā)現(xiàn)決定topic的數(shù)量,HLDA用Chinese Restaurant Process去自動決定每一層的topic數(shù)量,然而需要指定topic層次的高度H(也就是有多少層的topic),同時它訓(xùn)練出來的層次結(jié)構(gòu)是等高的,都是H這么高。至于怎么產(chǎn)生文檔的每個詞,這個和LDA都是一樣的。 對于3) 我想介紹Labeled LDA (Labeled Latent Dirichlet Allocation) 模型這個模型最大的好處是能夠訓(xùn)練出來帶標(biāo)簽的topic,因為在以前的topic model訓(xùn)練出來的topic都是分布,怎么賦予一個標(biāo)簽給這些topic則是很難的一個問題。 Labeled LDA與LDA最大的不同是: LDA是在所有topics上為某一個詞進行選擇某個topic,而labeled LDA則是只從文檔相關(guān)的label對應(yīng)的topic中去選擇,其余和LDA都是一樣的。 對于4) 我想介紹hLLDA (hierarchical Labeled Latent Dirichlet Allocation)模型 這個模型最大的好處就是在Labeled Latent Dirichlet Allocation模型的基礎(chǔ)上擴展到層次結(jié)構(gòu),其思想也是很簡單的,認(rèn)為一個文檔只是由這個文檔對應(yīng)的層次label所產(chǎn)生,具體學(xué)習(xí)和推斷的時候幾乎和Labeled Latent Dirichlet Allocation模型一樣。
這些模型相對來說都是較為容易理解的,關(guān)鍵是要先理解LDA,包括數(shù)學(xué)公式的推導(dǎo),如果LDA能弄得比較清楚,其它的模型就會非常的容易理解。
|
|