主題模型

主題模型

主題模型(topic model)是以非監督學習的方式對文集的隱含語義結構(latent semantic structure)進行聚類(clustering)的統計模型。

主題模型主要被用於自然語言處理(Natural language processing)中的語義分析(semantic analysis)和文本挖掘(text mining)問題,例如按主題對文本進行收集、分類和降維;也被用於生物信息學(bioinfomatics)研究。隱含狄利克雷分佈Latent Dirichlet Allocation, LDA)是常見的主題模型。

歷史


對主題模型的研究最早來自1998年Christos H. Papadimitriou、Prabhakar Raghavan、Hisao Tamaki和Santosh Vempala提出的潛在語義索引(Latent Semantic Indexing, LSI) 。1999年,Thomas Hofmann提出了概率性潛在語義索引(Probabilistic LST, PLST) 。
2003年,David M.Blei、Andrew Ng和Jordan I. Michael提出了隱含狄利克雷分佈(Latent Dirichlet Allocation, LDA) 。LDA得到了廣泛使用,並衍生出了很多改進版本,例如在2006年由Wei Li和Andrew McCallum提出的彈珠機分佈模型(pachinko allocation model) 。

理論


在主題模型中,主題(topic)是以文本中所有字元為支撐集的概率分佈,表示該字元在該主題中出現的頻繁程度,即與該主題關聯性高的字元有更大概率出現。在文本擁有多個主題時,每個主題的概率分佈都包括所有字元,但一個字元在不同主題的概率分佈中的取值是不同的。一個主題模型試圖用數學框架來體現文檔的這種特點。主題模型自動分析每個文檔,統計文檔內的詞語,根據統計的信息來斷定當前文檔含有哪些主題,以及每個主題所佔的比例各為多少。
舉例而言,在“狗”主題中,與該主題有關的字元,例如“狗”、“骨頭”等詞會頻繁出現;在“貓”主題中,“貓”、“魚”等詞會頻繁出現。若主題模型在分析一篇文章后得到10%的“貓”主題和“90%”的狗主題,那意味著字元“狗”和“骨頭”的出現頻率大約是字元“貓”和“魚”的9倍。

應用


自然語言處理中,主題模型被用於對文本的表徵(representation)進行降維(dimensionality reduction)、按主題對文本進行聚類、以及根據用戶偏好形成文本推薦系統。