Detect rumors using time series of social context information on microblogging websites

Detect rumors using time series of social context information on microblogging websites

原文地址

ABSTRACT

從在線社交網絡上,尤其是微博網站上自動檢測謠言是一個重要的研究課題。大量已有的關於謠言的檢測關注於對微博內容、使用者和傳播的特徵進行建模,但忽略了在消息傳輸這一時間過程中,社會環境特徵的變化的重要性。在本研究中,我們提出了一個新方法來捕捉這些時間的特徵,這些時間特徵基於謠言生命週期的時間序列,這個時間序列的建模技術被應用於整合各種社交語境信息。我們的實驗使用了兩個微博數據集裏的事件,來證實這個方法在很大程度上優越於最先進的謠言檢測方法。此外,我們的模型展示了對謠言最初傳播之後的早期階段強大的識別能力。

Keywords

謠言檢測 時間的 時間序列 社交上下文

1 INTRODUCTION

一個謠言被定義爲一個真實性得不到證實或者完全虛假的聲明。這些在微博網站上的謠言,攜帶着非真實的,甚至是惡毒的信息,能夠給我們的社區帶來大量的恐慌和社會緊張。舉個例子,在2013年的4月23號,一個在推特上的關於在白宮裏發生的爆炸使巴拉克奧巴馬受傷的謠言,造成了美國股市的崩盤。
因此,自動謠言檢測技術能夠快速的識別謠言信息並自動的監視謠言的傳播,將變得非常有用。
現有的謠言檢測技術,通常利用基於大量有關使用者、消息內容和它們的傳播的特徵的監督學習模型。這些模型的一個明顯的限制,是它們僅能考慮這些社交語境信息的總體統計數據來作爲特徵,例如,總的轉發次數、傳播的時間長度等等,而且忽視了這些特徵在時間流逝過程中的變化。
爲了推動檢測的準確性,我們主張不僅僅觀察總體屬性和單個消息的屬性,而且學習這些特徵在有關假設的生命週期中的變化趨勢,是十分重要的。舉個例子,提供兩個推特時間,一個是關於“執行死刑的射擊隊”(一個謠言),另一個是關於“希爾頓被捕”(一個非謠言),圖像1(a)和1(b)展示了在使用問號的推特文傳播變化,而且第一人稱代詞分別使用了時間序列,這是使用以前工作的兩個典型特徵。圖1(a)意味着非謠言比謠言在後面的階段,傾向於使用更少的問號,但根據圖1(b),這也許在謠言的早期階段有更多的第一人稱代詞。這樣的變化反映了謠言和非謠言在傳播過程中的不同特徵。
Kwon et al最近介紹了一個時間序列擬合模型,它基於單個特徵的時間特徵,推文數量,顯示出更好的檢測結果。然而,他們的時間模型關注於轉換這些推文數量的連續時間序列爲三個擬合參數來捕捉時間波動的特徵,這也許會導致複雜時間序列提供的重要信息的丟失。也許,在未來增加模型中的擬合參數會增加擬合效果,但這是很困難的。
爲了戰勝這些不足,我們假設了一個稱爲“動態-時間序列-結構”(Dynamic Series-Time Structure (DSTS))的全新的時間序列模型來捕捉廣泛的社交語境隨時間的變化,這將遠遠超過推文數量的特徵。我們將會學習這個社交語境特徵的時間序列,如何捕捉這些事件消息傳播傳播過程中的特徵變化,這應該有助於區分謠言和非謠言。我們利用從推特和新浪微博上分別爬取的上百個中英文事件的兩個數據集。我們建立起了使用基於DSTS特徵和帶註釋數據的分類器。在我們的方法中,我們檢查兩個基本設置:(1)考慮某個特定主題的時間的完整生命週期,我們決定它是否是謠言;(2)考慮事件數據在傳播的早期,我們應用我們的模型進行早期的謠言檢測。在這兩個設置下的測試結果證實了我們的基於DSTS的模型實現了相對於這兩個數據集的最先進數據集的,承諾過的性能改善。

2 TIME SERIES OF MICROBLOG EVENT

一個事件被認爲是一個相關與某個特定話題如“希拉裏克林頓宣佈參選2016年總統”,“MH370航班降落在南寧”等的微博集合。這些話題能夠在推特上被手動編輯,或者從新浪社交管理中心處得到,這包含了已被證實的謠言和非謠言事件。
我們將微博數據建模爲一個事件集合E={Ei}E=\{E_i\},而且每個事件EiE_i包含了相關的微博{mij}\{m_{ij}\},我們將每個EiE_i表示爲一個D維向量FiDF^D_i,這包含了有關微博內容、用戶和傳播模式的社交語境特徵。爲了讓特徵數量易於被處理,我們將與每個事件相關的微博的連續時間流,轉換爲固定的時間間隔。爲了學習我們的模型,我們提取出一個時間敏感的豐富特徵集合,它不止包含社交語境信息的總體統計數據,也有基於能被捕捉到的時間間隔的個體特徵的變化。

2.1 Time Stamps Generation

對一個事件EiE_i,假設timeFirstitimeLastitimeFirst_i和timeLast_i分別爲最早的和最晚的微博被推送的時間。我們將每一個微博mijm_{ij}的創造時間轉換爲一個落在0到N的序列的時間間隔。作爲mijm_{ij}的時間戳,N是時間間隔的可調節變量。我們假設時間間隔爲EiE_i,假設mijm_{ij}的時間戳(tinme stamp TS)在tmijt_{m_{ij}}被創造如下
(1)Interval(Ei)=timeLastitimeFirstiNInterval(E_i)=\lceil \frac{timeLast_i-timeFirst_i}{N} \rceil \tag{1}
(2)TS(mij)=tmijtimeFirstiInterval(Ei)TS(m_{ij})=\lfloor \frac{t_{m_{ij}}-timeFirst_i}{Interval(E_i)} \rfloor \tag{2}
其中Interval(.)Interval(.)是每個時間間隔的長度,即時間、小時、天數之類的數量,而TS(.)TS(.)mijm_{ij}落入時間戳的索引,取值爲0,1,...,N0,1,...,N,我們使用小時作爲這項工作的時間單位。

2.2 Dynamic Series-Time Structure(DSTS)

對於EiE_i的所有時間戳,它的社交語境特徵向量V(Ei)V(E_i)可以被每個給定的時間戳自然生成。然而,這些信息的時間屬性隨時間持續變化,這些信息僅通過在單個時間間隔內對特徵建模的方式則不能被有效地捕捉到。更好的辦法是識別時間序列的形狀,這是由連續區間之間的相對變化形成的,作爲絕對時間特徵的補充。
爲此,我們提出了一個動態時間序列結構(DSTS),用於捕捉每個特徵的變化。在這個結構裏,我們不僅考慮從初始時間到每個時間間隔的絕對特徵值,也包含兩個連續間隔的特徵斜率。因此,基於DSTS的特徵向量被表示爲:
(3)V(Ei)=(Fi,0D,Fi,1D,...,Fi,ND;Si,1D,...,Si,N1D)V(E_i)=\left(F_{i,0}^D,F_{i,1}^D,...,F_{i,N}^D; S_{i,1}^D,...,S_{i,N-1}^D \right) \tag{3}
(4)Fi,tD=(f~i,t,1 ,f~i,t,2 ,...,f~i,t,D )F^D_{i,t}=\left(\tilde{f}^{~}_{i,t,1},\tilde{f}^{~}_{i,t,2},...,\tilde{f}^{~}_{i,t,D} \right) \tag{4}
(5)Si,tD=Fi,t+1DFi,tDInterval(Ei)S_{i,t}^D=\frac{F^D_{i,t+1}-F^D_{i,t}}{Interval(E_i)} \tag{5}
其中Fi,tDF_{i,t}^DEiE_i在微博中從時間0到tth intervalt-th \ interval於社交語境中生成的特徵向量,Si,tDS_{i,t}^D是在第ttht-th(t+1)th(t+1)-th個時間間隔內的特徵的斜率。
我們使用ZscoreZ-score來正則化時間序列裏的特徵值。對從0到ttht-th時間間隔的特徵進行ZscoreZ-score被定義爲:
(6)f~t,k =ft,k fkσ(fk)\tilde{f}^{~}_{t,k}=\frac{f^{~}_{t,k}-\overline{f}_k}{\sigma(f_k)} \tag{6}
其中fk\overline{f}_k是第k個特徵的均值,σ(fk)\sigma(f_k)是第k個特徵在整個時間間隔內的標準差,ft,kf_{t,k}是從時間第0到ttht-th個間隔中的第k個特徵,這個間隔是通過計算微博上的平均值或其他統計量得到的。

3 FEATURE ENGINEERING

在這一章節中,我們將對式6給出的對應於ft,kf_{t,k}的每一個社交語境特徵進行工程設計。注意到ft,kf_{t,k}通常是通過對在個體微博上定義的原始的社交語境特徵fkf_k進行平均得到的,但很有可能,從時間0到間隔t的所有微博上都直接定義了一些功能。我們提供三類特徵:基於內容、基於用戶和基於傳播的特徵,其中一些特徵來源於先前的工作而其他的一些事新提出的。表格1描述了這些特徵。爲了清晰起見,我們提供了下面一些特徵的更多的細節。
表格1:對一個微博上的事件在時間0到時間間隔t的特徵ft,kf_{t,k}描述


基於內容的特徵
基於LDA的微博話題分佈,有18個話題
微博裏的積極(消極)單詞數量
微博裏的平均情緒的分
有URL的微博比例
使用微笑(皺眉)表情符號的微博比例
積極(消極)的微博比例
使用第一人稱的微博比例
帶有標籤的微博比例
有@的微博比例
有問號的微博比例
有感嘆號的微博比例
多個問號或感嘆號的微博比例
基於用戶的特徵
提供個人描述的用戶比例
提供個人簡介照片的用戶比例
認證用戶比例
每一種類型的認證用戶比例,例如名人
男性(女性)用戶比例
定位在大(小)城市的用戶比例
用戶的平均朋友數
用戶的平均追隨者數
用戶的平均帖子數
自注冊以來,用戶賬戶的平均在線天數
用戶的平均聲望值
基於傳播的特徵
平均轉發次數
微博評論的平均數量
微博數量

基於LDA的話題分佈:對於E中的所有微博,我們使用隱狄利克雷分佈(Latent Dirichlet Allocation, LDA)模型來獲得每個帖子的一個n話題分佈。對每個事件EiE_i的每個帖子mijm_{ij},我們有T(mij)=(pij(1),pij(2),...pij(n))T(m_{ij})=\left( p_{ij}^{(1)}, p_{ij}^{(2)},...p_{ij}^{(n)}\right),其中pij(Z)p_{ij}^{(Z)}mijm_{ij}屬於主題z(z=1,...,n)z(z=1,...,n)的概率。然後,對事件所涉及的時間跨度所有微博的話題分佈進行平均,得到基於n個LDALDA的話題分佈特徵。我們在前面的工作之後,設置n=18n=18
平均情感得分:相似但不同的特徵被其他文章使用。給定一個情感詞彙和一個表情詞彙,在一個時間跨度內每個事件EiE_i的平均情感得分被計算爲
1miΣj=1mi(wposijwnegij+eposijenegij)\frac{1}{|m_i|}\Sigma^{|m_i|}_{j=1}\left(|w_{pos}|_{ij} - |w_{neg}|_{ij} + |e_{pos}|_{ij} - |e_{neg}|_{ij} \right)
其中wposij|w_{pos}|_{ij}wnegij|w_{neg}|_{ij}分別是是積極詞語和消極詞語的數量,eposij|e_{pos}|_{ij}enegij|e_{neg}|_{ij}分別是微笑表情和皺眉表情的數量。在微博mijm_{ij}中,mi|m_i|是事件EiE_i在有關時間跨度內的微博數量。對推文,我們使用MPQAMPQA情感詞彙和一套我們自己經常收集的表情符號;對微博,我們使用情感詞彙和某文章中提到的表情。

4 EXPERIMENTAL EVALUATION

4.1 Datasets and Setup

對推文,我們使用Castillo等人發佈的公共數據集。他們使用推特監視器從2010年4月至9月的推文摘要中提取了288個事件。我們過濾掉低於10條tweet的事件,然後留下了207個流行事件,其中110個被標記爲謠言。我們也從新浪微博上搜集了附加的微博數據集,那裏有從新浪社區管理中心確認的謠言,該中心接手各種虛假信息的報道。我們保持這些謠言時間至少有100個帖子。這給我們留下了422個謠言事件。我們注入了500個正常的(非謠言)事件,每一個都有超過100個帖子。新浪微博API提供捕捉原始帖子和轉發帖子的接口。表格2展示了我們數據集的細節。

Table 2:數據集細節

統計數據 推特 新浪微博
使用者 568261 585475
推文 12707767 473698
事件 216 922
謠言 101 500
非謠言 115 422
平均時間長度 35.8小時 2719小時

我們的模型採用線性SVM分類器。我們將我們基於DSTS的SVM模型和幾種強基線進行了對比:(1)DT:推特可信性模型在不考慮時間序列的情況下,利用表1中的社會背景特徵,使用決策樹分類器;(2)RF:隨機森林分類器使用的特徵由擬合推文量曲線的三個參數和表1中所有靜態特徵組成;(3)RF-ext:我們通過添加表1中所有社交語境特徵的時間序列擬合參數,對具有附加特徵的RF模型進行擴展;(4)SVM-RBF:基於使用RBF內核的SVM使用表1中的所有特徵但沒有考慮時間序列;(5)SVMcDSTS,SVMuDSTS,SVMdDSTSSVM_c^{DSTS},SVM_u^{DSTS},SVM_d^{DSTS}:我們的DSTS模型分別使用基於內容、基於用戶、基於傳播的特徵;(6)SVMallDSTSSVM_{all}^{DSTS}:我們完全配置的DSTS模型。我們不比較在新浪微博平臺上使用特殊傳播結構,因爲我們的方法是更廣泛的。
我們使用Weka和線性的SVM模型使用實現了DT、RF和RF-ext。我們進行了10次交叉驗證,並使用準確度、召回率和F-measure來進行評估。我們將N=50N=50固定在一個開發集合上。

4.2 Experimental Results

表格3(a)和3(b)展示了不同方法的表現。總的來說,我們的SVMallDSTSSVM_{all}^{DSTS}系統,儘管是一個線性的模型,明顯優越於所有基於非線性模型的基線。在準確性方面,它將改進DT、RF、RF-ext和SVM-RBF在推特數據上分別提高9.5%、3.3%、4.4%和9.1%,也在微博數據上分別提高了9.3%、3.8%、5.2%和8.6%。這是因爲DSTS模型能夠保留大量豐富的社交語境信息的變化。DT值使用了在整個帖子聲明週期的靜態社交語境特徵,而RF使用一個擬合轉發數量的時間序列模型的三個參數作爲附加特徵,這可能會受損與信息丟失。驚喜的是,RF-ext表現得差於RF,這表明用三個參數表示每個特徵的變化不能捕獲複雜傳播模式和擬合更多的特徵,否則會積累更多的信息丟失。擴展三個擬合參數被它們原始的模型所限制。SVM-RBF比我們僅適用基於內容和基於用戶子集特徵的DSTS模型表現得更差,這表明我們的時間序列是非常有效的。
表3 和不同方法的比較結果(R:謠言,N:非謠言)
在這裏插入圖片描述

4.3 Rumor Early Detection

我們在謠言早期的檢測任務中測試我們的模型,目的是爲了在傳播的早期識別出謠言。給定一個檢測截止日期,我們假設在測試模型時,截止日期之後的所有測試事件消息都是不可見的。當訓練模型的時候,完整的生命週期是被假設爲可見的。

在這裏插入圖片描述
圖2 早期謠言檢測的結果
圖2展示了我們的SVMallDSTSSVM_{all}^{DSTS}模型在不同的截止日期下,和基線DT、RF、RF-ext和SVM-RBF的準確度。在最開始的幾個小時裏,我們的模型由於缺乏足夠的社交語境的變化,沒有明顯的優勢。隨着時間的流逝,我們模型的表現在5-10小時之後急劇地爬升而其他模型的情況並沒有顯著優化,因爲DSTS能夠從時間序列中捕捉到豐富的特徵變化模式。我們的模型在較早的階段就實現了基線的相似準確度。舉個例子,在推特上,我們模型花了15個小時取得了RF,第二好的基線的最高精度,而RF需要25個小時;在微博上,我們的模型畫了20個小時而RF花了將近70個小時去實現相似的表現。這說明我們的模型對於早期檢測是非常有效的。

5 CONCLUSION AND FUTURE WORK

我們提出了一個全新的方法去自動識別微博網站上的謠言。我們建立了一個動態時間序列模型來利用時間變化下不同社交語境特徵的變化。實驗結果展示出我們利用了時間序列特徵的方法在事件的完整生命週期和傳播的早期階段,對謠言檢測有明顯的改善。在未來的工作中,我們計劃研究使用時間序列來識別網上謠言的無監督模型。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章