龔磊
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都 610065)
基于LDA 的主題發(fā)現(xiàn)及演化規(guī)律的可視化研究
龔磊
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都 610065)
近年來隨著互聯(lián)網(wǎng)的迅猛發(fā)展,社交網(wǎng)絡(luò)已經(jīng)成為越來越多的民眾表達(dá)想法和觀點(diǎn)的主要平臺(tái)。網(wǎng)絡(luò)中的輿論對(duì)現(xiàn)實(shí)社會(huì)的影響也越來越明顯,因此及時(shí)追蹤和發(fā)現(xiàn)網(wǎng)絡(luò)熱點(diǎn)主題及主題的變化規(guī)律也變得越來越重要。為了從通過大量的網(wǎng)絡(luò)文本中分析出主題及其演化趨勢,需要進(jìn)行主題發(fā)現(xiàn),主題跟蹤,可視化分析。在主題發(fā)現(xiàn)中,LDA擁有強(qiáng)大的數(shù)學(xué)概率基礎(chǔ),已經(jīng)成為比較流行的一種重要的技術(shù)手段。采用LDA技術(shù)進(jìn)行主題發(fā)現(xiàn),在主題模型LDA挖掘的基礎(chǔ)之上,利用可視化技術(shù)發(fā)現(xiàn)主題演化規(guī)律。
主題發(fā)現(xiàn);LDA;演化規(guī)律;可視化
隨著互聯(lián)網(wǎng)的迅猛發(fā)展,網(wǎng)絡(luò)已經(jīng)成為越來越多的民眾表達(dá)想法和觀點(diǎn)的平臺(tái)。網(wǎng)絡(luò)輿論是網(wǎng)民們通過網(wǎng)絡(luò)這個(gè)信息媒介來表達(dá)政治看法、思想意識(shí)、個(gè)人觀點(diǎn)等方面的綜合表現(xiàn)。網(wǎng)絡(luò)所具有的開發(fā)性和虛擬性使得民意表達(dá)得更加順暢,同時(shí)也可能在一個(gè)熱點(diǎn)事件上添加一些情緒,造成輿論的廣泛傳播。由于網(wǎng)絡(luò)上的信息量十分巨大,僅僅利用人工收集和處理數(shù)據(jù)是難以應(yīng)對(duì)網(wǎng)絡(luò)上的信息的。所以我們需要利用多種信息分析處理技術(shù),來分析網(wǎng)絡(luò)上的輿情動(dòng)態(tài),對(duì)于網(wǎng)絡(luò)上的熱點(diǎn)主題做出及時(shí)反應(yīng)。網(wǎng)絡(luò)輿論對(duì)現(xiàn)實(shí)社會(huì)的影響也越來越明顯,因此及時(shí)發(fā)現(xiàn)網(wǎng)絡(luò)熱點(diǎn)主題[1]及主題的變化規(guī)律也越來越重要。近年來,對(duì)社交網(wǎng)絡(luò)中的數(shù)據(jù)進(jìn)行主題挖掘[3]方面受到了許多研究者的關(guān)注,許多關(guān)于主題發(fā)現(xiàn)的算法被提出。研究者在文本挖掘領(lǐng)域提出了很多的分析技術(shù),但由于主題挖掘的結(jié)果通常是一堆詞簇,結(jié)果復(fù)雜,因而越來越多的研究者將主題挖掘和可視化技術(shù)[4]結(jié)合在一起。
本文對(duì)微博數(shù)據(jù)進(jìn)行了去噪和分組,做為LDA模型的輸入,輸出各個(gè)時(shí)間片的主題詞簇。對(duì)于LDA挖掘技術(shù)中主題詞簇中的詞語排列順序只是按詞語隸屬該主題的概率大小評(píng)估的,在實(shí)際實(shí)驗(yàn)過程中發(fā)現(xiàn)往往排在前面的都是一些常見詞,例如北京、中國、世界,等等,但是這些詞語并不能很好代表該主題的意思,至少也不應(yīng)該排在主題詞簇的前面。已有的結(jié)論:如果某一個(gè)詞語比較不常見,但是它在這個(gè)文檔中出現(xiàn)了較多次數(shù)的話,那么這些詞語是最能反映該文檔的中心思想的,也是我們想要發(fā)現(xiàn)的主題詞簇。所以在LDA計(jì)算主題詞簇的同時(shí),也需要計(jì)算詞語在文檔集中的逆文檔概率,綜合逆文檔概率和詞語隸屬主題的概率來挑選出該主題的主題詞簇。在LDA挖掘出不同時(shí)間片的主題詞簇的基礎(chǔ)上,計(jì)算相鄰時(shí)間片的主題相似度和主題強(qiáng)度,分析主題演化的連續(xù)性和停斷性。最后利用上述計(jì)算結(jié)果,用主題流展示主題演化規(guī)律,文字云展示時(shí)間片內(nèi)的主題詞簇。
D.M Blei等三人在2003年提出了LDA[2]模型讓主題模型火了起來,現(xiàn)在LDA已經(jīng)成為了主題建模中的一個(gè)重要標(biāo)準(zhǔn)。LDA是一個(gè)三層的貝葉斯模型,通過對(duì)兩個(gè)參數(shù)的估計(jì),從而知道主題的詞簇。
Documents類:為了存儲(chǔ)文檔集、詞語集、詞語索引等數(shù)據(jù),設(shè)Documents類來這些數(shù)據(jù)結(jié)構(gòu)在內(nèi)存中的存儲(chǔ)形式。Document類是Documents類的內(nèi)部類,Document是存儲(chǔ)一條微博的信息,Documents是存儲(chǔ)某一時(shí)間片內(nèi)(本文的時(shí)間片長度設(shè)置為七天)的所有微博數(shù)據(jù),Documents是包含多個(gè)Document的一個(gè)集合。Doucments屬性中:docs就是用來存儲(chǔ)某一時(shí)間片內(nèi)的所有document;termToIndexMap用來存儲(chǔ)某個(gè)詞語在該時(shí)間片內(nèi)的詞語庫中的索引;indexToTermMap用來存儲(chǔ)時(shí)間片內(nèi)的詞語庫;termCountMap用來存儲(chǔ)時(shí)間片內(nèi)的詞語與出現(xiàn)次數(shù)之間的對(duì)應(yīng)關(guān)系;termIDF用來存儲(chǔ)時(shí)間片內(nèi)所有詞語的逆文檔頻率。Documents方法中的readDocs()是針對(duì)數(shù)據(jù)是一次性讀完的情況設(shè)計(jì)的,因?yàn)橛袝r(shí)候不需要涉及到時(shí)間片的概率,只要一次LDA挖掘即可,但本實(shí)驗(yàn)需要多次循環(huán)LDA算法,為此設(shè)計(jì)了另外兩個(gè)函數(shù)readAll()和readTXT(),分別針對(duì)從數(shù)據(jù)庫中傳出的數(shù)據(jù)和本地TXT數(shù)據(jù)文件。
主題模型的構(gòu)建過程描述:
輸入:微博文本數(shù)據(jù),主題個(gè)數(shù)
輸出:文本在主題上的分本,主題在單詞上的分布。
算法偽代碼:


2.1 設(shè)計(jì)文字云
文字云的設(shè)計(jì)主要是空間展示區(qū)域的布局和關(guān)鍵字展示的設(shè)計(jì)。首先展示文字云的空間大小要確定,這會(huì)影響到關(guān)鍵字的布局的邊界問題。在選定文字云的空間時(shí)大小也要合適,當(dāng)空間區(qū)域太大時(shí),那么整個(gè)關(guān)鍵詞的文字云就會(huì)顯得不分散;當(dāng)空間區(qū)域太小時(shí),那么整個(gè)關(guān)鍵詞的文字云就會(huì)顯得太集中,而且關(guān)鍵詞可能會(huì)出現(xiàn)跑出限定的空間區(qū)域或者關(guān)鍵詞部分重疊的情況。然后是關(guān)鍵詞的顏色和字體,選擇合適的字體和顏色能在視覺上有好的效果。
設(shè)定放置文字云的空間區(qū)域后,就需要將關(guān)鍵詞放入該區(qū)域中,產(chǎn)生文字云的效果。每次產(chǎn)生一個(gè)展示區(qū)域中中心附近的一個(gè)坐標(biāo),如果該坐標(biāo)不在其他關(guān)鍵詞所占的區(qū)域內(nèi)時(shí),那么將關(guān)鍵字放入展示區(qū)域,同時(shí)該關(guān)鍵字區(qū)域被該關(guān)鍵字占用,否則隨機(jī)產(chǎn)生一個(gè)以上次沖突區(qū)域中心在以其半徑附近的一個(gè)坐標(biāo),再次判斷坐標(biāo)是否沖突即可。
2.2 設(shè)計(jì)主題流
主題流圖設(shè)計(jì)包括同一時(shí)間內(nèi)各個(gè)主題的高度和顏色的設(shè)置,主題強(qiáng)度映射成為主題的高度,顏色區(qū)分是否為同一主題流,不同時(shí)間片內(nèi)主題的連續(xù)性設(shè)置,主要是通過主題相似度來判別是否是上一主題流的延續(xù),如果屬于上一主題流的延續(xù),那么保持上一主題流的顏色,如果是產(chǎn)生新的主題流,那么產(chǎn)生一種的新顏色的主題流,同樣主題流的高度由主題強(qiáng)度確定,然后用曲線擬合形成主題流圖。
繪制主題流的數(shù)據(jù)文件:相似度數(shù)據(jù)和強(qiáng)度數(shù)據(jù)。通過相似度控制主題流的連續(xù)性,通過強(qiáng)度來控制主題流的粗細(xì),這樣主題流的大致形狀可以呈現(xiàn)成來。
可視化效果如圖1所示。
本文針對(duì)新浪微博數(shù)據(jù)為研究對(duì)象,對(duì)微博數(shù)據(jù)在主題維度進(jìn)行分析,采用文字云和主題流的可視化方法對(duì)其隨時(shí)間演過進(jìn)行研究。采用LDA發(fā)現(xiàn)主題信息,利用文字云表達(dá)主題內(nèi)容,利用主題流表達(dá)主題演化情況,實(shí)現(xiàn)對(duì)微博數(shù)據(jù)的主題進(jìn)行分析的原型系統(tǒng)。

圖1 可視化效果圖
[1]Cui W W,Liu S X,Tan L,et al.TextFlow:Towards Better Understanding of Evolving Topics in Text.In:IEEE Transactions on Visualization and Computer Graphics,2011
[2]Blei D M,Lafferty J D.Dynamic Topic Models[C].Proceedings of the 23rd International Conference on Machine Learning.Acm,2006: 113:120
[3]Whitelaw C,Garg N,Argamon S.Using Appraisal Groups for Sentiment Analysis[C].Proceedings of the 14th ACM International Conference on Information and Knowledge Management.ACM,2005:625-631.
[4]Viégas F B,Wattenberg M.Timelines Tag Clouds and the Case for Vernacular Visualization[J].Interactions,2008,15(4):49-52.
Visualization of Topic Discovery and Evolution Based on LDA
GONG Lei
(College of Computer Science,Sichuan University,Chengdu 610065)
With the rapid development of the Internet in recent years,social network has become a major platform for people to express more ideas and perspectives.The impact of public opinion on the reality of the network society has become increasingly evident,therefore tracing timely changes of social network and discovering hot topics are becoming increasingly important.In order to analyze topics and its evolution trend from a lot of text information on the Internet,we need to do topic discovery,analyze topic evolution,and visualize them.Uses LDA model which is popular to discover topics,based on result of LDA,uses visualization techniques to find topic evolution.
Topic Discovery;LDA;Topic Evolution;Visualization
1007-1423(2017)07-0042-03
10.3969/j.issn.1007-1423.2017.07.011
龔磊(1990-),男,湖北宜昌人,研究方向?yàn)橹悄苄畔⑻幚?/p>
2017-01-17
2017-03-01