馮 勇,屈渤浩,徐紅艷,王嶸冰
(遼寧大學 信息學院,沈陽 110036)
伴隨著WEB2.0的興起以及移動智能設備的繁榮發展,用戶由傳統的信息消費者轉變為信息供給者,微博作為WEB2.0的代表性技術向人們提供當下最流行的社交網絡服務,允許用戶通過網頁、PC客戶端、手持移動智能設備等發布140字符以內的短文本,可以自由表達主觀興趣和情感[1].因此,微博具有較強的時效性,即用戶的興趣取向會隨著時間的推移而變化.另外,微博還具有短文本、用戶自由發表觀點等特點,增加了主題信息挖掘的難度.已有微博主題挖掘研究多采用文本語義分析、用戶和微博文本間的關聯分析等方法開展,如:Wu等人通過對文本數據的潛在語義分析過程,提出了一種用于局部進化分析的文本挖掘模型.使用LDA模型為語料庫和文本獲得主題,并使用Clarity算法來測量主題的相似性,以便識別主題變異并發現隱藏在文本中的主題[2].Tong等人構建了一個文檔主題模型,旨在尋求一種透視解決方案,對搜索、探索和推薦的文章進行主題挖掘[3].張晨逸等人提出基于LDA的微博生成模型,考慮聯系人和文本的關聯關系對微博進行主題挖掘[4].李繼云等人在傳統LDA模型的基礎上考慮評論組和轉發微博的CGRMB-LDA模型,利用微博的上下文以及轉發評論關系等進行微博的主題挖掘[5].李鵬等人對LDA模型引入了微博評論和轉發等因素,利用微博的轉發、評論等關系挖掘隱式微博,并明確其主題歸屬[6].
現有的微博主題挖掘方法在微博文本語義分析等方面取得了較為顯著的效果,但仍存在以下不足:在微博主題挖掘過程中沒有考慮各文本發布的時間因素,主要是基于文本內容以及微博間的轉發關系等進行挖掘.本文的采用可變時間窗口的TIF-LDA(Time Influence Factor- Latent Dirichlet Allocation)微博主題模型是基于艾賓浩斯遺忘曲線提出的,引入微博發布的時間因素,采用可變時間窗口對反映當前用戶群體興趣取向的時間范圍做出限定,根據微博發布的時間與當前時間的距離長短對微博的文本內容分配時間影響權重,使得距離當前時間越近的微博權重越大,為此提出了采用可變時間窗口的TIF-LDA微博主題模型.通過與LDA模型的對比分析實驗證明本文所提模型能夠有效提升當前熱點微博主題挖掘的準確性和效率.
模型首先根據艾賓浩斯遺忘曲線[7]計算微博詞條的時間權重,將各詞條根據時間權重分別相加并按照權重和進行排序,根據結果訓練時間窗口,使用得出的時間窗口劃分微博主題挖掘的時間范圍,對時間范圍內的微博進行主題挖掘.
現有的微博主題[8,9]分析模型沒有將微博發布的時間信息加以利用,而用戶的興趣通常伴隨著時間的推移而發生變化.用戶關注的微博與當前時間間隔越小,越能反映出用戶當前的興趣取向,因此時間因素在考量用戶興趣變化上是不可忽視的[10].
為此,本文引入了時間影響因子概念,從時間因素視角出發,根據微博發布的時間與當前時間的差值對微博中詞條的權重進行調整.根據艾賓浩斯遺忘曲線計算每個微博詞條出現時的時間權重值,按詞條將權重值相加得出各詞條的時間權重和,按時間權重和對詞條進行排序并訓練時間窗口.
1)本文構造一個時間影響因子函數,如式(1)所示,分析用戶發布微博的時間和當前時間的時間間隔對用戶興趣取向的影響:
(1)
其中TimeWeigh表示用戶發布微博的時間和當前時間的時間差所反映用戶興趣變化的權重,Tcur表示當前時間,Tari表示該詞條在微博中出現的時間,EWeigh為微博詞條根據發布時間的衰減因子,衰減因子是由艾賓浩斯遺忘曲線擬合出的函數決定.
2)艾賓浩斯遺忘曲線是由德國心理學家艾賓浩斯針對人腦對于新事物的遺忘規律得出的研究成果,遺忘曲線反映出人腦的遺忘過程是從認識后立即開始,并且遺忘的過程遵循著最初很快,而后逐漸變慢的過程.本文根據人腦對若干感興趣的詞條作為記憶材料,記錄人腦在一定的時間間隔后對詞條遺忘情況,并將結果擬合為如式(2)所示函數:
Eweigh=78.52(Tari)-0.3283+12.75
(2)
3)對時間窗范圍內出現的微博詞條依據式(2)計算時間影響權重,并將權重以詞條為單位進行加和,得出各詞條的總時間影響權重,如式(3)所示:
(3)
其中Trec表示詞條最近一次出現的時間,Tx表示詞條第一次出現的時間,SumWeigh表示各詞條的時間權重和.
4)以用戶為單位將用戶發布的所有微博建立目標文檔,對文檔進行預處理,包括分詞以及去除無意義詞和停用詞,使目標文檔適用于本文分析模型.在考慮微博發布時間序列信息的條件下,將微博中的詞條形式化表示為二元組形式
1)依據式(2)所示遺忘曲線計算各點斜率值,發現在33天處第一次斜率值變化小于0.01,遺忘過程變化不再顯著,因此將時間窗口初始化為33天,如圖1所示;
2)將微博數據以日為單位,進行隨機抽取,抽取數據集總量的30%作為訓練集,訓練時間窗口大小;
3)對訓練集進行計算,將各詞條按得出的SumWeigh值進行降序排列,取top100個詞條記為Q1,k=0;
4)將時間窗口的大小減小Δt=(Δt=2k),對訓練集進行計算,將各詞條按得出的SumWeigh值進行降序排列,取top100個詞條記為Q2,k++;
5)按Q1和Q2中相同詞條的數目計算Q2和Q1的匹配度,記為M;
6)若M<0.83(即詞條的相同量小于83%),則認為收斂,確定時間窗口大小為33-Δt.否則,將Q2集合置為空(NULL),返回步驟(4).

圖1 可變時間窗口示意圖Fig.1 Diagram of variable time window
LDA(latent Dirichlet allocation)主題概率生成模型[11],是一種非監督學習的機器學習方法,模型分為詞條、主題和文檔的三層結構,用以獲取大規模文檔中潛在的主題分布信息.對于一篇文檔,LDA采用詞袋模型將文本表示為詞頻向量,模型中詞條出現的位置以及先后順序與最終得出的主題分布無關.LDA是在PLSA模型的基礎上加貝葉斯框架得到的,并且加入Dirichlet先驗分布影響.模型如圖2所示.

圖2 LDA圖模型結構Fig.2 LDA diagram model structure

LDA中所有變量的聯合分布如式(4)所示:
(4)
(5)
本文LDA的推導方法采用Gibbs采樣法,Gibbs采樣是馬爾科夫鏈蒙特卡爾理論(MCMC)中用來獲取一系列近似等于指定多維概率分布觀察樣本的算法[11,12].
微博文本具有反映用戶當前興趣情感的特點,在分析其主題時需要考慮各文本發布的時間因素.由于LDA模型提取文檔主題時,沒有考慮時間因素,因此在主題挖掘效果上不甚理想.
針對此問題,本文提出時間影響因子,并將眾多用戶的微博收集到語料中,無需對微博的長度進行篩選,也無需區分用戶,僅關注微博內容本身,將每個微博打時間標簽后組成適用于本文分析模型的目標文檔,對得到的語料使用TIF-LDA主題模型進行訓練,在詞條分配給主題的過程中添加時間影響權重,距離當前時間越近的詞條分得的時間權重越大,將標準LDA 模型中的詞條用詞條和詞條出現時間的二元組形式表示,如圖3所示.

圖3 帶有時間影響因子的LDA模型Fig.3 LDA model with time influence factor
加入時間影響因子后目標微博文本中各詞條的概率分布如式(6)所示:
(6)
在Gibbs采樣下推導目標微博文本中各詞條和主題服從如式(7)所示分布:
(7)


(8)

(9)
則第一項因子計算結果如式(10)所示:
(10)

(11)

(12)
超參數為αk和βt的條件下,得出后驗期望如式(13)、式(14)所示:
(13)
(14)
其中,φz,t表示主題z中詞條t的概率,θm,z表示文本m中主題z的概率.
根據聯合分布和后驗期望可對隱變量z的后驗分布進行分析,求解出微博中蘊含的主題分布.
3.1.1 實驗環境
實驗環境為Intel Core i5-4460處理器、主頻3.2GHz、內存8GB、1T硬盤的PC機.操作系統為Win7,實驗工具為Eclipse 4.6.1.
3.1.2 實驗數據及數據預處理
本文實驗數據采用2012-11-26至2012-12-28共406324條新浪微博數據,在數據預處理階段首先對圖片、網址引用等空文本微博進行剔除,將純文本微博數據使用中科院分詞工具NLPIR進行分詞處理,對分詞后的數據進行數據清洗,去除數據中的語氣詞等無意義詞及表情符號等,將清洗后數據整合成文檔.
3.2.1 TIF-LDA實驗結果
本文提出的TIF-LDA主題模型的參數設置依據參考文獻[11],主題數K=50,超參數選取α=1,β=0.1,λ=1.在初始時間窗為33天情況下計算微博時間權重,訓練時間窗,在本文數據集的條件下,得出時間窗口大小為25天.
TIF-LDA模型的部分實驗結果如圖4所示,在本次實驗中共挖掘50個主題,圖4中展示了其中的6個主題,
6個主

圖4 主題挖掘結果Fig.4 Theme mining results
題分別有關于中國夢、世界末日、泰囧、反腐、房價和圣誕節,是在2012-11-26至2012-12-20期間發生的最為引人關注的話題,例如2012-11-29日習近平總書記首次提出“中國夢”便引起人們的熱議,在接下來的時間里,關于中國夢的微博數量巨大,在TIF-LDA模型的挖掘中詞條“中國夢”的權重值最高.
3.2.2 對比分析
本文對TIF-LDA模型、WMC-LDA模型和CGRMB-LDA模型進行對比分析,通過采用人工核實、Perplexity值和Jensen-Shannon距離對實驗結果進行對比.人工核實的方式為隨機選取主題挖掘結果中的主題詞,對比挖掘數據時間段內的新聞熱點事件,以圖4主題挖掘結果中topic0為例,主題詞為“中國夢”,2012年11月29日,習總書記在國家博物館在參觀“復興之路”展覽時,第一次闡釋了“中國夢”的概念.隨后便引起全國網友的熱議和轉發相關主題微博,這反映出本文所提模型能夠準確挖掘出相關主題.
Perplexity值是主題建模研究中常用的對比指標[13],表示模型挖掘數據的混亂程度,Perplexity值越小代表模型的效果越好.Perplexity值定義如式(15)所示:
(15)
其中W為測試集,wm為測試集中抽取到的詞條,Nm為詞條總數.通過實驗對比得出TIF-LDA、CGRMB-LDA和WMC-LDA的Perplexity值與迭代次數的關系如圖5所示:

圖5 Perplexity值曲線Fig.5 Perplexity value curve
由圖5曲線可以看出以相同數據量為前提,在迭代次數增加的情況下,三種模型的Perplexity值都在下降,而TIF-LDA模型的Perplexity值更小.在迭代次數繼續增加的情況下,TIF-LDA模型和WMC-LDA模型的Perplexity值相近并且均低于CGRMB-LDA模型,但在有限的迭代次數情況下,TIF-LDA模型的Perplexity值低于WMC-LDA模型,表明TIF-LDA模型的運算速度更快、效率更高.
Jensen-Shannon距離是基于KL距離的一種用于計算概率分布的相似度的方法.本文用JS距離對比分析主題分布的相似性.當JS距離趨向于0時表示兩個分布的相似程度大,當JS距離趨向于無窮時表示兩個分布的趨向于無關.JS距離的定義如式(16)所示:
(16)
其中P和Q分別代表兩個分布,DKL是兩個概率分布的KL距離,使用JS距離可以計算出一個與目標主題相近的主題.TIF-LDA、WMC-LDA和CGRMB-LDA主題分布之間的JS距離如圖6曲線所示.
通過分別計算TIF-LDA模型和WMC-LDA模型、CGRMB-LDA模型的主題分布的JS距離,可以發現,TIF-LDA模型的主題分布和CGRMB-LDA模型的主題分布的差異較大,TIF-LDA模型的主題分布和WMC-LDA模型的主題分布差異相對較小.結合Perplexity值以及迭代次數深入分析,因TIF-LDA模型的Perplexity值比CGRMB-LDA模型的Perplexity值更低,主要是相同詞條在時間權重的影響下出現概率更大,既在時間權重影響下的詞條對主題的影響程度更大.TIF-LDA模型在數據量相同的情況下,與CGRMB-LDA模型的主題分布差異較小,但結合迭代次數考慮,TIF-LDA模型的迭代次數更少,運算速度更快,Perplexity值也更低.

圖6 TIF-LDA、WMC -LDA、CGRMB-LDA主題之間的JS距離Fig.6 JS distance of TIF-LDA、WMC-LDA、CGRMB-LDA
實驗證明,在引入時間窗口的情況下,僅需要計算反應當前熱點話題的數據,在能夠得出反應當前熱點話題的結果下,很大程度上減小計算量.在引入時間影響因子的條件下,距離當前時間越近的熱點微博話題將會被挖掘出來,能夠更加準確地把握當前的熱點話題,使得微博主題挖掘的效果更佳.
本文針對于現有微博主題挖掘方法中未考慮時間因素的不足,提出將微博發布的時間因素和艾賓浩斯遺忘曲線相結合,引入可變時間窗口對主題挖掘的時間范圍作出限定,提出采用可變時間窗口的微博主題挖掘模型,通過對比實驗證明該模型能夠更加準確地挖掘出微博中的當前熱點話題.