?

基于重點博文的突發事件檢測方法

2020-02-18 15:19李東昊楊文忠仲麗君張志豪王雪穎
計算機工程與應用 2020年4期
關鍵詞:博文突發事件聚類

李東昊,楊文忠,仲麗君,張志豪,王雪穎

新疆大學 信息科學與工程學院,烏魯木齊830046

1 引言

隨著移動終端和移動互聯網的迅速發展,人們不再受時間地域的限制,可以方便快捷地接入互聯網,隨時隨地地獲取信息、表達情感。社交網絡中每天都會產生大量的數據信息,這使得利用網絡數據進行事件分析成為熱點。例如2017年11月的紅黃藍幼兒園事件、2018年7月長生疫苗事件等,很多事件通過網絡首先被爆料出來,然后才吸引主流媒體關注并報道。在這段時期,公眾易受不良信息的影響,會對某些社會問題或事件產生強烈的主觀情感并通過發表微博、點贊、轉發、評論等社交行為表達出來,帶有負面情感的信息在社交群體中相互傳播、相互作用,從而導致新一輪輿情爆發,這種非常態的網絡輿情通過負面情緒的擴散,會隨著時間的推移逐漸演變成一種特殊的社會壓力。突發事件具有突發性、導向性,如果不加以監管,其引發的輿論信息會隨著互聯網四處傳播,不僅會污染網絡環境,還會造成社會恐慌,影響社會穩定。文獻[1]發現當突發事件發生后,社交網絡上的討論總是爆發在傳統新聞媒體的報道之前,這為社交網絡下突發事件檢測打下了基礎,許多學者展開了基于社交網絡的事件檢測研究。

由于微博事件發展變化迅速,表現形式復雜,從海量實時的微博數據流中檢測突發事件仍然是事件檢測領域中具有挑戰性的問題?;谕话l事件檢測的研究已經廣泛應用在結構化的文本上,如新聞數據、博客帖子、文章報道等[2]。微博信息具有用戶情感傾向,與結構化語言不同,微博文本長短不一,口語化嚴重,同時混合多種信息,包括不同語言、符號圖片等,這給基于微博的突發事件檢測帶來了極大的困難。

2 研究現狀

目前社交網絡中突發事件檢測方法總體上分為三大類:(1)通過計算時間間隔內的社交網絡用戶發布內容的相似性進行聚類,從而進行突發事件檢測,如文獻[1,3-4]。(2)通過計算從社交網絡數據中獲得的具有突發特征的詞,統計突發詞的共現度,進行突發事件的檢測,如文獻[5-7]。(3)引入情感分析技術,利用時間窗口間的差異性進行事件檢測,通過判斷兩個時間間隔內的特征變化(情感傾向、情感符號)進行突發事件檢測。如文獻[8]根據相鄰時間窗口內情感符號的態勢變化進行突發事件檢測。文獻[9]計算兩個相鄰時間窗口內情感的相對熵進行事件檢測。文獻[2]將獲取的Twitter數據經過情感分析后,通過擬合的指數分布模型計算日本地震發生的概率。文獻[10]考慮到事件空間、時間或主題信息的區別,提出一種基于事件的演化(考慮事件增長)進行檢測的方法,通過事件演化特征可以識別出不同的Twitter事件集群,應用在75個品牌Twitter銷售數據中,并嘗試預測銷售中出現的事件,得出帶有情緒的博文能夠提高對銷售事件預測的準確率。文獻[11]結合微博內容和社交關系提出一種基于用戶興趣的微博話題檢測模型,實驗證明能夠有效檢測出突發事件。

突發事件檢測方法建立在對實時獲取的數據流進行分析的基礎上,實時獲取全局的微博數據流難度較大,而且在海量的社交網絡數據中存在許多噪聲數據,這會降低事件檢測的準確性與時效性。鑒于此,許多專家學者采用限定地域的方式精簡數據集,再進行事件檢測。

文獻[5]首先對地域進行劃分,然后結合詞頻、關聯用戶、博文、社交行為等特征進行突發事件檢測,提高了檢測的準確率。但是,基于地理位置的博文數量較少,同時突發事件除了會引起當地人的廣泛討論,還會借助社交網絡的影響力,迅速蔓延,引發全網的討論?;诘赜虻姆椒ㄍㄟ^地理位置過濾掉噪聲信息,單一地根據事件發生地域的社交網絡信息進行突發事件檢測,縮小了數據集,減少了計算量,但忽略了在突發事件檢測中至關重要卻又不包含地理位置的信息。

文獻[6]提出了一種核心詞加從屬詞的方法對微博突發事件進行檢測。收集2012年7月到11月的30萬條微博數據作為實驗數據集,用核心詞與從屬詞表示微博,通過LDA(Latent Dirichlet Allocation)提取主題特征,采用凝聚的層次聚類方式檢測突發事件。在實時事件的檢測上表現出了較好的性能,但是對于檢測到的事件,需要借助搜索引擎以突發詞檢索相關報道的方式,對事件進行分析與描述,降低了時效性。

文獻[12]提出GeoBurst方法進行突發事件檢測,對內容完整、語法明確的博文,通過TFIDF權重計算出突發詞,采用隨機游走的方式進行相似度檢測,對于滿足閾值條件的博文,根據地域條件和語義條件進行聚類,得到候選事件集,將與突發詞聯系密切的博文作為描述事件的背景知識,對聚類得到的地域事件簇進行事件描述。實驗表明該方法在時間與空間利用度上均有較好的效果。通過博文輔助突發詞進行事件的描述,增加了事件檢測的準確性與可描述性,但是通過突發詞確定描述突發事件的博文需要人工選擇。

研究地域事件所能使用的數據較少,帶有地理標記的微博數據僅占總數據量的2%[6],擴充數據集的方式也僅僅是通過微博內容的地域關鍵字進行地域微博數據集的擴充。與局部地域事件檢測不同,突發事件由于其顯著的影響力能夠在短時間內通過社交網絡擴散開來,與地域無關的引發公眾關注并廣泛參與討論的突發事件的相關微博數能夠在短期井噴,并隨著事件的發展變化,數量發生進一步的變化。因此直接應用傳統的限定地域的事件檢測方法具有局限性,準確率與召回率較低,同時還要考慮如何過濾日常發生的事件。

針對社交網絡的突發事件檢測研究,與傳統事件檢測相比存在以下問題:

(1)突發事件的判定沒有統一標準。無論是通過基于突發事件特征的突發詞聚類,還是基于內容相似度的博文聚類,在從潛在的事件集中挖掘突發事件時,均采用人工判斷的方式進行突發事件的檢測,沒有對事件的突發性進行定量分析。

(2)無法兼顧全局事件和局部事件。局部突發事件受有效數據較少的影響,容易被大量噪聲數據淹沒;全局突發事件檢測,從海量數據中檢測事件發生與否,受到數據采集困難的限制,無法獲得全面實時的海量數據。

現有的突發事件檢測研究中均沒有考慮過博文影響力對突發事件的貢獻度,在處理時間間隔內的微博數據時,僅通過計算詞頻的變化來反映突發事件的爆發特性,存在噪聲數據的干擾,具有偶然性,導致事件檢測的效果不夠理想。因此,本文在分析社交網絡中突發事件特點的基礎上,以微博突發事件數據集的構建為核心,提出了一種基于重點微博識別的突發事件檢測方法。通過計算詞的突發度,展開了基于突發詞與相關博文相結合的突發事件檢測的研究,通過關聯重點微博數據與突發詞判斷潛在事件的突發性,最后從準確率、召回率、時效性三方面進行方法的有效性分析。

3 突發事件檢測框架

由于突發事件具有突發性、隨機性的特點,單一的特征無法準確地檢測出突發事件,因此針對社交網絡中突發事件的檢測目前常采用多特征融合的方法,從多個角度出發,描述、檢測社交網絡突發事件。

本文提出考慮博文影響力的突發事件檢測方法(Key Burst Database,KBD),目的在于通過重點微博信息,挖掘突發詞,構建潛在突發事件集,進行突發事件檢測。為此,著重解決以下幾個問題:

(1)重點微博的判斷以及如何從海量數據中獲取重點微博。

(2)如何在時間間隔內獲得突發詞。

(3)如何通過突發詞構建突發事件數據集。

下面結合本文提出的突發事件檢測框架進行說明。

不同的用戶表達自己看法的方式不同,用戶對于事件的看法,可以通過發布帶有主觀情感的原創內容,以及對相關事件的微博進行評論、點贊、轉發等一系列的社交行為表現出來。根據微博信息傳播的特性[13],不同微博對事件的影響力不同,因此事件檢測,首先要識別出一些重要的博文,將其作為中心軸點。如用戶媒體發布的第一條相關事件的爆料微博,這種具有爆炸性信息的微博,一經出現能夠迅速吸引大量用戶的關注,從而引發全網討論。因此,本文認為重點微博的檢測是突發事件檢測的基礎。根據獲得的重點微博數據,提取突發詞,利用突發詞,采用關鍵詞搜索的方式從海量數據集中構建出潛在突發事件微博數據集。將突發事件檢測的重點放在構建高質量的潛在突發事件數據集上,不僅能夠減少噪音數據的干擾,同時還能降低數據量,提高檢測效率。本文將突發事件檢測系統分為7個模塊,突發事件檢測系統框架如圖1所示。

圖1 突發事件檢測系統框架

3.1 數據獲取

本文以新浪微博數據為研究對象。由于新浪上線了新版的個人保護政策,導致通過使用申請開發者權限調用API的采集方式,無法獲得實時數據。采集到的信息數量及質量不能夠支撐突發事件的檢測,因此本文采用網絡爬蟲的方式,通過構造訪問請求,解析網頁信息來獲得本文的實驗數據。數據包括微博用戶信息、微博內容、微博發布時間、轉發數、評論數、點贊數。

3.2 數據預處理

由于新浪微博的更新,用戶發布的微博內容長度不再限于140字以內,使得新浪微博可以發布的內容更加豐富,包括圖像、鏈接、表情、符號在內的信息會干擾到下一步的計算,因此需要對數據進行預處理操作。處理流程如下:

(1)過濾內容中的url、表情、圖片、符號。

(2)過濾掉長度低于4個字的微博,太短的微博無法表達事件信息。

(3)對過濾后的數據分詞,去停用詞。

3.3 重點微博識別

微博用戶在社交網絡中談論突發事件的同時,還會提及他們的日常生活和個人興趣。為了提高從微博數據流中檢測突發事件的準確率,過濾掉這些“私人”博文是非常有必要的。利用熱點微博傳播的特性[14],本文提出的重點微博計算模型如圖2所示。

圖2 重點微博計算模型

本文提出的重點微博計算模型充分考慮了社交網絡中信息傳播的各種特征,一條重點微博由四部分組成。當爆料信息剛剛出現,轉發、點贊、評論數較小時,考慮用戶影響力能夠使重要信息不會被遺漏。同時,假設某個用戶在某一時刻發布的微博,在一定時間內被閱讀的次數可以通過點贊數、轉發數、評論數等價代替,因此將點贊數、轉發數、評論數作為衡量信息傳播能力的指標。在綜合考慮上述四個特征的基礎上,通過計算得到重點微博。四種指標的計算方法如下:

用戶影響力:用戶影響力Ui是指發布微博的用戶在社交網絡中的身份,不同的用戶具有不同的粉絲數、關注數、發布微博數等信息,通過對這些信息的計算,能夠對其發布信息的重要性進行初步篩選。

其中,Nfee指用戶的關注數,Nfed指用戶的粉絲數,Npost指用戶發表的微博數。Ui越大說明該用戶發表的微博產生的影響力越大,其發表的該條微博wi越重要。

點贊數:Sup(wi)代表微博wi獲得的點贊數,可以直接從微博wi中獲取。Sup(wi)直接反映了其他用戶對微博wi的認可程度,其值越大表示人們的關注度越大。

評論數:Com(wi)表示微博wi獲得的評論數,可以直接從微博中獲取。Com(wi)反映了其他用戶對微博wi的觀點,其值越大表明該條微博的熱度就越高。

轉發數:Rep(wi)是微博wi被轉發的次數,可以直接從微博中獲取。Rep(wi)越大表明該微博的傳播影響力越大。

基于一般性討論提出假設:

如果用戶影響力較小,但是其發布的微博能夠在短時間內引發大量的用戶評論、點贊、轉發,認為這是一條重點微博。

如果用戶影響力大,且在一定時間內引發了大量的討論,認為屬于重點微博。

如果用戶影響力大,但是在一定時間內沒有引發大量用戶評論、點贊、轉發等社交行為,認為屬于重點微博。

如果用戶影響力小,且在一定時間內沒有引起大量用戶評論、點贊、轉發等社交行為,認為不屬于重點微博。

注:一定時間指微博發布到采集的這段時間間隔。

表1使用的數據是人工抽取的來自微博8月27日的300條重點微博。通過計算用戶影響力、評論數、點贊數、轉發數之間的關聯關系,對影響微博重要程度的特征進行分析。

如表1所示,在突發事件中微博重要程度的計算上,微博的評論數與點贊數呈現出中等強度相關,評論數與轉發數呈現出強相關,點贊數與轉發數呈現出極強相關。而用戶影響力與點贊數、評論數、轉發數呈現出弱相關或極弱相關。這種現象符合突發事件的特征,微博信息傳播擴散的方式具有不確定性、突發性[15]。社交網絡中突發事件的引爆點與用戶的相關性很小,相關微博的出現,通過網絡擴散開,引發廣泛討論,從而形成社會輿論。整個過程中用戶的影響力對其產生的突發性影響較小。在突發事件中,網民關注的焦點都集中在事件上,而不會集中注意力去關注發布微博的用戶,網民受突發事件的影響,或產生共鳴引發群眾發泄自己的情感,表現形式多為點贊或轉發該微博;或產生對未來的擔憂引發群眾對未來事件發展趨勢的相關評價,表現形式多為網民對該事件主觀的評論。由于突發事件的社會影響力大,微博用戶會更加主動地了解事件的詳情,為了全面地了解事態的嚴重性,用戶會不斷通過查閱微博內容來了解突發事件相關的信息,并時刻關注事件的進展。因此與表1反映出的信息一致,驗證了假設的有效性。用戶在突發事件中關注的焦點是事件自身的信息,在深入了解事件的過程中會以點贊、轉發、發布評論等形式表現出來。通過相關性分析,驗證了用戶影響力、點贊數、評論數、轉發數四方面特征間的聯系,證實了不同特征對微博重要性的影響力不同,不能一概而論。這里提出重點微博的計算方法:

其中,α、β、γ、δ是調節系數,用于調節Rep(wi)、Com(wi)、Sup(wi)、Ui四類特征的權重,α+β+γ+δ=1,α≥0,β≥0,γ≥0,δ≥0。Key(wi)為微博wi的重要度,其值越大,說明wi越重要,其內容更有說服力。因此重點微博計算模型的準確性,取決于Key(wi)的閾值θ。調節參數α、β、γ、δ的確定以及閾值θ的計算在實驗部分給出(詳見第4.2節)。

算法1重點博文識別算法

輸入:帶有社交行為與用戶信息的微博wi。

輸出:時間間隔t內的重點博文集Dt。

(1)計算用戶影響力Ui;

(2)統計Com(wi)、Sup(wi)、Rep(wi);

(3)計算微博wi的重點度Key(wi);

(4)將重點度大于閾值θ的微博wi加入到重點博文集Dt。

應用算法1通過計算構建出時間間隔t內的重點微博數據集,能夠過濾掉一些噪聲數據,提高突發詞計算的準確性。

3.4 提取突發詞

首先將重點微博中無法表達實際意義的動詞去掉,如“過去”“做”“發現”等,然后判斷剩下的詞語是否為突發詞。計算方法如下[1]:

表1 突發事件中微博重要程度相關性分析

這里,Bt(tw)表示在時間間隔t中詞tw的爆發度,它反映了該詞在時間間隔t內的變化量;ft(tw)表示詞tw在時間間隔t中出現的頻率;ut(tw)表示在時間間隔t中詞tw出現的平均次數。文獻[1]在計算詞對突發事件的影響程度時,將權重分為兩部分,基礎權重(詞頻)與爆發權重(Bt(tw)),通過組合分析得出突發詞。式(3)在計算突發詞時沒有考慮到突發事件的爆發特性,即在突發事件發生時,事件相關信息迅速擴散,會吸引大量用戶關注并參與討論,因此會產生大量與突發事件相關的微博,用于描述突發事件的單詞頻率就會快速上升,而在突發事件產生前,與描述突發事件相關的詞出現的頻率不高。鑒于這一點,本文得出結論:單詞出現的歷史數據會影響突發事件檢測效果。

因此,本文在計算突發詞時,將歷史數據考慮在內,在文獻[5]的基礎上,提出了一種利用歷史數據計算基礎權重的方法:其中,為時間間隔數,越大,表明在當前時間間隔內詞tw更有可能成為突發詞,分母引入歷史數據的標準差,能夠更加準確地識別出在過去時間間隔內變化平穩,而在當前時間間隔內突發性強的詞。

如果考慮太久的歷史數據,不僅會加大計算量,還會產生未知的負面影響,因此這里僅考慮將前一個時間間隔的數據作為歷史數據,式(4)可簡寫為:

將基礎權重Ft(tw)與爆發權重Bt(tw)線性結合起來,計算詞tw的突發度Et(tw)。

考慮到博文間影響力的差異,在利用歷史博文數據的基礎上,詞突發度的計算如算法2所示。

算法2詞突發度計算算法

輸入:使用算法1得到的重點博文集Dt。

輸出:詞tw的突發度Et(tw)。

(1)計算詞tw的爆發度Bt(tw);

(2)計算詞tw的基礎權重Ft(tw);

(3)聯合Bt(tw)與Ft(tw)計算詞tw的突發度Et(tw)。

將每個詞tw按照突發度Et(tw)排序,得到候選突發詞集kw,利用四分差法確定突發度出現的閾值,大于閾值的詞作為突發詞。閾值計算方式如下[16]:

其中,Q1為第一個四分位數,Q3是第三個四分位數,IQS(kw)是四分差的距離,其計算公式如下:

由公式可知,閾值過小將導致突發詞數量過多,不僅會增加計算成本,還會增加時間開銷;閾值過大會導致突發詞較少,一些重要的突發詞可能會被遺漏,使得構造出的突發事件數據集不夠全面。由于四分位數的間距不受個別極大值或極小值的影響,因此采用突發詞集中突發度的四分位距離作為閾值的判斷標準[16],可以穩定地描述數據的離散程度。本文以一天作為時間間隔,從數據庫中抽取8月27日的數據進行實驗,同時將8月26日的數據作為歷史數據,共計實驗數據12 345條。采用本文提出的重點微博發現方法獲得共計300條重點微博,進行預處理后得到2925個詞,采用提出的突發詞提取方法,得到597個突發詞,由式(7)計算出Threshold為4,最終得到突發詞數為60個。采用的實驗設備:操作系統為Win8,處理器為Intel Core i5 3230M,內存8 GB,CPU為2.5 GHz。計算突發詞耗時約1 min,在時間成本上是可接受的。如果選擇性能更高的服務器,在海量微博數據流中計算突發詞在時間成本上也是可行的。

3.5 構建突發事件集

社交網絡中的用戶數量龐大,每天產生的數據量非常多,同時數據中存在大量噪音數據。針對突發事件的檢測需要細化分析,因此高質量的事件數據集是事件檢測準確率的重要保障。本文以重點微博為基礎,將計算出的突發詞集作為關鍵詞,從爬取的微博數據集中通過關鍵詞匹配的方式檢索相關微博,構造潛在突發事件數據集??紤]到數據量大,數據類型繁多,非結構化數據庫憑借處理并發性高、查詢速度快、存儲格式多等優勢,已經廣泛應用在數據挖掘領域。因此本文采用非關系型數據庫MongoDB進行數據的存儲與查詢。

3.6 數據聚類

在突發事件檢測中,常用的聚類思路有兩種:一種是利用突發詞進行聚類,利用歷史數據和當前時間窗口內的數據提取多維度特征(用戶數、微博數、詞頻等)計算突發詞,構建突發詞集共現矩陣,并將其作為聚類輸入,用得到的突發詞簇來進行突發事件檢測。另一種是利用當前時間窗口內的數據通過微博文本相似度直接聚類,從聚類的簇中提取突發事件的特征進行事件檢測。

由于微博取消了博文字數的限制,長度不再局限于140個字符,越來越多的用戶開始利用微博來描述自己的所見所聞,因而微博內容中含有更豐富的與事件相關的潛在信息。在以突發詞為聚類輸入的突發事件檢測方法中,突發詞的數量難以確定,太少會造成信息丟失,太多會產生歧義;同時,從文本中提取突發詞信息,根據突發詞集進行聚類,不能夠全面地描述事件特征,無法進行深入的事件分析。以文本作為聚類輸入的事件檢測方法,存在噪聲數據的干擾,同時會消耗大量計算資源,提取到的特征與數據集的質量密切相關,無法保證事件檢測的準確性。

本文提出的KBD方法,融合了上述兩種方式的優點,首先從初始數據集中提取重要微博,計算得到突發詞,然后通過關鍵詞檢索的方式過濾初始數據集,得到事件相關數據集,最后利用K-Means聚類算法對文本進行聚類,進而提取特征,進行突發事件檢測。通過突發詞進行過濾的方法提高了數據集與事件的相關性,同時采用文本作為聚類輸入的方式則保留了更多的事件信息,能夠全面地提取到事件的特征,提高事件檢測的準確性。

3.7 突發事件描述

與大多數專家學者將聚類結果與瀏覽器搜索網頁相結合的描述方式不同,本文認為對事件描述的準確與否對判斷該事件是否為突發事件起著至關重要的作用,且重點微博中包含大量事件相關信息,因此本文采用與類簇中的關鍵詞相關性最強的重點微博進行事件描述,克服了結合人工描述事件的主觀性因素。相應的驗證由4.3節表6給出。

4 實驗及分析

4.1 實驗數據及評測指標

本文使用的數據集來自新浪微博,通過模擬微博登錄來爬取微博數據,以具有代表性的微博用戶ID為起點,采集數據并存入數據庫,獲取粉絲與關注列表用戶的ID,遞歸執行,即可獲得大量微博數據。獲得的數據存在大量冗余信息,這里可以根據新浪用戶ID與發布時間去重過濾,然后根據發布時間排序,得到帶有時間序列的微博數據集。語料采集時間為2018年8月24日至2018年8月28日,共40 842條微博,統一格式存儲在MongoDB中,微博的存儲格式如下:

{

"_id":ObjectId("5b83a8b4ff7a7d40fc7d9cbf"),

"id":"4277391314945737",

"follow":"528",

"fans":"3380000",

"pubnum":"1230",

"attitudes":57413,

"time":"2018-08-26 22:31",

"text":"#延禧攻略#劇終人不散,感恩大家",

"comments":8018,

"reposts":3402

}

其中_id是MongoDB中的鍵值,每個文檔都有唯一的"_id"值,來確保集合中每個文檔都能被唯一標識,id是新浪微博用戶的唯一用戶編號,follow是用戶的關注數,fans是用戶的粉絲數,pubnum是用戶發布的微博總數,attitudes是該條微博的點贊數,time是該條微博的發表時間,text是該條微博的內容,comments是該條微博的評論數,reposts是該條微博的轉發數。

目前,突發事件檢測依舊屬于開放性問題,無論是限定地域還是限定類型的突發事件檢測方法,因為沒有統一規范的數據集,所以評測標準不定。研究者們評價方法時選取的數據集都是來自真實的社交網絡,如twitter、新浪微博等,在限定突發事件產生的時間間隔內,進行事件檢測性能的評價,從而比較各個方法的優劣。表2列出了近年來部分事件檢測所采用的數據集及評價指標。

由表2可知,不同學者評價檢測效果采用的方法受時間間隔、數據量大小等特征影響,選擇的評測標準不同。因此,參考主流的評測方法,本文選用準確率、召回率、運行時間作為突發事件檢測的評價指標。

表2 部分文獻檢測的突發事件以及評價標準

表3 重點微博的調節參數取值

這里P表示正確檢測到的突發事件數量,S表示檢測到的總事件數,T表示人工判斷得到的真實突發事件數。

4.2 實驗設置

實驗所采用的方法為KDB,通過重點微博挖掘突發詞來構建突發事件數據集,從而進行突發事件的檢測。本文將人工挑選的1 000條重點微博與隨機抽取的普通微博數據作為訓練集,對重點微博計算模型進行訓練,計算出模型的調節參數α、β、γ、δ以及重點度閾值θ。綜合考慮每個特征的重要程度,采用人工干預的方式調節參數的取值,進行了17組實驗,其中將每個參數可取的權重值分別設為[0,0.25,0.3,0.4,0.6,0.7,1.0]。

區分度=重點微博重點度均值-普通微博重點度均值。本文根據區分度進行調節參數的選擇。由表3可知,將調節參數α、β、γ、δ分別設置為0、0、1、0時重點微博的重點度均值與普通微博重點度均值有明顯的差距,區分度為12.95,重點微博的重點度最小值(9.78)大于普通微博重點度(7.90)。但是這樣的參數設置,刻意強調了點贊的影響力,并沒有考慮到社交媒體用戶的多樣性以及微博內容的靈活性,不能全面地描述微博的重要性,因此不予考慮。當調節參數α、β、γ、δ分別設置為0.1、0.1、0.7、0.1時,能夠取得較大的區分度(11.60),并且重點微博重點度均值(8.76)大于普通微博重點度(7.29)。分析原因發現,這樣的參數設置與3.3節表1的重點微博相關性分析結果一致,點贊數對重點微博的貢獻度最大。因此針對本文的微博數據集,通過實驗調節參數分別設置為α=0.1、β=0.1、γ=0.7、δ=0.1,重點度閾值θ=8.76。

4.3 實驗結果分析

本文設定時間間隔為一天,設定K-Means聚類算法的最大迭代次數max_iter=300,獲取初始簇中心的更迭次數n_init=40,初始簇中心的獲取方法init='kmeans++',最大聚類數k=9,以詞向量表示的文本空間相似度為特征進行聚類,構成最終事件集合,閾值及參數設置見4.2節。

為了驗證本文提出的KBD方法的有效性,設定通過時間間隔內的數據計算博文突發特征,利用博文進行事件檢測的方法作為基線方法[4],并與BBW(Basic-Burst Weight)[1]在準確率、召回率、運行時間三方面進行了對比。BBW是2015年Zhang等人在改進TFIDF的基礎上提出的突發事件檢測方法,針對Twitter數據流,抽取時間窗口中的突發詞,并根據獲得的突發詞共現度進行層次聚類,從而檢測突發事件。設置層次聚類閾值θ=1.2,時間間隔為1天,能取得較好實驗效果。在8月27日檢測數據集上的實驗結果見表4。

表4 算法性能比較

由表4可以看出,本文提出的KBD方法,綜合了利用博文與基于突發詞事件檢測的優點,在保證事件檢測準確率、召回率的同時優化了檢測時間,與基線方法和BBW方法相比在準確率與召回率上均有顯著提高。在運行時間上,與基線方法相比因為縮減了數據集,所以提高了事件檢測的效率。與BBW相比增加了運行時間,原因在于KBD方法存在計算重點微博以及構建潛在突發事件集的步驟,雖然會增加一定的運行時間,但是時間增長量在可接受的范圍內。將聚類得到的事件簇,根據關鍵詞排名降序取出前5個關鍵詞對聚類結果的描述,事件檢測結果見表5。

基線方法聚類得到的事件結果如表5所示,第一個話題是“延禧攻略”,第二個是“順風車女孩遇害”,第三個屬于日常生活相關的話題。從結果上看,基線方法檢測的效果較差,主要是由于時間間隔內的數據量大,包含過多噪聲數據(如廣告與飲食旅游推薦等信息),這些無關的博文增加了數據的維度,不僅會影響聚類結果的準確性,還會增加計算成本。

BBW方法并不直接對文本進行處理,而是根據其定義的突發詞計算方法,從實驗數據集中計算出代表突發事件的突發詞集,再根據突發詞在數據集中的共現次數,構建出共現矩陣,將其作為特征進行聚類從而進行突發事件的檢測。從事件檢測的結果上看,與KBD方法比較發現,將突發詞間的共現矩陣作為突發事件特征,沒有考慮到句子整體的語義特征,因此每個事件簇的可解釋性不高。如表5中的第二個聚類結果將兩個不相關的事件突發詞聚到了一起。由結果可知,第三個類簇主要是事件“亞運會蘇炳添奪冠”,卻出現了中國藍十周年慶典的相關事件突發詞。

本文提出的KBD方法,綜合考慮用戶以及博文的影響力,從獲取的微博數據中發現重點微博,通過改進突發詞計算方法,結合歷史數據挖掘在重點微博數據集時間間隔內的突發詞,通過突發詞構建出一個高質量的潛在突發事件數據集,進而進行突發事件的檢測。從表5的實驗結果可以看出,第一個是滴滴順風車事件,第二個是2018年8月雅加達亞運會上蘇炳添奪冠事件,第三個是延禧攻略大結局事件。從結果上看該方法取得的效果最理想。分析原因主要是通過實驗數據集中的重點微博計算出的突發詞,能夠充分考慮到微博突發事件發展的特征,以突發詞構建出的數據集,過濾掉了大量噪聲數據,避免了局部日常事件的干擾,降低了數據維度,采用以TFIDF為詞向量表示博文特征的聚類方法,與突發詞共現矩陣聚類相比增加了事件的可解釋性。

由表6可知,采用事件檢測結果關聯重點微博的方式能夠對所檢測事件進行全面的描述,進而可以判斷檢測出的事件是否為突發事件,對輔助決策有重要意義。

5 結束語

在基于社交網絡突發事件檢測的研究中,不應忽視博文間影響力的差異,結合突發事件爆發特征的事件檢測方法是日后研究的重點方向。通過與主流突發事件檢測方法的比較,KBD方法提高了事件檢測的準確率。結果表明,本文提出的突發事件檢測框架能夠有效地從微博數據中檢測突發事件。該流程框架對實際系統開發有一定的參考價值,對社交網絡中突發事件的管理與監控也有著積極的促進作用。

在后續的研究中,應著重于以下幾個方面:(1)如何甄別出粉絲惡意提高權重的重點微博(如刷評論、騙關注、刷轉發數等行為),從而剔除虛假重點微博;(2)在縮短時間間隔的條件下如何提高重點微博的識別率;(3)為了應對海量的微博數據,將嘗試引入高效的數據挖掘算法,提高實時檢測突發事件的效率。

表5 突發事件檢測結果(各取前3個)

表6 重點微博描述突發事件

猜你喜歡
博文突發事件聚類
第一次掙錢
基于K-means聚類的車-地無線通信場強研究
誰和誰好
基于高斯混合聚類的陣列干涉SAR三維成像
突發事件的輿論引導
基于Spark平臺的K-means聚類算法改進及并行化實現
Review on Tang Wenzhi’s The Gist of Chinese Writing Gamut
清朝三起突發事件的處置
基于改進的遺傳算法的模糊聚類算法
突發事件
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合