SlowGuess/ACL_2020_OCR huggingface dataset:
Yi-Ju Lu
1852888@gmail.com
Cheng-Te Li
Institute of Data Science
chengte@mail.ncku.edu.tw
This paper solves the fake news detection problem under a more realistic scenario on social media. Given the source short-text tweet and the corresponding sequence of retweet users without text comments, we aim at predicting whether the source tweet is fake or not, and generating explanation by highlighting the evidences on suspicious retweeters and the words they concern. We develop a novel neural network-based model, Graph-aware Co-Attention Networks (GCAN), to achieve the goal. Extensive experiments conducted on real tweet datasets exhibit that GCAN can significantly outperform state-of-the-art methods by  $16\%$  in accuracy on average. In addition, the case studies also show that GCAN can produce reasonable explanations.
Social media is indispensable in people's daily life, where users can express themselves, access news, and interact with each other. Information can further spread through the social network. Opinions and sentiments on source stories can be reflected by user participation and interaction. The convenient and low-cost essence of social networking brings collective intelligence, but at the same time leads to a negative by-product, the propagation of misinformation such as fake news.
Fake news is a kind of news story possessing intentionally false information on social media (Rashkin et al., 2017; Allcott and Gentzkow, 2017). The widespread of fake news can mislead the public, and produce unjust political, economic, or psychological profit for some parties (Horne and Adali, 2017; Allcott and Gentzkow, 2017). Data mining and machine learning techniques were utilized to detect fake news (Shu et al., 2017; Cha et al., 2020). Typical approaches rely on the content of new articles to extract textual features, such
as n-gram and bag of words, and apply supervised learning (e.g., random forest and support vector machine) for binary classification (Shu et al., 2017). NLP researchers also learn advanced linguistic features, such as factive/assertive verbs and subjectivity (Popat, 2017) and writing styles and consistency (Potthast et al., 2018). Multi-modal context information is also investigated, such as user profiles (Yang et al., 2012; Liu and Wu, 2018) and retweet propagation (Ruchansky et al., 2017; Shu et al., 2019a).
Nevertheless, there are still critical challenges in detecting fake news online. First, existing content-based approaches (Castillo et al., 2011; Potthast et al., 2018; Shu et al., 2019a) require documents to be long text, e.g., news articles, so that the representation of words and sentences can be better learned. However, tweets on social media are usually short text (Yan et al., 2015), which produces severe data sparsity problem. Second, some state-of-the-art models (Ruchansky et al., 2017; Liu and Wu, 2018; Shu et al., 2019a) require a rich collection of user comments for every news story, to learn the opinions of retweeters, which usually provide strong evidences in identifying fake news. However, most users on social media tend to simply reshare the source story without leaving any comments (Kwak et al., 2010). Third, some studies (Ma et al., 2018) consider that the pathways of information cascade (i.e., retweets) in the social network are useful for classifying misinformation, and thus learn the representations of the tree-based propagation structures. However, it is costly to obtain the diffusion structure of retweets at most times due to privacy concerns (Li et al., 2018). Many users choose to hide or delete the records of social interactions. Fourth, if the service providers or the government agencies desire to inspect who are the suspicious users who support the fake news, and which topics do they concern in producing fake
Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pages 505-514 July 5 - 10, 2020. ©2020 Association for Computational Linguistics
news (Reis et al., 2019), existing models cannot provide explanations. Although dEFEND (Shu et al., 2019a) can generate reasonable explanation, it requires both long text of source articles and text of user comments.
This paper deals with fake news detection under a more realistic scenario on social media. We predict whether a source tweet story is fake, given only its short text content and its retweet sequence of users, along with user profiles. That said, we detect fake news under three settings: (a) short-text source tweet, (b) no text of user comments, and (c) no network structures of social network and diffusion network. Moreover, we require the fake news detection model to be capable of explainability, i.e., highlighting the evidence when determining a story is fake. The model is expected to point out the suspicious retweeters who support the spreading of fake news, and highlight the words they especially pay attention to from the source tweet.
To achieve the goal, we propose a novel model, Graph-aware Co-Attention Network (GCAN)  ${}^{1}$  . We first extract user features from their profiles and social interactions, and learn word embeddings from the source short text. Then we use convolutional and recurrent neural networks to learn the representation of retweet propagation based on user features. A graph is constructed to model the potential interactions between users, and the graph convolution network is used to learn the graph-aware representation of user interactions. We develop a dual co-attention mechanism to learn the correlation between the source tweet and retweet propagation, and the co-influence between the source tweet and user interaction. The binary prediction is generated based on the learned embeddings.
We summarize the contributions as follows. (1) We study a novel and more realistic scenario of fake news detection on social media. (2) For accurate detection, we develop a new model, GCAN, to better learn the representations of user interactions, retweet propagation, and their correlation with source short text. (3) Our dual co-attention mechanism can produce reasonable explanations. (4) Extensive experiments on real datasets demonstrate the promising performance of GCAN, comparing to state-of-the-art models. The GCAN explainability is also exhibited in case studies.
We organize this paper as follows. Section 2 reviews the relevant approaches to fake news detection in social media. We describe the problem statement in Section 3. Then in Section 4, the details of our proposed GCAN model will be elaborated. Section 5 demonstrates the evaluation settings and results. We conclude this work in Section 6.
Content-based approaches rely on the text content to detect the truthfulness of news articles, which usually refer to long text. A variety of text characteristics are investigated for supervised learning, including TF-IDF and topic features (Castillo et al., 2011), language styles (e.g., part of speech, factive/assertive verbs, and subjectivity) (Popat, 2017), writing styles and consistency (Potthast et al., 2018), and social emotions (Guo et al., 2019). Zhao et al. (2015) find the enquiry phrases from user responses are useful, and Ma et al. (2016) use recurrent neural networks to learn better representations of user responses.
User-based approaches model the traits of users who retweet the source story. Yang et al. (2012) extract account-based features, such as "is verified", gender, hometown, and number of followers. Shu et al. (2019b) unveil user profiles between fake and real news are significantly different. CRNN (Liu and Wu, 2018) devise a joint recurrent and convolutional network model (CRNN) to better represent retweeter's profiles. Session-based heterogeneous graph embedding (Jiang et al., 2018) is proposed to learn the traits of users so that they can be identified in shared accounts. However, since such a method relies on session information, it cannot be directly applied for fake news detection.
Structure-based approaches leverage the propagation structure in the social network to detect fake news. Sampson et al. (2016) leverage the implicit information, i.e., hashtags and URLs, to connect conversations whose users do not have social links, and find such implicit info can improve the performance of rumor classification. Ma et al. (2017) create a kernel-based method that captures high-order patterns differentiating different types of rumors. Ma et al. (2018) develop a tree-structured recursive neural networks to learn the embedding of rumor propagation structure. Although multi-relational graph embedding methods (Feng et al., 2019; Wang and Li, 2019) are able to effectively learn how different types of entities (related to source news ar
The Code of GCAN model is available and can be accessed via: https://github.com/1852888/GCAN
Table 1: Comparison of related studies. Column notations: news story texts (NS), response comments (RC), user characteristics (UC), propagation structure (PS), social network (SN), and model explainability (ME). For the NS column, "S" and "L" indicates short and long text, respectively.
NS	RC	UC	PS	SN	ME
Ma et al. (2016)	✓(S)	✓
Ma et al. (2018)	✓(S)	✓	✓	✓
Liu and Wu (2018)	✓(S)	✓	✓
Ruchansky et al. (2017)	✓(S)	✓	✓
Shu et al. (2019a)	✓(L)	✓	✓	✓
Our work	✓(S)	✓	✓	✓	✓
ticles) interact with each other in a heterogeneous information network for classification tasks, they cannot be applied for the inductive setting, i.e., detecting the truthfulness of new-coming tweets.
Hybrid-based approaches consider and fuse multi-modal context information regarding the source tweets. CSI (Ruchansky et al., 2017) learns the sequential retweet features by incorporating response text and user profiles, and generates suspicious scores of users based on their social interactions. Wang et al. (2018) develop an event adversarial neural network to learn transferable features by removing the event-specific features, along with convolutional neural networks to extract textual and visual features. dEFEND (Shu et al., 2019a) jointly learns the sequential effect of response comments and the correlation between news content and comments, and use an attention mechanism to provide explainability.
We compare our work and the most relevant studies in Table 1. The uniqueness of our work lies in: targeting at short text, requiring no user response comments, and allow model explainability.
Let  $\Psi = \{s_1,s_2\dots s_{|\Psi |}\}$  be a set of tweet stories, and  $U = \{u_{1},u_{2}\dots u_{|U|}\}$  be a set of users. Each  $s_i\in \Psi$  is a short-text document (also called the source tweet), given by  $s_i = \{q_1^i,q_2^i,\ldots ,q_{l_i}^i\}$  indicating  $l_{i}$  words in story  $s_i$ . Each  $u_{j}\in U$  is associated with a user vector  $\mathbf{x}_j\in \mathbb{R}^d$  representing the user feature with  $d$  dimensions. When a news story  $s_i$  is posted, some users will share  $s_i$  and generate a sequence of retweet records, which is termed a propagation path. Given a news story  $s_i$ , we denote its propagation path as  $R_{i} = \{\dots ,(u_{j},\mathbf{x}_{j},t_{j}),\dots \}$ , where  $(u_{j},\mathbf{x}_{j},t_{j})$  depicts  $j$ -th user  $u_{j}$  (with their feature vector  $\mathbf{x}_j$ )
Figure 1: The architecture of our GCAN model.
who retwrites story  $s_i$ , and  $j = 1,2,\dots,K$  (i.e.,  $K = |R_i|$ ). We denote the set of users who retweet story  $s_i$  as  $U_i$ . In  $R_i$ , we denote the user who originally shares  $s_i$  as  $u_1$  at time  $t_1$ . For  $j > 1$ , user  $u_j$  retwrites  $s_i$  at  $t_j$  ( $t_j > t_1$ ). Each story  $s_i$  is associated with a binary label  $y_i \in \{0,1\}$  to represent its truthfulness, where  $y_i = 0$  indicates story  $s_i$  is true, and  $y_i = 1$  means  $s_i$  is fake.
Given a source tweet  $s_i$ , along with the corresponding propagation path  $R_i$  containing users  $u_j$  who retweet  $s_i$  as well as their feature vectors  $\mathbf{x}_j$ , our goal is to predict the truthfulness  $y_i$  of story  $s_i$ , i.e., binary classification. In addition, we require our model to highlight few users  $u_j \in U_i$  who retweet  $s_i$  and few words  $q_k^i \in s_i$  that can interpret why  $s_i$  is identified as a true or fake one.
4 The Proposed GCAN Model
We develop a novel model, Graph-aware Co-Attention Networks (GCAN), to predict fake news based on the source tweet and its propagation-based users. GCAN consists of five components. The first is user characteristics extraction: creating features to quantify how a user participates in online social networking. The second is new story encoding: generating the representation of words in the source tweet. The third is user propagation representation: modeling and representing how the source tweet propagates by users using their extracted characteristics. The fourth is dual co-attention mechanisms: capturing the correlation between the source tweet and users' interactions/propagation. The last is making prediction: generating the detection outcome by concatenating all learned representations.
4.1 User Characteristics Extraction
To depict how users participate in social networking, we employ their metadata and profiles to define the feature vector  $\mathbf{x}_j$  of every user  $u_j$ . The extracted features are listed as follows: (1) number of words in a user's self-description, (2) number of words in  $u_j$ 's screen name, (3) number of users who follows  $u_j$ , (4) number of users that  $u_j$  is following, (5) number of created stories for  $u_j$ , (6) time elapsed after  $u_j$ 's first story, (7) whether the  $u_j$  account is verified or not, (8) whether  $u_j$  allows the geo-spatial positioning, (9) time difference between the source tweet's post time and  $u_j$ 's retweet time, and (10) the length of retweet path between  $u_j$  and the source tweet (1 if  $u_j$  retweets the source tweet). Eventually, every user feature vector  $\mathbf{x}_j \in \mathbb{R}^v$  is generated, where  $v$  is the number of features.
4.2 Source Tweet Encoding
The given source tweet is represented by a word-level encoder. The input is the one-hot vector of each word in story  $s_i$ . Since the length of every source story is different, we perform zero padding here by setting a maximum length  $m$ . Let  $\mathbf{E} = [e_1, e_2, \dots, e_m] \in \mathbb{R}^m$  be the input vector of source story, in which  $e_m$  is the one-hot encoding of the  $m$ -th word. We create a fully-connected layer to generate word embeddings,  $\mathbf{V} = [\mathbf{v}_1, \mathbf{v}_2, \dots, \mathbf{v}_m] \in \mathbb{R}^{d \times m}$ , where  $d$  is the dimensionality of word embeddings. The derivation of  $\mathbf{V}$  is given by:
$$
\mathbf {V} = \tanh  \left(\mathbf {W} _ {w} \mathbf {E} + \mathbf {b} _ {w}\right) \tag {1}
$$
where  $\mathbf{W}_w$  is the matrix of learnable weights, and  $\mathbf{b}_c$  is the bias term. Then, we utilize Gating Recurrent Units (GRU) (Chung et al., 2014) to learn the words sequence representation from  $\mathbf{V}$ . The source tweet representation learning can be depicted by:  $\mathbf{s}_t = GRU(\mathbf{v}_t)$ ,  $t \in \{1, \dots, m\}$ , where  $m$  is the GRU dimensionality. We denote the source tweet representation as  $\mathbf{S} = [\mathbf{s}^1, \mathbf{s}^2, \dots, \mathbf{s}^m] \in \mathbb{R}^{d \times m}$ .
4.3 User Propagation Representation
The propagation of source tweet  $s_i$  is triggered by a sequence of users as time proceeds. We aim at exploiting the extracted user feature vectors  $\mathbf{x}_j$ , along with the user sequence spreading  $s_i$ , to learn user propagation representation. The underlying idea is that the user characteristics in real news propagations are different from those of fake ones.
We make use of Gating Recurrent Units (GRU) and Convolutional Neural Network (CNN) to learn propagation representations.
Here the input is the sequence of feature vectors of users retweeting  $s_i$ , denoted by  $PF(s_i) = \langle \mathbf{x}_1, \mathbf{x}_2, \dots, \mathbf{x}_t, \dots, \mathbf{x}_n \rangle$ , where  $n$  is the fixed length of observed retweets. If the number of users sharing  $s_i$  is higher than  $n$ , we take the first  $n$  users. If the number is lower than  $n$ , we resample users in  $PF(s_i)$  until its length equals to  $n$ .
GRU-based Representation. Given the sequence of feature vectors  $PF(s_{i}) = \langle \dots ,\mathbf{x}_{t},\dots ,\rangle$  we utilize GRU to learn the propagation representation. Each GRU state has two inputs, the current feature vector  $\mathbf{x}_t$  and the previous state's output vector  $\mathbf{h}_{t - 1}$  , and one output vector  $\mathbf{h}_t$  . The GRUbased representation learning can be depicted by:  $\mathbf{h}_t = GRU(\mathbf{x}_t),t\in \{1,\ldots ,n\}$  , where  $n$  is the dimensionality of GRU. We generate the final GRUbased user propagation embedding  $\mathbf{h}\in \mathbb{R}^d$  by average pooling, given by  $\mathbf{h} = \frac{1}{n}\sum_{t = 1}^{n}\mathbf{h}_{t}$
CNN-based Representation. We take advantage of 1-D convolution neural network to learn the sequential correlation of user features in  $PF(s_{i})$ . We consider  $\lambda$  consecutive users at one time to model their sequential correlation, i.e.,  $\langle \mathbf{x}_t,\dots ,\mathbf{x}_{t + \lambda -1}\rangle$ . Hence the filter is set as  $\mathbf{W}_f\in \mathbb{R}^{\lambda \times v}$ . Then the output representation vector  $\mathbf{C}\in \mathbb{R}^{d\times (t + \lambda -1)}$  is given by
$$
\mathbf {C} = \operatorname {R e L U} \left(\mathbf {W} _ {f} \cdot \mathbf {X} _ {t: t + \lambda - 1} + b _ {f}\right) \tag {2}
$$
where  $\mathbf{W}_f$  is the matrix of learnable parameters,  $ReLU$  is the activation function,  $\mathbf{X}_{t:t + \lambda -1}$  depicts sub-matrices whose first row's index is from  $t = 1$  to  $t = n - \lambda +1$ , and  $b_{f}$  is the bias term.
4.4 Graph-aware Propagation Representation
We aim at creating a graph to model the potential interaction among users who retweet source story  $s_i$ . The idea is that some correlation between users with particular characteristics can reveal the possibility that the source tweet is fake. To fulfill such an idea, a graph  $\mathcal{G}^i = (U_i, \mathcal{E}_i)$  is constructed for the set of users who share source story  $s_i$  (i.e.,  $U_i$ ), where  $\mathcal{E}_i$  is the corresponding edge set. Since the true interactions between users are unknown, we consider  $\mathcal{G}^i$  is a fully-connected graph, i.e.,  $\forall e_{\alpha \beta} \in \mathcal{E}_i, u_\alpha \in U_i, u_\beta \in U_i$ , and  $u_\alpha \neq u_\beta$ ,  $|\mathcal{E}_i| = \frac{n \times (n - 1)}{2}$ . To incorporate user features in the graph, each edge  $e_{\alpha \beta} \in \mathcal{E}_i$  is associated with
a weight  $\omega_{\alpha \beta}$ , and the weight is derived based on cosine similarity between user feature vectors  $\mathbf{x}_{\alpha}$  and  $\mathbf{x}_{\beta}$ , given by  $\omega_{\alpha \beta} = \frac{\mathbf{x}_{\alpha} \cdot \mathbf{x}_{\beta}}{\|\mathbf{x}_{\alpha}\| \|\mathbf{x}_{\beta}\|}$ . We use matrix  $\mathbf{A} = [\omega_{\alpha \beta}] \in \mathbb{R}^{n \times n}$  to represent weights between any pair of nodes  $u_{\alpha}$  and  $u_{\beta}$  in graph  $\mathcal{G}^i$ .
A graph convolution network (GCN) layer (Kipf and Welling, 2017) is created based on the constructed graph  $\mathcal{G}^i$  for source tweet  $s_i$ . A GCN is a multi-layer neural network that performs on graph data and generates embedding vectors of nodes according to their neighborhoods. GCN can capture information from a node's direct and indirect neighbors through stacking layer-wise convolution. Given the matrix  $\mathbf{A}$  for graph  $\mathcal{G}^i$ , and  $\mathbf{X}$  depicting the matrix of feature vectors for users in  $\mathcal{G}^i$ , the new  $g$ -dimensional node feature matrix  $\mathbf{H}^{(l + 1)} \in \mathbb{R}^{n \times g}$  can be derived by
$$
\mathbf {H} ^ {(l + 1)} = \rho (\tilde {\mathbf {A}} \mathbf {H} ^ {(l)} \mathbf {W} _ {l}), \tag {3}
$$
where  $l$  is the layer number,  $\tilde{\mathbf{A}} = \mathbf{D}^{-\frac{1}{2}}\mathbf{AD}^{-\frac{1}{2}}$  is the normalized symmetric weight matrix  $(\mathbf{D}_{ii} = \sum_{j}\mathbf{A}_{ij})$ , and  $\mathbf{W}_l\in \mathbb{R}^{d\times g}$  is the matrix of learnable parameters at the  $l$ -th GCN layer.  $\rho$  is an activation function, i.e., a ReLU  $\rho (x) = \max (0,x)$ . Here  $\mathbf{H}^{(0)}$  is set to be  $\mathbf{X}$ . We choose to stack two GCN layers in derive the learned graph-aware representation, denoted as  $\mathbf{G}\in \mathbb{R}^{g\times n}$ .
4.5 Dual Co-attention Mechanism
We think the evidence of fake news can be unveiled through investigating which parts of the source story are concerned by which kinds of retweet users, and fake clues can be reflected by how retweet users interact with each other. Therefore, we develop a dual co-attention mechanism to model the mutual influence between the source tweet (i.e.,  $\mathbf{S} = [\mathbf{s}^1,\mathbf{s}^2,\dots,\mathbf{s}^m]$ ) and user propagation embeddings (i.e.,  $\mathbf{C} = [\mathbf{c}^1,\mathbf{c}^2,\dots,\mathbf{c}^{n - \lambda +1}]$  from Section 4.3), and between the source tweet and graph-aware interaction embeddings (i.e.,  $\mathbf{G} = [\mathbf{g}^1,\mathbf{g}^2,\dots,\mathbf{g}^n]$  from Section 4.4). Equipped with co-attention learning, our model is capable of the explainability by looking into the attention weights between retweet users in the propagation and words in the source tweet. In other words, by extending the co-attention formulation (Lu et al., 2016), the proposed dual co-attention mechanism aims to attend to the source-tweet words and graph-aware interaction users simultaneously (source-interaction co-attention), and also attend to the
source-tweet words and propagated users simultaneously (source-propagation co-attention).
Source-Interaction Co-attention. We first compute a proximity matrix  $\mathbf{F} \in \mathbb{R}^{m \times n}$  as:  $\mathbf{F} = \tanh(\mathbf{S}^{\top} \mathbf{W}_{sg} \mathbf{G})$ , where  $\mathbf{W}_{sg}$  is a  $d \times g$  matrix of learnable parameters. By treating the proximity matrix as a feature, we can learn to predict source and interaction attention maps, given by
$$
\mathbf {H} ^ {s} = \tanh  \left(\mathbf {W} _ {s} \mathbf {S} + \left(\mathbf {W} _ {g} \mathbf {G}\right) \mathbf {F} ^ {\top}\right) \tag {4}
$$
$$
\mathbf {H} ^ {g} = \tanh  (\mathbf {W} _ {g} \mathbf {G} + (\mathbf {W} _ {s} \mathbf {S}) \mathbf {F})
$$
where  $\mathbf{W}_s\in \mathbf{R}^{k\times d}$ ,  $\mathbf{W}_g\in \mathbf{R}^{k\times g}$  are matrices of learnable parameters. The proximity matrix  $\mathbf{F}$  can be thought to transforming user-interaction attention space to source story word attention space, and vice versa for its transpose  $\mathbf{F}^{\top}$ . Then we can generate the attention weights of source words and interaction users through the softmax function:
$$
\mathbf {a} ^ {s} = \operatorname {s o f t m a x} \left(\mathbf {w} _ {h s} ^ {\top} \mathbf {H} ^ {s}\right) \tag {5}
$$
$$
\mathbf {a} ^ {g} = \operatorname {s o f t m a x} \left(\mathbf {w} _ {h g} ^ {\top} \mathbf {H} ^ {g}\right)
$$
where  $\mathbf{a}^s\in \mathbb{R}^{1\times m}$  and  $\mathbf{a}^g\in \mathbb{R}^{1\times n}$  are the vectors of attention probabilities for each word in the source story and each user in the interaction graph, respectively.  $\mathbf{w}_{hs},\mathbf{w}_{hg}\in \mathbb{R}^{1\times k}$  are learnable weights. Eventually we can generate the attention vectors of source story words and interaction users through weighted sum using the derived attention weights, given by
$$
\hat {\mathbf {s}} _ {1} = \sum_ {i = 1} ^ {m} \mathbf {a} _ {i} ^ {s} \mathbf {s} ^ {i}, \quad \hat {\mathbf {g}} = \sum_ {j = 1} ^ {n} \mathbf {a} _ {j} ^ {g} \mathbf {g} ^ {j} \tag {6}
$$
where  $\hat{\mathbf{s}}_1\in \mathbb{R}^{1\times d}$  and  $\hat{\mathbf{g}}\in \mathbb{R}^{1\times g}$  are the learned coattention feature vectors that depict how words in the source tweet are attended by users who interact with one another.