王學(xué)賀
(菏澤醫(yī)學(xué)專科學(xué)校計算機教研室 山東菏澤 274030)
基于主題擴(kuò)展的校園論壇熱點話題發(fā)現(xiàn)方法與系統(tǒng)
王學(xué)賀
(菏澤醫(yī)學(xué)??茖W(xué)校計算機教研室 山東菏澤 274030)
文章首先給出了基于話題檢測實現(xiàn)論壇熱門話題發(fā)現(xiàn)的基本方法,再針對論壇文本稀疏性造成的漏報率高的問題,提出了基于主題擴(kuò)展的話題發(fā)現(xiàn)方法,最后設(shè)計并實現(xiàn)了一個BBS熱點話題發(fā)現(xiàn)原型系統(tǒng)。實驗結(jié)果表明文章提出的方法和系統(tǒng)可以有效地監(jiān)控校園論壇上出現(xiàn)的熱門話題。
話題檢測;BBS;主題擴(kuò)展;單遍聚類算法
隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,越來越多的用戶通過互聯(lián)網(wǎng)來發(fā)表自己的觀點、想法、意見和建議,形成網(wǎng)絡(luò)輿情。校園論壇(BBS)作為高校文化建設(shè)的重要組成部分,既是展現(xiàn)校園特有文化的網(wǎng)絡(luò)平臺,也是師生交流的重要平臺。統(tǒng)計發(fā)現(xiàn),越來越多的師生習(xí)慣于在校園論壇上發(fā)表自己對學(xué)校管理的意見和看法。因此,對校園論壇有效監(jiān)控、及時發(fā)現(xiàn)論壇上出現(xiàn)的熱點話題對于掌握師生思想動態(tài)、維護(hù)學(xué)校穩(wěn)定具有非常重要的作用[1]。
校園論壇話題發(fā)現(xiàn)研究引起了國內(nèi)外研究者的廣泛關(guān)注[2],并提出了一系列有效的方法。JXu等人[3]基于馬爾科夫的方法實現(xiàn)了一種在線BBS論壇話題發(fā)現(xiàn)方法,有效監(jiān)測了論壇出現(xiàn)的熱門話題。唐國等人[4]在發(fā)現(xiàn)BBS熱點主題的基礎(chǔ)上,實現(xiàn)了一種層次文本聚類方法。TXu等人[5]實現(xiàn)了基于神經(jīng)網(wǎng)絡(luò)的預(yù)測話題熱度的方法,取來了不錯的效果。蔣凡等人[6]首先建立了回復(fù)鏈,然后抽取具有影響力的詞語,最后通過對這些詞語聚類實現(xiàn)BBS論壇中主題的發(fā)現(xiàn)。趙艷紅等人[7]在給出了用于BBS話題檢測的基本模型的基礎(chǔ)上,實現(xiàn)了基于功率譜的話題檢測方法,并提出了一種基于時間信息進(jìn)行話題預(yù)測的方法[7]。
由于校園論壇中的帖子屬于用戶產(chǎn)生內(nèi)容(User Generated Content,UGC),帖子內(nèi)容長短不一,數(shù)據(jù)稀疏現(xiàn)象比較嚴(yán)重,導(dǎo)致很多與話題相關(guān)的帖子不能及時被檢測到,嚴(yán)重影響了話題發(fā)現(xiàn)系統(tǒng)的性能。為此,本文在給出了論壇熱點話題發(fā)現(xiàn)的基本方法基礎(chǔ)上,針對論壇帖子內(nèi)容的數(shù)據(jù)稀疏現(xiàn)象,提出了基于主題擴(kuò)展的話題發(fā)現(xiàn)方法,并設(shè)計實現(xiàn)了一個用于論壇話題發(fā)現(xiàn)的原型系統(tǒng)。
1.1 面向論壇熱點話題發(fā)現(xiàn)的系統(tǒng)模型
為了能及時發(fā)現(xiàn)論壇上出現(xiàn)的熱點話題,以便對網(wǎng)絡(luò)輿情及時加以控制,本文設(shè)計了如圖1所示的系統(tǒng)模型。本系統(tǒng)首先爬取論壇上的數(shù)據(jù),然后進(jìn)行預(yù)處理操作,并將處理后的數(shù)據(jù)存放在數(shù)據(jù)庫中,最后通過對數(shù)據(jù)進(jìn)行分析得出的BBS中的熱點話題呈現(xiàn)給用戶。

圖1 系統(tǒng)架構(gòu)圖
如圖1所示,系統(tǒng)共包含三個模塊,數(shù)據(jù)獲取及預(yù)處理模塊(M1)、熱點話題發(fā)現(xiàn)模塊(M2)以及校園熱點話題發(fā)現(xiàn)原型系統(tǒng)模塊(M3),各個模塊的主要功能為:
①數(shù)據(jù)獲取及預(yù)處理模塊(M1):師生發(fā)表的帖子是散布在論壇的各個角落,為了實現(xiàn)熱點話題的發(fā)現(xiàn),首先需要將這些散布在各個角落的數(shù)據(jù)匯總在一起。M1模塊主要是通過網(wǎng)絡(luò)爬蟲爬取校園論壇上的數(shù)據(jù),并對數(shù)據(jù)進(jìn)行預(yù)處理,將數(shù)據(jù)存放在數(shù)據(jù)庫中,為后續(xù)熱點話題的發(fā)現(xiàn)奠定數(shù)據(jù)基礎(chǔ)。
②熱點話題發(fā)現(xiàn)模塊(M2):該模塊是系統(tǒng)的核心部分,主要是發(fā)現(xiàn)熱點話題,對話題和帖子表示模型、相似度計算、話題發(fā)現(xiàn)算法、熱度計算方法等內(nèi)容展開分析,同時提出了一種基于主題擴(kuò)展的話題發(fā)現(xiàn)算法。
③校園熱點話題發(fā)現(xiàn)原型系統(tǒng)模塊(M3):本文開發(fā)了一個原型系統(tǒng)用以展示熱點話題發(fā)現(xiàn)的結(jié)果,方便用戶瀏覽。
1.2 熱點話題發(fā)現(xiàn)的基本方法
本文用于論壇話題發(fā)現(xiàn)的流程如圖2所示,從圖中可以看出,熱點話題發(fā)現(xiàn)方法包括話題和帖子模型、話題和帖子相似度計算、熱點發(fā)現(xiàn)算法和熱度計算等多個問題,本節(jié)將從以上幾個方面介紹本文用于熱點話題發(fā)現(xiàn)的基本方法。

圖2 論壇話題發(fā)現(xiàn)流程
1.2.1 帖子和話題表示模型
本文使用向量空間模型表示帖子。假設(shè)P是一個經(jīng)過預(yù)處理的論壇帖子,k1,k2,…kn是出現(xiàn)在P中的不同的詞,那么P可以表示成:P=(k1,w1;k2,w2;…;kn,wn),wi是ki在P中的權(quán)值,TFIDF公式計算得到,其中,tfi是ki在P中的詞頻,N是系統(tǒng)已經(jīng)檢測過的帖子的數(shù)量,ni是檢測過的所有帖子中包含關(guān)鍵詞ki的帖子的個數(shù)。

話題采用中心向量模型表示。假設(shè)T是一個話題,P1,P2,…Pm是屬于這個話題的帖子,則T的建模過程如下:根據(jù)文檔頻次DF從m個帖子中選擇代表這個話題的特征項,假設(shè)抽取的特征項為δ1,δ2,…,δb,然后根據(jù)公式(1)計算每個特征項在每個帖子中的權(quán)值,最后通過“簡單平均”的方式計算特征項最終的權(quán)值。
1.2.2 話題和帖子相似度計算方法
在本文實現(xiàn)的校園論壇話題發(fā)現(xiàn)系統(tǒng)中,采用余弦函數(shù)計算話題和帖子之間的相似度。假設(shè)P=(wp1,wp2,…,wpb)、T=(wt1,wt2,…,wtb)分別表示帖子P和話題T的向量,那么P和T基于余弦函數(shù)的相似度如下所示:

其中,b是話題向量空間模型的維度,而wpi和wti分別表示特征項在帖子和話題模型中對應(yīng)的權(quán)值。
1.2.3 基于單遍聚類算法的話題發(fā)現(xiàn)方法
本文基于單遍聚類算法實現(xiàn)話題發(fā)現(xiàn),假設(shè)待檢測的帖子集合為{ } P1,P2,P3,…Pa,單遍聚類算法的過程如下:

網(wǎng)絡(luò)論壇中的帖子長度不一,屬于一種異構(gòu)文本。對于某些比較短的帖子,其中含有的內(nèi)容非常少,簡單依據(jù)這種帖子的內(nèi)容進(jìn)行相似度計算,會導(dǎo)致很多帖子不能被檢測到,使得系統(tǒng)的漏報率很高。通過瀏覽論壇帖子我們發(fā)現(xiàn),當(dāng)一個用戶發(fā)表了一個帖子之后,其他用戶會對這個帖子進(jìn)行回復(fù),而回復(fù)的內(nèi)容是圍繞帖子展開的。為此,本文提出了基于主題擴(kuò)展的話題發(fā)現(xiàn)方法,其基本思想如下:
①假設(shè)R1,R2,…Rc是對帖子P的回復(fù),那么我們將執(zhí)行P→{ } P+R1+R2-…+Rc操作,其中→代表內(nèi)容擴(kuò)充,+表示將內(nèi)容進(jìn)行拼接,拼接后的內(nèi)容記為P1。
②將P1表示為向量空間模型,其中特征項是P1中出現(xiàn)的不同詞,而權(quán)值采用公式(1)計算。
③采用單遍聚類算法實現(xiàn)話題發(fā)現(xiàn),具體過程見1.2節(jié)。
為了驗證本文話題發(fā)現(xiàn)方法的有效性,我們設(shè)計并實現(xiàn)了一個熱點話題發(fā)現(xiàn)原型系統(tǒng)。該系統(tǒng)選取海天一色論壇(http://www.htys.cc/)作為話題監(jiān)測的平臺。整個系統(tǒng)分為4個模塊(見圖3)。

圖3 論壇話題發(fā)現(xiàn)原型系統(tǒng)框架
①論壇數(shù)據(jù)獲取模塊:通過網(wǎng)絡(luò)爬蟲獲取“海天一色”校園話題板塊中的帖子,并抽取帖子元數(shù)據(jù),包括帖子發(fā)表時間、發(fā)表者、內(nèi)容、回復(fù)信息等,并且封裝成合適的格式以便進(jìn)行存儲和其他處理。
②論壇數(shù)據(jù)存取模塊:將封裝好的校園話題數(shù)據(jù)存儲到相應(yīng)的數(shù)據(jù)庫中。實現(xiàn)過程中我們采用了比較精簡的SQLite3數(shù)據(jù)庫,共建立了5個表用來存放相應(yīng)的數(shù)據(jù)。
③論壇數(shù)據(jù)發(fā)現(xiàn)模塊:該模塊主要是后臺運行,從已經(jīng)獲取的數(shù)據(jù)中依據(jù)話題檢測方法實現(xiàn)論壇話題發(fā)現(xiàn)。
④前臺顯示界面:該模塊主要實現(xiàn)對已經(jīng)發(fā)現(xiàn)話題的可視化,方便用戶查看。
4.1 語料及評測標(biāo)準(zhǔn)
為了驗證本文提出方法的有效性,從論壇上收集了6850條帖子,并對帖子所描述的話題進(jìn)行了人工標(biāo)記,共標(biāo)記13個話題。實驗中,隨機抽取了4800個帖子及其話題標(biāo)注作為訓(xùn)練語料,其余作為測試語料。
實驗采用漏報率、誤報率和歸一化檢測開銷作為評價標(biāo)準(zhǔn)。如果用表1數(shù)據(jù)表示微博話題檢測中第i個話題的檢測結(jié)果,那么第i個話題的漏報率Miss(i)和誤報率Fallout(i)將分別用公式(3)和公式(4)定義:

表1 參數(shù)定義

系統(tǒng)的平均漏報率Pmiss和平均誤報率Pfallout及歸一化檢測開銷(CDet)Norm可以分別由公式(5)、(6)、(7)定義:

其中,CMiss表示話題發(fā)現(xiàn)系統(tǒng)漏報一個帖子的開銷,Cfallout表示話題發(fā)現(xiàn)系統(tǒng)誤報一個帖子的開銷,Pnon-target=1-Ptarget。在話題檢測與跟蹤研究中,CMiss、Cfallout及Ptarget通常取值1.0,0.1,0.02。顯然,歸一化檢測開銷越小表示話題檢測系統(tǒng)的性能越好。
4.2 實驗與結(jié)果分析
為了驗證本文實現(xiàn)的話題發(fā)現(xiàn)方法的有效性,我們設(shè)計了以下兩組實驗:
①在訓(xùn)練語料中訓(xùn)練了原型系統(tǒng),在θ取不同值時進(jìn)行了訓(xùn)練,結(jié)果如表2所示。

表2 訓(xùn)練結(jié)果
通過分析表2所示結(jié)果,可以看出當(dāng)θ取0.20時系統(tǒng)的效果最好,所以后續(xù)所有的實驗都是在θ=0.20設(shè)定下進(jìn)行。
②為了驗證提出的基于主題擴(kuò)展的話題發(fā)現(xiàn)方法的有效性,在測試語料中對比了話題發(fā)現(xiàn)基本方法與基于主題擴(kuò)展話題發(fā)現(xiàn)方法的性能,結(jié)果如表3所示。

表3 測試結(jié)果
圖4給出了以上兩種方法在13個話題上的性能表現(xiàn)。
通過分析表3的測試結(jié)果和圖4的對比圖,可以發(fā)現(xiàn)基于主題擴(kuò)展的話題發(fā)現(xiàn)方法可以較好地降低歸一化檢測開銷,證明主題擴(kuò)展的方法可以有效解決論壇數(shù)據(jù)的稀疏性問題,進(jìn)而改善話題發(fā)現(xiàn)系統(tǒng)的整體性能。
4.3 熱點話題發(fā)現(xiàn)原型系統(tǒng)運行結(jié)果
為了進(jìn)一步證明本文提出方法的有效性,我們設(shè)計并開發(fā)了原型系統(tǒng),系統(tǒng)首先進(jìn)行數(shù)據(jù)抓取,然后以XML或者SQLite格式文件進(jìn)行存儲,接著在后臺進(jìn)行話題發(fā)現(xiàn),最后將結(jié)果呈現(xiàn)給用戶。圖5給出了系統(tǒng)發(fā)現(xiàn)的熱點話題。

圖4 系統(tǒng)結(jié)果對比圖

圖5 熱點話題發(fā)現(xiàn)結(jié)果展示
本文主要面向校園論壇的熱點話題方法,在給出了用于話題發(fā)現(xiàn)的基本方法的基礎(chǔ)上,提出了用以解決論壇文本數(shù)據(jù)稀疏性的基于主題擴(kuò)展的論壇話題發(fā)現(xiàn)方法,最后設(shè)計并實現(xiàn)了一個原型系統(tǒng)。實驗結(jié)果表明,本文提出的方法和系統(tǒng)能有效監(jiān)控BBS上出現(xiàn)的熱點話題。后續(xù)將進(jìn)一步面向異構(gòu)論壇異構(gòu)文本的帖子和話題表示模型進(jìn)行深入研究,并對話題發(fā)現(xiàn)的速度進(jìn)一步進(jìn)行提升,更好地改善話題發(fā)現(xiàn)系統(tǒng)的性能。
[1]曹麗娜,唐錫晉.基于主題模型的BBS話題演化趨勢分析[J].管理科學(xué)學(xué)報,2014,17(11):109-121.
[2]劉驊,朱慶華.基于標(biāo)題的BBS熱點話題挖掘—以南京大學(xué)小百合BBS為例[J].現(xiàn)代情報,2013,33(1):162-165.
[3]JXu,H Li,Y Zhao,BHe.Online High-Quality Topic Detection for Bulletin Board Systems[J].Ieice Transactions on Information &Systems,2014,97(2):255-265.
[4]唐果,陳宏剛.基于BBS熱點主題發(fā)現(xiàn)的文本聚類方法[J].計算機工程.2010,36(7):79-81.
[5]T Xu,M Xu,H Ding.BBSTopic's Hotness Forecast Based on Back-Propagation Neural Network[J].International Conference on Web Information Systems&Mining,2010(1):57-61.
[6]蔣凡,高俊波,張敏,王煦法.BBS中主題發(fā)現(xiàn)原型系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與應(yīng)用,2005,31:151-153.
[7]趙艷紅,聶哲.基于內(nèi)容分析的中文BBS話題檢測系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2011,28(6):242-246.
Hot topic detectingmethod and system ofCampus BBSbased on themeexpansion
Wang Xue-he
(Division ofComputer Science,HezeMedicalCollege,Heze 274030,Shandong)
The basicmethod ofbulletin board hot topic findingwasgiven based on the realization of topic detection and a topic findingmethod was proposed based on topic extension in connection with the high rate of false negatives caused by the sparsity of bulletin board text.Finally a primitive type system of BBS hot topic finding was designed and realized.The experimental results showed that themethod and the system proposed can effectivelymonitor thehot topicsappeared in BBS.
topic detection;BBS;topic expansion;single-pass clustering
10.16249/j.cnki.54-1034/c.2016.02.018
TP391.1
A
1005-5738(2016)02-110-007
[責(zé)任編輯:張建偉]
2016-07-13
王學(xué)賀,男,漢族,山東鄆城人,菏澤醫(yī)學(xué)專科學(xué)校計算機教研室副教授,主要研究方向為計算機軟件與理論。