{'fraction_non_alphanumeric': 0.03465070971333148, 'fraction_numerical': 0.011967715001391595, 'mean_word_length': 4.708101667990468, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Automatic Fact-Checking with Document-level Annotations using BERT and Multiple Instance Learning

Automatic fact-checking is crucial for recognizing misinformation spreading on the internet. Most existing fact-checkers break down the process into several subtasks, one of which determines candidate evidence sentences that can potentially support or refute the claim to be verified; typically, evidence sentences with gold-standard labels are needed for this. In a more realistic setting, however, such sentence-level annotations are not available. In this paper, we tackle the natural language inference (NLI) subtask—given a document and a (sentence) claim, determine whether the document supports or refutes the claim—only using document-level annotations. Using fine-tuned BERT and multiple instance learning, we achieve 81.9% accuracy, significantly outperforming the existing results on the WikiFactCheck-English dataset.


Introduction
As the volume of information present on the internet steeply increases, automatic fact-checking has become a promising approach to identify and stop the spread of misinformation. Active research in this area has been supported in part by a handful of carefully curated datasets (Thorne et al., 2018a;Hanselowski et al., 2019;Wadden et al., 2020).
While these datasets have been playing a crucial role in the development of the latest fact-checkers, they do not faithfully represent the reality in certain aspects. First, these datasets come with short evidence snippets for the claims; most existing factcheckers rely on such sentence-level evidence annotations to build the natural language inference (NLI) component of their systems-e.g. given an evidence sentence and a claim sentence, determine if the claim is supported (Thorne et al., 2018b). Second, most of the datasets consist of synthetic claims written by annotators based on snippets of * Work done while at the University of Richmond evidence. Both aspects render it difficult to readily apply the findings in real applications. WikiFactCheck-English (Sathe et al., 2020) was constructed to address the aforementioned concerns. The dataset consists of 124k entries each consisting of a claim 1 , context, and evidence document extracted from English Wikipedia articles. (See Table 1 for an example.) We believe that the real claims and lengthy evidence documents without sentence-level annotations will lead to factcheckers that can better handle claims in the wild.
In this paper, we tackle the NLI subtask-given a document and a (sentence) claim, determine whether the document supports or refutes the claim-only using document-level annotations. We improve on existing systems trained and tested on the WikiFactCheck-English dataset during both steps of the 2-step pipeline: evidence retrieval and support verification. We find that fine-tuned BERT with multiple instance learning (MIL)to use multiple candidate evidence sentencesresults in about 13% increase in accuracy over the baseline. However, incorporating Sentence-BERT (SBERT) (Reimers and Gurevych, 2019) to identify candidate evidence sentences during evidence retrieval does not lead to a noticeable improvement.

Related Works
Many recent works on automatic fact-checking have attempted to employ Transformers, BERT in particular. This was motivated by BERT having showed promising results for many NLP tasks (Devlin et al., 2019). To mention a few relevant examples, Soleimani et al. (2020) tackle the shared task from the third FEVER workshop (Christodoulopoulos et al., 2020) by constructing a 2-step pipeline. They use BERT in the evidence retrieval step to rank evidence by relevance. Then, BERT is employed once more in the support verification step to make the final prediction using the retrieved evidence. We also have a 2-step pipeline, but methods used in each step is distinct from their work. Lee et al. (2020) take a new approach using BERT to the otherwise traditional pipeline of factchecking in FEVER-like tasks. The authors treat BERT as a knowledge base and use its masked language modeling predictions to decide the factual correctness of the claim. While it is a novel approach, it does not provide a promising performance gain in practice. Also, we are working with a dataset where the claims are extracted from Wikipedia, but BERT uses Wikipedia as part of its training. For these reasons, we decided that this approach would not be suitable in our work. Zhong et al. (2020) highlight the complexity of the fact-checking task, where more than one sentence collectively support or refute a claim. Thus, the authors create semantic graphs and reason over these structures using graph convolutional network and graph attention netowrk. There report improvement in performance in the FEVER task (Thorne et al., 2018a). In our work, we assume a simple semantic structure of evidence sentences. This is based on an observation that when people cite a document in support of their factual claim in Wikipedia, the claim tends to be one of the main points of the document. And points are typically stated in a single sentence or span over consecutive sentences.
The work we build off of in this paper is from Sathe et al. (2020). The authors released a new fact-checking dataset with only document-level annotations that we use in this work. Along with it, they presented baseline systems consisting of a two-step pipeline: evidence retrieval and support verification. In our work, we adopt the same pipeline but make improvements to each step using BERT-based approaches. Also, unlike their approach, we retrieve multiple sentences during the evidence retrieval step and compute the final aggregated prediction using multiple instance learning.

Method
We tackle the NLI subtask of automatic fact checking-given a relevant document (a list of sentences E c ) and a claim c, determine whether the E c supports or refutes c. This is done in two-steps: (1) evidence retrieval and (2) support verification, as shown in Figure 1. The same pipeline was used in Sathe et al. (2020); we improve both steps using BERT-based approaches and multiple instance learning to make use of multiple candidate evidence sentences.

Evidence Retrieval
The evidence retrieval step involves retrieving candidate evidence sentence(s) from the evidence document E c that either supports or refutes the claim c. We retrieve the top k sentences (e 1 , e 2 , ..., e k ) ∈ E c that are most similar to c. These in turn are likely to be relevant for verifying c.
We improve on the Levenshtein distance (LD) used in the baseline (Sathe et al., 2020), by incorporating SBERT (Reimers and Gurevych, 2019). SBERT uses siamese and triplet networks to derive sentence embeddings capturing semantic similarities. Because the claims and evidence documents in the WikiFactCheck-English dataset are drawn from distinct sources, they are often dissimilar in their content and style. Thus, we expect SBERT capturing semantic similarity to be more effective than LD capturing surface-level textual similarity. We use a pretrained SBERT architecture fine-tuned to STS-B (semantic textual similarity benchmark), part of the popular NLU benchmark set 'GLUE' (generalized language understanding and evaluation) (Wang et al., 2018).
Given the large number of sentences in E c , we first filter out sentences least-likely to be the evidence sentence: Of the sentence in E c that have at least 1 word overlap with the claim, we use SBERT with a classification layer outputting a scalar similarity score to determine k most similar sentences for k = 1, 3, 5.

Support Verification
The support verification step takes a claim c and a list of candidate evidence sentence(s) e 1 , e 2 , ..., e k ∈ E c from the previous step and outputs a distribution over two labels denoting the relative likelihood of whether the claim is 'supported' or 'refuted' by E c . Our approach to this step involves two subparts: natural language inference (NLI) and attention-based aggregation. Again, E c may contain one or more sentences that support or refute c, but there is no sentence-level goldstandard label for NLI for each sentence in E c .
Thus, we use multiple instance learning (MIL) (Angelidis and Lapata, 2018;Ilse et al., 2018) to learn sentence-level labels in a semisupervised manner by aggregating over multiple labels and computing loss at the document level.
In the following, BERT [CLS]... denotes the contextualized representation of the [CLS] token obtained after passing in [CLS], E 1 , E 2 , . . . [SEP], C 1 , C 2 , . . . as the input to BERT. Here, the [CLS] token is a special token whose representation is meant to capture relevant features of the input for classification (Devlin et al., 2019).
We first initialize a binary ("supported" and "refuted") NLI classifier using BERT [CLS]... : where y contains the predictions for the claim and evidence sentence pairs.
Notice that for a claim c and top-k candidate evidence sentences e 1 , e 2 , . . . , e k , we have k input pairs e i , c . For each pair, we have an NLI prediction y i . However, we only have the ground truth label corresponding to E c , c . Therefore, we will use another MLP to transform the same representation used for NLI to compute softmaxed attention weights a over the sentences.
Here, each element a i of a is the attention weight for aggregating the predictions for c, e i . Then our aggregated document-level predicted label is: where y is a vector giving the probability distribution over the two labels, "supported" and "refuted". Loss is computed using Cross Entropy loss with the appropriate ground truth label. In the case when k = 1, the attention weight for the single prediction is by default 1, and this automatically reduces to not using MIL.

Setup
The experiments were conducted on the WikiFactCheck-English dataset. We trained the models using a randomly sampled set of 10k supported claims, each with a corresponding refuted claim, for a total of 20k examples selected from the training set. Then, the performances were measured on the heldout test set of about 10k supported claims, each with a corresponding refuted claim, for a total of about 20k examples to match the setup from Sathe et al. (2020).
We performed a hyperparameter search for learning rates between 1e−5 to 5e−4 in increments of powers of 10; for gradient accumulation steps between 4 and 16 in increments of 4; pretrained BERT models among bert-base-uncased (the 'vanilla' BERT) and bert-base-mnli (vanilla BERT finetuned on the MNLI dataset from Williams et al. (2018)).

System System Components Performance
Evidence Retrieval k Support Verification Prec. Rec. F1 Acc.  Table 2: We take the best performing system (with respect to accuracy) by Sathe et al. (2020) as the baseline.
In that system, Levenshtein distance (LD) is used to find k=1 most similar sentence to the claim in the evidence document, among the sentences that have at least one word overlap (WO) with the claim. Then, logistic regression is used to make a prediction. LD + BERT improves on the baseline in the support verification step using BERT and larger k's-# of candidate evidence sentences-with multiple instance learning (MIL). SBERT+BERT improves on LD+BERT by using SBERT to find k most similar sentences to the claim among those with one or more WO.

Results and Analysis
As summarized in Table 2, the best performing system, SBERT+BERT with k = 5, achieves 81.9% accuracy and 81.0% F1. This is a significant improvement over the best performing system from Sathe et al. (2020). Most of the improvement is attributable to the use of fine-tuned BERT during support verification; simply replacing logistic regression with BERT in the inference stage leads to 13% increase in accuracy. This is expected given the strong performance of BERT on various NLP tasks. Small additional gains seem to result from using multiple candidate evidence sentences. For k = 1, 3, 5, there is a mostly consistent upward trend in performance across the board, though the magnitude is small. The increase in performance is greater between k = 1 and 3, compared that between to 3 and 5, meaning the positive impact may diminish as k increases. In theory, using multiple candidate evidence sentences can be helpful in at least two ways. First, it can reduce the error propagating from evidence retrieval to support verification. That is, it is less likely that the true evidence sentence is not included in the top-5 most similar sentences than in the top-1. Second, multiple sentences may collectively serve as evidence for a given claim. In this case, each evidence sentence would partially verify the claim, thus having a single evidence sentence would not be enough.
Incorporating SBERT in evidence retrieval improves the performance only when multiple evidence sentences are used. And when it does help, the difference is marginal. This suggests that identifying evidence sentences based on LD, which quantifies the textual similarity, is comparable to relying on SBERT, which is intended to measure semantic similarity. We suspect that this could be due to the characteristics of this particular dataset; the evidence documents are previously published documents cited in support of factual claims made on Wikipedia articles. Often, these claims are very similar to a sentence in the document, as there is little incentive to rephrase the claim. This is different from other datasets in which annotators are instructed to write novel claims based on evidence sentences or snippets.

Conclusion and Future Work
We presented a 2-step pipeline to determine if a document supports or refutes a claim only using document-level annotations. Fine-tuned BERT with MIL to use multiple candidate evidence sentences resulted in about 13% increase in accuracy over the baseline. However, incorporating SBERT in evidence retrieval did not lead to additional gains that are noticeable.
In the future, we want to leverage the context, as sentences in this dataset, and in the wild, are often not self-contained. We expect the context to be useful for disambiguating keywords in both evidence retrieval and support verification. Note that both the claim and evidence sentences have contexts, and the context of an evidence sentence is a potential evidence sentence itself. Both opens up many possibilities to be explored.