薛海濤,王 莉*,楊延杰,廉 飚
(1.太原理工大學大數據學院,太原 030600;2.北方自動控制技術研究所,太原 030006)
(?通信作者電子郵箱wangli@tyut.edu.cn)
社交媒體的即時性和便利性使得用戶可以便捷獲取信息并交流觀點,但也為謠言傳播提供了便利平臺。謠言傳播誤導公眾輿論,破壞社會安定,謠言檢測與監管已經成為一個迫切需要解決的社會問題。
謠言檢測的早期研究中,研究者一般通過手工構造消息文本的特征,利用決策樹、隨機森林、支持向量機(Support Vector Machine,SVM)等機器學習的方法進行分類[1-2],以判別真假。這類工作依賴于特征工程,無法適應社會媒體豐富多變的內容表現以及不斷演化的特點,而且社交媒體上的消息篇幅普遍較短,其包含的語義特征有限,一定程度限制了算法模型性能。后來一些研究工作利用消息傳播過程[3-4]進行謠言檢測,性能有所提升,但由于消息轉發中存在大量空轉發,這類基于轉發結構及內容的模型在實際場景中有很大的局限性。還有一些工作將用戶屬性引入,以用戶的權威度、可信度等作為判別所發布消息真偽的證據,但是由于當前謠言更具迷惑性,一些權威用戶有時也會被蒙蔽而轉發謠言,所以,僅依靠用戶權威度評價是不夠的。
實際應用中我們發現,雖然消息轉發中用戶有時會空轉發,但是傳播鏈中用戶的參與信息在一定程度上表達了對于所轉發消息的認同,同時,用戶的粉絲數、發表推文數及關注數等屬性信息在一定程度上反映了用戶的權威度,因此,傳播鏈中的用戶屬性信息可以幫助判別謠言。同時,消息內容對于檢測謠言也非常重要。鑒于以上觀察分析,本文提出了一種融合傳播鏈中的用戶屬性和消息內容的謠言檢測模型GMB_GMU。
受上述工作啟發,本文使用用戶屬性、傳播結構和消息內容進行謠言檢測。首先,構建轉發圖,節點特征為用戶屬性,邊表示轉發關系。結合轉發圖,利用圖注意力網絡(Graph Attention neTwork,GAT)獲取增強的用戶屬性表征。在另一部分,使用node2vec算法獲取轉發圖用戶的結構表征,而不依賴于節點屬性,借助互注意機制以得到增強的結構表征。最后一部分使用源帖文本的BERT(Bidirectional Encoder Representations from Transformers)向量,取得增強的源帖內容表征。將這三種角度的表征輸入到多模態門控單元(Gated Multimodal Unit,GMU)進行選擇與融合,得到信息的最終表征。在公共數據集上進行實驗,結果驗證了本文模型的判別精度和泛化能力,并檢測了模型在謠言早期檢測任務上的表現性能。本文主要工作如下:
1)融合傳播鏈中的用戶屬性信息和消息內容進行謠言檢測,避免了信息傳播結構計算中空轉發帶來的信息缺失問題。
2)引入GAT 生成用戶屬性表征,采用node2vec 得到結構表征,采用互注意機制建立用戶結構增強表征;同時基于BERT 建立源帖內容表征,最終將用戶屬性表征、結構表征和源帖內容表征表征三者融合得到消息的最終表征,以支持謠言檢測。
3)在公共數據集上進行實驗,驗證了模型的性能,并通過早期檢測任務,驗證了模型的有效性。
目前的研究主要可分為基于內容語義和基于傳播結構的謠言檢測方法。
隨著深度學習的發展,卷積神經網絡(Convolutional Neural Network,CNN)、循環神經網絡(Recurrent Neural Network,RNN)以及長短期記憶(Long Short-Term Memory,LSTM)網絡等被應用到自然語言處理任務中進行文本表征學習[5],以挖掘文本語義。段大高等[6]提出了一種融合用戶屬性和帖子內容特征的BP 神經網絡模型,通過Word2Vec 算法進行表征計算,然后輸入到神經網絡模型中提取文本特征。劉政等[7]提出了基于CNN 的謠言檢測算法,使用句向量結合多層卷積網絡,能有效地捕捉到特定范圍的上下文語義信息。Mikolov 等[8]將雙向RNN 應用到文本特征提取中,獲取到了前后語義之間的聯系。對于其他神經網絡方法,雖然可以準確地把握整體信息,但對于較長的文本,仍然存在上下文信息丟失的情況。
為了最大限度地捕捉到上下文信息,Fang 等[9]將注意力算法引入到謠言檢測工作中,取得了較好的檢測結果。Vaibhav 等[10]提出了一種基于圖神經網絡的虛假新聞檢測模型,該模型對新聞中所有句子對之間的語義關系進行建模,從而進行謠言檢測。Wang 等[11]依賴文本內容,提出了SemSeq4FD 模型來檢測虛假信息,該模型同時考慮了新聞中句子之間的全局語義關系和局部上下文順序特征。上述所有基于內容語義的方法最大的局限性在于這些算法更適用于長文本處理,模型表現優良的前提在于提供大量長文本進行訓練,但是,社交媒體上的帖子大多都是短文本,難免造成數據稀疏問題,從而影響了該類方法的檢測性能。
由于謠言涉及的領域繁雜,普遍存在學科交叉的現象,使得研究謠言傳播成為一個復雜的問題。在相關工作中,不僅涉及傳播的覆蓋范圍,還涉及傳播的速度。其中較常用的是傳染病模型和其變體模型,如SIS 模型和SIR 模型,每個傳播結構中的用戶可被分為“感染者(S)”“被感染者(I)”以及“停止感染者(R)”狀態,由一傳多到多傳多,可以描述謠言的傳播模式。但由于信息傳播的時間等特點,傳染病相比信息傳播在衰退效應、信息內容和聯系強度等方面都有明顯的區別,不適用于謠言傳播。
當前,研究者傾向于關注傳播網絡本身的拓撲結構,從而揭示其傳播特征和規律。Ma 等[4]提出了通過評估不同類型的傳播樹結構的相似性來捕獲新聞事件的高階表征。Liu等[12]提取了信息傳播過程中傳播樹的寬度與深度等特征。Shu 等[13]利用社交媒體上的新聞分層傳播網絡進行了假新聞檢測,從宏觀和微觀兩個層面建立了一個層次化的傳播網絡,并比較分析了傳播網絡的結構特征和時間特征。Bian等[14]提出了一種使用雙向GCN 進行謠言檢測的方法,該方法結合了謠言的序列傳播和橫向擴散,捕捉到了傳播結構的全局特征,獲得了較好的檢測結果。現有的基于傳播的方法使用消息傳播結構信息,但是消息傳播中存在大量空轉發,導致消息中存在較多噪聲,影響模型性能。在另一方面,這些方法沒有充分使用源帖信息,在檢測性能方面受到了很大限制。
給定新聞C,其中包含m個參與新聞傳播的用戶,如圖1所示,該新聞的用戶集合為U={u1,u2,u3,…,um},其中u1為發布原始文本的用戶,u2,u3,…,um為參與轉發的用戶,包含一階轉發用戶、二階轉發用戶和更高階的轉發用戶,目標為訓練一個網絡f:(C,U) →y,將新聞C分類為謠言或非謠言。其中,標簽值y∈{0,1},0 表示非謠言,1 表示謠言。信息傳播一般表現為樹型轉發擴散的模式。
圖1 信息傳播模式示意圖Fig.1 Schematic diagram of information propagation mode
本文提出的謠言檢測模型GMB_GMU 如圖2 所示,由四個部分組成:用戶信息編碼器、結構信息編碼器、源文本編碼器和融合分類器,圖中FC為全連接神經網絡層。
圖2 GMB_GMU模型Fig.2 GMB_GMU model
在實際場景下,用戶很多時候僅僅轉發原始內容,而不發表意見,轉發內容不適合作為節點的屬性特征。引入用戶屬性作為節點特征,可以在一定程度上彌補轉發結構上信息的缺失。
首先構建新聞C的有向轉發圖G=(V,E),其中V={u1,u2,u3,…,um}表示新聞傳播中的全部用戶,E={e1,e2,e3,…,eo}表示用戶之間的轉發關系,定義H∈Rm×t為節點集V的特征矩陣,用戶節點ui的特征向量為hi∈Rt,t為屬性個數,包含用戶的粉絲數、發表推文數量和關注數等屬性信息。定義A∈Rm×m為鄰接矩陣,若用戶j轉發了用戶i的推文,鄰接矩陣A中元素aij=1;若無轉發關系,則aij=0。
由于用戶各項屬性量綱和變化范圍不同,所以往往對特征矩陣進行歸一化,使得模型可以快速收斂。具體的,通過以下公式得到H歸一化后的特征矩陣Hs:
為了保留一定程度的原始信息,將Hs與Hs'對應元素相加,得到用戶信息矩陣Hadd。
將Hadd鋪平,得到用戶信息的最終表征Vadd∈Rm×t,整個用戶信息編碼器如圖3所示。
圖3 用戶信息編碼器Fig.3 User information encoder
使用node2vec[16]算法可在不受節點屬性干擾的情況下獲取轉發圖結構信息,將node2vec 得到的節點表征作為互注意機制的輸入,以增強結構表征。
首先,使用node2vev算法得到轉發圖中各個節點的表征,其目標函數為:
轉發圖中ui的node2vec表征為pi∈Rd,然后,計算用戶之間的相互注意分數,類似于文獻[17]中的方法,如圖4 所示,使用全連接網絡得到兩兩用戶表征之間的注意力分數:
圖4 結構信息編碼器Fig.4 Structural information encoder
其中:權重矩陣Wcat∈R2d;偏置項bcat∈R;||為拼接操作,依次計算用戶之間的注意力分數,得到相互注意分數矩陣MA∈Rm×m,m為轉發網絡中的節點數。
使用softmax 函數和行最大池化對互注意分數矩陣進行運算,得到節點的互注意分數向量:
源文本包含豐富的信息,有助于增強模型表現。為了最大限度提取文本上下文信息,引入BERT[18]算法獲取源文本表征,該算法通過雙向Transformer編碼器[19]生成的字向量,可以完全融合字詞左右上下文信息,與CNN或RNN相比,BERT可以更加充分地表征詞語的多重含義,由圖5所示,BERT生成的詞向量由字符向量、句向量和位置向量組成。輸入為新聞C,輸出源文本表征Xoutput∈Rr,代表源文本的全部語義信息。
圖5 BERT模型的輸入表征Fig.5 Input representation of BERT model
以上三部分計算得到的三個表征分別表示傳播模式中的用戶屬性、結構信息和源帖內容信息,要對這三個表征進行融合,使得最終表征可以最大限度地捕捉到謠言傳播的多方面特征。此處通過多模態門控單元[20]對上述三個表征進行融合,在不同來源數據組合基礎上找到最優表示。
由于用戶屬性表征Vadd∈Rm×t,結構表征以及源帖內容表征Xoutput∈Rr的維度不同,首先定義對應權重矩陣,將三個不同維度的表征投影到目標維度g,其過程為:
h1,h2和h3的維度都為g,將三個表征拼接起來:
則h∈R3g為模型的最終表征,將該向量輸入到全連接網絡(FC)和分類函數中,得到最終分類結果。
在本文中,模型訓練目標為最小化交叉熵損失函數。
其中:L為損失函數,NS為新聞集合,yC為新聞C的真實標簽,為新聞C的預測標簽。
為了評估本文模型在真實社交場景下的檢測性能,在真實世界的數據集進行對比實驗。
Weibo 數據集[21]來源于新浪微博。在該數據集中,由帖子、轉發和用戶構成,有兩個標簽:{謠言,非謠言},具體介紹如表1所示。
表1 實驗數據集統計Tab.1 Experimental dataset statistics
在實驗中,使用5 折交叉驗證。其中node2vec 訓練的節點表征維數d=256,BERT訓練的文本信息表征維數r=768,將三種信息表征投影到目標維度g=256。
為了減少模型的運算量,截取了前200 名傳播用戶,以此構建轉發圖。若傳播網絡中用戶數不足200,則根據實際狀況構建轉發圖,用戶信息最終表征Vadd維數固定為1 800,若不足,則填充0值。在實驗中,epoch設置為60,batch size 設置為128,學習率為0.000 1。
在用戶信息編碼器部分,使用用戶常見的9 個特征作為轉發圖節點的特征,t=9,如表2所示。
表2 節點特征Tab.2 Node features
在用戶信息編碼器部分,所提出方法具備用戶排序不變性,即用戶信息編碼器的輸出與用戶排列順序無關。圖注意力網絡GAT 作為圖神經網絡算法,節點表征更新依賴鄰接矩陣,滿足平移不變性,與節點的順序無關。將用戶信息矩陣Hadd鋪平后得到Vadd,目的是能夠進入全連接層,填充0 值的作用是補齊向量,使得進入全連接層時規格統一。即使鋪平順序發生變化,全連接層可以靈活地更新權重矩陣,用戶鋪平順序對最終結果不會造成影響。綜上所述,將Hadd平鋪不會對用戶排序不變性造成影響。
為了驗證本文模型的優越性,與以下6個模型進行比較:
1)DTC(Decision-Tree Classifier)[1]:該模型使用文本的手工特征和其他統計特征,利用決策樹模型來得到檢測結果。
2)SVM-RBF(SVM classifier with RBF kernel function)[22]:該模型使用基于徑向基核函數(Radial Basis Function,RBF)的SVM模型得到新聞的預測標簽。
3)TD-RvNN(Tree-structured Recursive Neural Network)[4]:該模型使用遞歸神經網絡處理樹結構的新聞傳播路徑得到分類結果。
4)PPC-RNN+CNN(Propagation Path Classification with RNN and CNN)[3]:模型提出了新聞傳播的多元時間序列,使用GRU和CNN的結合模型進行分類。
5)HiMap-HO+Text(Higher-order user to user Mutual-Attention Progression method)[17]:作者使用LSTM 計算轉發鏈的節點表征,并結合用戶的互注意表征得到新聞的檢測結果。
6)BiGCN(Bi-directional GCN)[14]:利用信息傳播時的雙向傳播結構使用圖卷積網絡進行謠言檢測的模型。
實驗結果如表3 所示,顯示了本文模型和比較模型在Weibo 數據集上的表現。首先,深度學習算法的表現遠超機器學習算法,表明深度學習算法學習到的表征優于人工選擇的謠言特征;其次,GMB_GMU 模型在各性能指標上明顯優于TD-RvNN 方法,因為TD-RvNN 節點特征為轉發文本,但真實場景下存在很多空轉發,而本文模型選擇使用用戶屬性作為節點特征,彌補了轉發結構上信息的缺失。最后,GMB_GMU模型優于HiMap-HO+Text,在HiMap-HO+Text 中,使用轉發鏈計算節點二到四階的相互注意力,數據收集和處理有極大的難度,而本文模型僅使用轉發圖中的一階用戶相互注意力表征,實驗表現遠超HiMap-HO+Text。
表3 Weibo數據集上的實驗結果Tab.3 Experimental results on Weibo dataset
為了在謠言傳播的早期檢測到謠言,及時遏制其傳播,分別測試了模型在5 min、10 min 等時間點的謠言檢測表現,其實驗結果如圖6所示。
圖6 早期檢測實驗結果Fig.6 Experimental results of early detection
在源帖發布的5 min 內,GMB_GMU 模型的準確率超過0.9,表現優于其他比較模型,表明僅存在較少用戶信息時,GMB_GMU 仍能保持較為準確的早期檢測能力。當傳播時間增大,轉發結構逐漸復雜,信息噪聲增多時,不同于BiGCN 等比較模型,GMB_GMU 模型性能呈穩定上升趨勢,體現了模型處理復雜數據的能力,具有較好的穩定性和魯棒性。
為了驗證模型中各部分的作用,將模型可拆分為以下子模型:1)用戶屬性GAT;2)源帖BERT 網絡;3)GMB 網絡,即基于用戶屬性GAT-互注意機制-BERT 的簡單融合網絡;4)互注意機制。實驗結果如圖7所示。
圖7 GMB_GMU的消融實驗結果Fig.7 Ablation experimental results of GMB_GMU
用戶屬性GAT 可以取得0.865 的準確率,結果遠低于GMB_GMU,表明僅使用用戶屬性,不考慮內容語義信息,會嚴重影響謠言檢測效果。使用源帖BERT 網絡取得了0.914的準確率,結果仍低于GMB_GMU,僅僅依靠源帖語義信息來檢測謠言存在一定的問題。最后,基于用戶屬性GAT-互注意機制-BERT的簡單融合網絡將GMU替換為簡單拼接方式,達到0.937 的準確率,說明門控多模態單元可以對多個模態信息進行選擇組合,更好地表征聯合信息。
本文提出了一種基于用戶傳播網絡與消息內容融合的謠言檢測模型GMB_GMU,引入GAT 增強用戶屬性表征。在轉發圖的基礎上計算節點的node2vec 表征,并通過互注意機制增強結構信息;另外,引入源帖文本的BERT 向量,增強源帖信息。最后,使用GMU 門控網絡將三種角度的謠言表征恰當地結合起來,提取到消息的最終表征,在公共數據集上取得了優異的實驗結果,并通過早期檢測和消融實驗說明了模型在謠言早期傳播的有效性和每個部分的重要程度。在謠言的傳播過程中,一些有影響力的用戶會導致謠言擴散呈指數級增長,加重了謠言負面影響。在未來工作中,通過發現這些有影響力的用戶,進而提升謠言檢測模型的性能。