謠言檢測()《Data Fusion Oriented Graph Convolution Network Model for Rumor Detection》
論文信息
論文標題:Data Fusion Oriented Graph Convolution Network Model for Rumor Detection
論文作者:Erxue Min, Yu Rong, Yatao Bian, Tingyang Xu, Peilin Zhao, Junzhou Huang,Sophia Ananiadou
論文來源:2020,IEEE Transactions on Network and Service Management
論文地址:download
論文代碼:download
1 Introduction
本文不僅考慮了用戶的基本信息和文本內容等靜態特徵,還考慮了謠言傳播關係等動態特徵。我們還對特徵融合模塊和池化模塊進行了優化,使模型具有更好的性能。
本文貢獻:
-
- Considering the real dataset from social media, we extract static features such as users』 basic information and text contents, as well as dynamic features such as rumor propagation relations, and propose the data fusion method.
- GCN is introduced into the rumor detection task, which represents the rumor propagation mode. And we propose to select the suitable graph convolution operator to update the node vectors, and improve the feature fusion and pooling module.
- Experiments based on Sina Weibo dataset validate the performance of the propsed GCN-based model for rumor detection.
2 Main
整體框架如下:
主要包括如下四個模塊:
-
- the feature extraction module
- the feature fusion module
- the graph convolution module
- the pooling module
2.1.1 Features of User Basic Information
常見的 User basic information:
加入這些特徵的原因:如 gender 為 女的情況下,是謠言的概率更高。
特徵預處理:
對於 gender 採用 One-hot 向量;
對於追隨者特徵,採用的是 Min-Max normalization ,但是這對於普通用戶(如擁有 follower 小的用戶)用以造成大部分的數值為 $0$,所以本文採用 $\text{log}$ 處理,如下:
$x^{*}=\left\{\begin{array}{ll}\frac{\log x-\log x_{\min }}{\log x_{\max }-\log x_{\min }} & x>0 \\0 & x=0\end{array}\right\} \quad\quad\quad(2)$
其中,$x$ 代表歸一化前的追隨者數量,$x^{*} $ 表示標準化值,$x_{\min }$ 和 $x_{\max }$ 表示中的最小和最大追隨者數量。
2.1.2 User Similarity Feature
考慮用戶相似性,首先構造一個 user-event matrix $M$,其中 User 有 $N_{1}$ 個,event 有 $N_{2}$ 個,所以 $M \in N_{1} \times N_{2}$ 。可以預見的是 $M$ 是一個稀疏矩陣,所以本文採用 SVD 分解:
$A=U \Sigma V^{T}\quad\quad\quad(3)$
其中 $A$ 為需要分解的矩陣,$U$ 為左奇異值矩陣,$\Sigma$ 為對角矩陣,對角元素為奇異值,$V$ 為右奇異值矩陣。根據奇異值分解在推薦系統中的應用思想,我們可以取前 $N$ 個奇異值,計算 $\Sigma$ 與 $U$ 之間的點積,得到用戶的向量表示,從而實現降維的目的。最後,每個用戶都將有一個 $N$ 維的向量表示。兩個用戶向量之間的距離越近,它們共同參與的事件的數量就越多。基於同樣的思想,還可以構建 users-users 之間的矩陣,矩陣元素表示兩個用戶都參與的事件的數量。然後使用相同的方法為用戶生成另一組向量特徵,並將基於用戶-事件矩陣分解為用戶相似性特徵的向量相結合。
2.1.3 Representation of Text Content
使用 $BERT_{base}$ Chinese model 提取文本表示。
2.1.4 Feature Fusion Module
$\begin{array}{l}\mu \leftarrow \frac{1}{m} \sum\limits_{i=0}^{m} h_{i} \\\sigma^{2} \leftarrow \frac{1}{m} \sum\limits_{i=0}^{m}\left(h_{i}-\mu\right)^{2} \\\hat{h}_{l} \leftarrow \frac{h_{i}-\mu}{\sqrt{\sigma^{2}+\varepsilon}} \\w_{i} \leftarrow \gamma \hat{h}_{i}+\beta\end{array}$
其中,$\gamma$ 和 $\beta$ 是可學習參數。
最後再執行 concat 。
2.1.5 Graph Convolution Module
GCN 可以編碼局部圖的結構和節點特徵。其正向傳播公式如下:
$H^{(l+1)}=\sigma\left(\tilde{D}^{-\frac{1}{2}} \tilde{A} \tilde{D}^{-\frac{1}{2}} H^{(l)} W^{(l)}\right) \quad\quad\quad(8)$
$w_{v}^{k}=N N^{k}\left(\left(1+\varepsilon^{k}\right) \cdot w_{v}^{k-1}+\sum\limits _{u \in N(v)} w_{u}^{k-1}\right)$
2.1.6 Pooling Module
常見的池化操作包括 average pooling 和 maximum pooling,分別如 $\text{Eq.11}$ $\text{Eq.12}$ 所示:
$\begin{array}{l}h_{G}=\frac{1}{m} \sum\limits _{i=0}^{m} \widetilde{w_{i}} \\h_{G}=\max \left(\widetilde{w_{0}}, \widetilde{w_{1}}, \ldots, \widetilde{w_{m}}\right)\end{array}$
平均池化是為了獲得圖中所有節點的平均向量作為圖向量,最大池化是選擇此維度中所有節點的最大值作為每個維度的輸出。
Note:一種新的池化方案,先將節點的表示向量按值降序排列後,選擇頂部的 $k$ 個節點,拼接 $k$ 節點向量後,採用一維卷積法進行特徵壓縮,壓縮後的向量為最終的圖表示。
本文採取的池化過程:將GIN 每層的輸入進行concat ,然後使用 Note 中的池化策略。
$h_{G}=\operatorname{Pooling}\left(\text { Concat }\left(\left\{\widetilde{w_{v}^{k}} \mid k=0,1, \ldots, K\right\}\right) \mid v \in V\right)$
3 Experiment
Dataset
Results