Venue: EMNLP 2023

# Vera: A General-Purpose Plausibility Estimation Model for Commonsense Statements

 Jiacheng Liu\({}^{\diamondsuit}\)  Wenya Wang\({}^{\diamondsuit}\),   Dianzhuo Wang\({}^{\diamondsuit}\)

Noah A. Smith\({}^{\diamondsuit}\) Yejin Choi\({}^{\diamondsuit}\) Hannaneh Hajishirzi\({}^{\diamondsuit}\)

\({}^{\diamondsuit}\)Paul G. Allen School of Computer Science & Engineering, University of Washington

\({}^{\spadesuit}\)Allen Institute for Artificial Intelligence \({}^{\clubsuit}\)Nanyang Technological University

\({}^{\diamondsuit}\)John A. Paulson School of Engineering and Applied Sciences, Harvard University

liujc@cs.washington.edu Equal contribution.

###### Abstract

Today's language models can be remarkably intelligent yet still produce text that contains trivial commonsense errors. Therefore, we seek a retrospective verification approach that can reflect on the commonsense plausibility of the machine text, and introduce Vera, a general-purpose model that learns to estimate the commonsense plausibility of declarative statements. To support diverse commonsense domains, Vera is trained on \(\sim\)7M commonsense statements that are automatically converted from 19 QA datasets and two commonsense knowledge bases, and using a combination of three training objectives. When applied to solving commonsense problems in the verification format, Vera substantially outperforms existing models that can be repurposed for commonsense verification, even including GPT-3.5/ChatGPT/GPT-4, and it further exhibits generalization capabilities to unseen tasks and provides well-calibrated outputs. We find that Vera excels at filtering machine-generated commonsense knowledge and is useful in detecting erroneous commonsense statements generated by models like ChatGPT in real-world settings.

## 1 Introduction

We introduce Vera, a general-purpose commonsense statement verification model. This model is designed to estimate the plausibility of declarative, natural language statements based on commonsense knowledge.

We build Vera in response to the absence of good detectors of commonsense errors in text generated by language models (LMs). LMs have been advancing rapidly and have demonstrated remarkable success in various tasks, including question answering, natural language inference, sequence classification, and text generation. Yet these models still make simple commonsense mistakes. As shown in Figure 1, as of February 23, 2023, ChatGPT [6] reportedly output the text _"since the density of a marble is much less than the density of mercury, the marble would sink to the bottom of the bowl if placed in it"_, which is clearly incorrect. This kind of failure raises concerns about the reliability and trustworthiness of these models [8].

Vera estimates a plausibility score for a commonsense statement based on its commonsense knowledge about the world. It contrasts with _fact_ verification methods [12, 13], which verify the correctness of claims based on evidence from a text corpus. Vera enables plausibility estimation where direct evidence is often not retrievable from some corpus, and usually some implicit, fuzzy reasoning is needed. It operates solely with the commonsense knowledge stored in its model parameters, and does not have a retrieval component.

Vera is built on top of T5 [15], a generic pretrained LM, by finetuning on a vast collection of correct and incorrect commonsense statements sourced from knowledge bases (KBs) and question answering (QA) datasets. The 21 data sources (Table 5, appendix) amount to \(\sim\)7M statements encompassing a wide spectrum of domains, including general, scientific, physical, and social commonsense, as well as quantitative (reasoning about numbers) and qualitative (reasoning about

Figure 1: Vera estimates the correctness of declarative statements. Example adapted from a contribution made by Henry Minsky to Marcus and Davis (2023) on February 23, 2023.



qualitative relationships such as _smaller_) commonsense. We propose a novel two-stage training process that takes into account the scale and quality of data from different sources. In addition to the standard multiple-choice binary classification objectives, we adopt a supervised contrastive loss Khosla et al. (2020) to magnify the distinction between similar statements with different correctness labels. Furthermore, we propose an automatic way of augmenting the training data by eliciting LMs to generate incorrect answers to commonsense questions and empirically find it helps generalization.

We evaluate Vera in the following applications:

* **Excelling in commonsense problems over GPT-series when repurposed for verification (SS5.1).**Vera can be applied to solve multiple-choice and boolean commonsense problems when expressed in the verification format, by scoring and ranking candidate hypotheses. It substantially outperforms existing models repurposed for commonsense verification (including GPT-3.5, ChatGPT and GPT-4), improving upon the best existing baseline, Flan-T5, with absolute improvement of 6% on seen benchmarks and 4% on unseen ones.
* **Filtering LM-generated commonsense knowledge (SS5.2).**Vera can filter noisy commonsense knowledge statements generated by other LMs, improving the effectiveness of LM-generated knowledge in downstream knowledge-augmented inferences. Vera is well-calibrated, enabling filtering at customized thresholds.
* **Detecting commonsense errors in ChatGPT outputs (SS5.3).**Through a preliminary analysis, we find that Vera can identify commonsense errors made by ChatGPT in-the-wild, with a precision of 91% and a recall of 74%. An example of Vera in action is shown in Figure 1.

We hope Vera can be a useful tool for improving the commonsense correctness of existing generative LM output and inspire more effort toward general-purpose and robust verification methods.

## 2 Problem Definition and Scope

Our goal is to build a model that can estimate the plausibility of any given _commonsense statement_. The model takes as input a statement that (1) is expressed in **natural language**; (2) is **declarative**, as opposed to interrogative questions; (3) is **self-contained** without requiring additional context to comprehend; (4) has an objective, binary **correctness label**; and (5) in principle can be labeled using widely-held **commonsense knowledge** about the world. Encyclopedic knowledge (e.g., _Ljubljana is the capital of Slovenia._) is out of scope. Moving forward, unless explicitly noted, we use _commonsense statement_ to refer to statements within the above scope. Though somewhat strict, this scope covers a broad range of potential applications.

For an input commonsense statement \(x\), the model should output a real-valued score \(s\in[0,1]\) that represents its estimated plausibility of \(x\). While the gold correctness label is binary, we let the model output a score to reflect its confidence. A score of 1.0 means that it is completely confident that \(x\) is correct, and a score of 0.0 means it is completely confident that \(x\) is incorrect. When predicting correctness label from the score, we use 0.5 as the threshold.

## 3 Method

In this section, we describe the whole pipeline to build Vera. We start from curating large-scale training data including both correct and incorrect statements from diverse commonsense tasks (SS3.1). Next, we learn a scoring model that takes a statement and returns a continuous score by finetuning a LM via 3 training objectives (SS3.2). An additional post hoc calibration strategy is applied to make the output scores well-calibrated (SS3.3).

### Data Construction

Labeled commonsense statements usually do not appear in text in the wild, while some commonsense question answering (QA) datasets and commonsense knowledge bases (KBs) are good sources for this kind of statements. We collect correct and incorrect commonsense statements from the above two types of data source. Table 1 shows some examples on how these statements can be converted from QA problems and KB entries. In total, we obtain \(\sim\)7M statements (for training) from 19 QA datasets (SS3.1.1) and two KBs (SS3.1.2) that encompass a wide spectrum of commonsense domains. Table 5 (appendix) lists these datasets with statistics. All datasets we use are publicly available.

#### 3.1.1 From Commonsense QA Datasets

Numerous commonsense reasoning datasets have been published in recent years Davis (2023), and 

many of them are in the format of multiple-choice QA (selecting the correct answer out of a set of choices) or boolean (yes/no) QA. These can be easily converted to correct and incorrect commonsense statements. From multiple-choice QA problems, we combine the question and each answer choice to form declarative statements, which are correct when using the correct answer, and incorrect otherwise. From boolean QA problems, we convert the question into a declarative statement, and keep the original label as the correctness label. Concrete examples can be found in Table 1.

Statement groups.We refer to statements originating from the same problem as a _statement group_. Note that statement groups originating from multiple-choice problems contain at least two statements, of which one and only one is correct; statement groups originating from boolean problems contain only one statement, and it can be either correct or incorrect.

We do conversion to declarative statements automatically. From QA datasets, we create declarative statements from QA problems using the following method:

* If the problem contains a question, we convert the question and choice into a declarative statement using the question conversion model created by Chen et al. (2021).
* If the question is cloze-style, we replace the blank with the choice.
* If the question is an incomplete sentence and the choice is a continuation to it, we concatenate the question and the choice.
* If there is no question and the problem only asks to choose between some choices, we use the choice as the declarative statement.
* For boolean problems, we always use _yes_ as the choice and create a single declarative statement for each problem. We use the original label as the correctness label of this statement.

In total, 19 commonsense QA datasets contribute \(\sim\)200k statement groups and \(\sim\)400k statements to the training set of Vera.

LM-augmented falsehoods.Existing commonsense QA datasets are mostly manually constructed or assembled from standard school exams. A model trained on these datasets might overfit specific annotation patterns from humans which may limit generalization. Therefore, we augment QA problems with LM-generated answers and construct additional incorrect statements. Specifically, for a multiple-choice question, we use a small LM to sample 50 possible answers to the question, and select the 3 least probable answers with generation probability less than 0.15 (making these unlikely to be correct answers). This threshold is chosen based on manual inspection over a small portion of examples. We observe generated answers with probability larger than 0.15 are more likely to be plausible. We create LM-augmented falsehoods for the training set of 9 commonsense QA datasets, as noted in Table 5 (appendix).

#### 3.1.2 From Commonsense KBs

Commonsense KBs (e.g., Atomic2020 in Hwang et al. (2020), and GenericsKB in Bhakthavatsalam et al. (2020)) contain a large number of correct commonsense statements. To create incorrect statements, we automatically perturb KB entries by replacing the subject with three random subjects that appear in the KB. Table 1 shows how to convert an entry in GenericsKB to a statement group containing four statements, three of which are augmented via perturbations. The perturbed statements are relatively easy to identify and may contain false negatives. As noted in SS3.2.4, we use these KB-constructed statements in a separate training stage that precedes training with QA-constructed statements. In total, two commonsense KBs contribute \(\sim\)1.6M statement groups and \(\sim\)6M statements to the training set of Vera.

\begin{table}
\begin{tabular}{l l}  & Original example: \\  & what would someone wear to protect themselves from a common? \\  & (A) unalerate (B) bother (C) body arror (D) tank (E) hat \\  & Anserer: (C) \\  & **Converted statement group:** \\  & One would war an upaliate to protect themselves from a common. \\  & One could wear a border to protect themselves from a common. \\  & One would warp around to protect themselves from a common. \\  & One should wear a tank to protect themselves from a common. \\  & On would wear a tank to protect themselves from a common. \\  & **Original example:** \\  & Can an average dog fellowan instruction annual! \\  & Anserer: no \\  & **Converted statement group:** \\  & An average dog can follow an instruction annual. \\  & **Original example:** \\  & Rubber stamps provide a way to make messages stand out. \\  & **Converted statement group:** \\  & Rabber stamps provide a way to make messages stand out. \\  & Arabic numbers provide a way to make messages stand out. \\  & Bandages provide a way to make messages stand out. \\  & Most tenderizers provide a way to make messages stand out. \\  & \multicolumn{1}{c}{} \\ \end{tabular}
\end{table}
Table 1: Conversions from original commonsense QA problems and knowledge base entries to statement groups that are used for training.

 



### Model Training

#### 3.2.1 Model Architecture

Given a statement \(x\), Vera outputs a real-valued score \(s\in[0,1]\). As we will use a transformer-based LM as the backbone of Vera, we first extract the input representation \({\bf h}\) by selecting the last hidden state corresponding to the EOS input token. We choose EOS because it is capable to encode the entire input in both bidirectional encoder models (e.g., T5's encoder) and left-to-right decoder models (e.g., LLaMA). Then a linear layer projects \({\bf h}\) to a scalar logit \(z\), followed by a sigmoid function \(\sigma(\cdot)\) that transforms the logit into a score \(s\). Formally,

\[{\bf h}=f_{\text{LM}}(x),z=f_{\text{linear}}({\bf h}),s=\sigma(z).\]

For brevity, we use \({\bf h}(x)\), \(z(x)\) and \(s(x)\) to refer to the representation, logit and score of an arbitrary input \(x\).

#### 3.2.2 Batching

The data we construct consists of statements belonging to different statement groups. For reasons we will describe in SS3.2.3, we put all statements belonging to the same statement group into the same batch. Each batch may contain multiple complete statement groups. We denote by \(B_{G}\) the number of statement groups and \(B_{S}\) the number of statements in total within a single batch. We denote the statement groups as \(\left\{X_{j}\right\}_{j=1}^{B_{G}}\), and the statements as \(\left\{x_{i}\right\}_{i=1}^{B_{S}}\). \(\left\{X_{j}\right\}_{j=1}^{B_{G}}\) is a partition of \(\left\{x_{i}\right\}_{i=1}^{B_{S}}\). \(y_{i}\in\left\{0,1\right\}\) is the correctness label of \(x_{i}\).

#### 3.2.3 Training Objectives

The model is trained with a linear combination of three losses: a binary classification loss, a multi-class loss, and a supervised contrastive loss, \(\mathcal{L}=\alpha\mathcal{L}_{\text{bin}}+\beta\mathcal{L}_{\text{mc}}+ \gamma\mathcal{L}_{\text{ctr}}\), which we describe below.

Binary classification loss.Naively, commonsense statement verification can be viewed as a binary classification task. Under this setting, the loss is

\[\mathcal{L}_{\text{bin}}=-y_{i}\log s(x_{i})-(1-y_{i})\log(1-s(x_{i})).\]

Multi-class loss.We expect the model to be robust against nuances in commonsense statements. Ideally, the model should be able to recognize opposite correctness labels for a group of seemingly similar statements in surface forms, such as statements created from different choices of the same question, or perturbed from the same piece of knowledge in a KB. To achieve this goal, we treat each statement group as a multi-class classification problem, maximizing the log-likelihood of the single correct statement in the statement group after passing the logits through a softmax. Formally,

\[\mathcal{L}_{\text{mc}}=-\log\frac{\exp z(x_{j*})}{\sum_{c=1}^{C_{j}}\exp z( x_{jc})},\]

where \(x_{j*}\) is the correct statement in \(X_{j}\). Note that the multi-class loss is not applicable to statement groups with only one statement (i.e., statement groups from boolean QA datasets). We empirically find that the multi-class loss indeed improves generalization towards unseen multiple-choice QA datasets as indicated in Figure 3 (appendix).

Supervised contrastive loss.It has been shown Khosla et al. (2020) that supervised contrastive learning helps to improve model robustness and generalization against input variations. In light of this, we further adopt supervised contrastive learning on top of the input representations \({\bf h}\). We show in Figure 3 (appendix) that the contrastive loss indeed improve generalization to unseen datasets. For each anchor statement \(x_{i}\) in a batch, the contrastive loss aims to maximize the similarity between \(x_{i}\) and each other statement \(x_{p}\) that has the same correctness label as \(x_{i}\) (i.e., positive example). At the same time, we push apart \(x_{i}\) and other statements \(x_{n}\) that has opposite correctness label as \(x_{i}\) (i.e., negative example). The supervised contrastive loss is

\[\begin{split}&\mathcal{L}_{\text{ctr}}=\\ &-\log\frac{\sum_{k\in\mathcal{P}(i)}\exp[\text{cos}({\bf h}(x_{ i}),{\bf h}(x_{k}))/\tau]}{\sum_{k\in\mathcal{P}(i)\cup\mathcal{N}(i)}\exp[ \text{cos}({\bf h}(x_{i}),{\bf h}(x_{k}))/\tau]},\end{split}\]

where \(\tau\) is a temperature hyperparameter, cos\((\cdot,\cdot)\) refers to cosine similarity, \(\mathcal{P}(i)\subseteq[B_{S}]\) is the index set of statements that are positive examples for \(x_{i}\), and \(\mathcal{N}(i)\subseteq[B_{S}]\) is the index set of statements that are negative examples for \(x_{i}\). Formally,

\[\begin{split}&\mathcal{P}(i)=\big{\{}k~{}|~{}1\leq k\leq B_{S}, y_{k}=y_{i},k\neq i\big{\}},\\ &\mathcal{N}(i)=\big{\{}k~{}|~{}1\leq k\leq B_{S},y_{k}\neq y_{i} \big{\}}.\end{split}\]

#### 3.2.4 Two-Stage Training

Since data sourced from KBs are larger in scale but more noisy than data sourced from QA datasets, we take a two-stage training approach. In training stage A, we start from a pre-trained LM and train with data sourced from KBs. In training stage B,

we start from the model obtained in stage A and train with data sourced from QA datasets. During experiments we found that this setting is better than single-stage training with either data source or a mixture of the two.

### Inference and Calibration

An ideal plausibility estimation model should be calibrated, that is, its confidence in its predictions should be approximately equal to the actual frequency of correctness. During early experiments, we found that Vera tends to be overconfident. Therefore, we apply a post hoc calibration on Vera's output. Following the temperature scaling method introduced in Guo et al. (2017), during inference we divide the model-predicted logit by a temperature \(T\) before computing the score, that is,

\[{\bf h}=f_{\text{LM}}(x),z=f_{\text{linear}}({\bf h}),\tilde{z}=z/T,s=\sigma( \tilde{z}).\]

Note that no temperature scaling is applied during model training.

With predictions on a validation set \(\mathcal{D}=\{(x_{i},y_{i})\}^{\mathcal{D}}_{i=1}\), we estimate \(T\) that gives the minimal expected calibration error (ECE) (Naeini et al., 2015) on this validation set. Equation 1 in SSC.1 shows how ECE is computed. In practice, we use the combined development sets of the seen datasets (SS4.2) to estimate \(T\), and the optimal \(T\) becomes a parameter of Vera. Note that temperature scaling does not change the relative ordering of prediction scores, and thus the other performance metrics (e.g., accuracy) are not affected (see detailed explanation in SSB.2).

## 4 Experimental Setup

In this section, we provide more details of model training, the evaluation protocol and metrics, and describe the baseline models we benchmark.

### Training Details

Datasets.For training stage A, we use the \(\sim\)1.6M statement groups (\(\sim\)6M statements) sourced from two commonsense KBs; for training stage B, we use the \(\sim\)200k statement groups (\(\sim\)400k statements) sourced from 19 commonsense QA datasets. For each training stage, we mix the training sets of all datasets together, without any re-weighting.

Models.We use two types of pretrained LMs as the backbone of Vera: (1) the encoder of T5 (Raffel et al., 2020), which is a bidirectional encoder model; (2) LLaMA (Touvron et al., 2023), which is a left-to-right decoder model. For the T5 encoder, we start from the pretrained T5-v1.1-XXL1 whose encoder has about 5B parameters, and refer to the resulting model as VerA-T5. (During experiments we found that starting from Flan-T5-XXL2 performs slightly worse than starting from T5-v1.1-XXL.) For LLaMA, we start from the pretrained LLaMa-7B and refer to the resulting model as Vera-LLaMA. As we will see, Vera-T5 has better performance than VerA-LLaMA, so unless explicitly specified, when we say Vera we mean Vera-T5. See Table 8 (appendix) for the complete hyperparameter settings and SSC for the implementation details.

Footnote 1: [https://huggingface.co/google/t5-v1_1-xxl](https://huggingface.co/google/t5-v1_1-xxl)

Footnote 2: [https://huggingface.co/google/flan-t5-xxl](https://huggingface.co/google/flan-t5-xxl)

### Evaluation and Baselines

Evaluation protocol.We divide our evaluation into two parts: (1) _Seen_ benchmarks, whose training set is used for model training. (2) _Unseen_ benchmarks, whose training set is not used for model training. We futher divide up the unseen benchmarks into _type 1_ and _type 2_, where in type 1 benchmarks the task is similar to those in the seen benchmarks, while type 2 benchmarks are a bit further away in terms of the nature of the task. Examples of type 2 unseen benchmarks include HellaSwag which is contextualized with event descriptions, and CREAK which involves reasoning among different entities.

Depending on the nature of the evaluation benchmark, we use different metrics to evaluate our model's performance. Unless explicitly said otherwise, we report performance on the development set, where the gold labels are available, and we do not use the development sets of unseen datasets for model selection. The overall metric reported over multiple benchmarks is the unweighted average of the metric over all these benchmarks, which accounts for the differently-sized evaluation sets.

Metrics.We report accuracy for multiple-choice and balanced boolean benchmarks. For those unbalanced boolean benchmarks (e.g., LM-generated knowledge filtering datasets), we report area under the ROC curve (AUROC) and average precision (AP). To measure how well the model-predicted scores reflect confidence, we measure the ECE (Naeini et al., 2015) on the boolean benchmarks, following Equation 1.

 

Baseline Models.We compare Vera with the best publicly available models that can be directly used or repurposed for commonsense statement verification. Roughly in increasing order of performance, these models are: SKD Critic West et al. (2021), I2D2 Critic Bhagavatula et al. (2022), UnifiedQA-v2 Khashabi et al. (2022), Entailer Tafjord et al. (2022), GPT-3.5 OpenAI (2022b), ChatGPT OpenAI (2022a), GPT-4 OpenAI (2023), and Flan-T5 Chung et al. (2022). See more details in SSC.2.

## 5 Evaluation Results

In this section, we evaluate the ability of Vera to estimate the plausibility of commonsense statements and compare it with the baseline models. We show the effectiveness of Vera in three scenarios: solving commonsense problems, filtering LM-generated commonsense knowledge, and detecting commonsense errors in ChatGPT outputs.

### Solving Multiple-Choice and Boolean Commonsense Problems

The output plausibility scores from Vera can be used for solving multiple-choice and boolean commonsense problems. We first convert the problems into the statement group format (SS3.1). For multiple-choice problems, we choose the statement with the highest score in the statement group. For boolean problems, we use \(s=0.5\) as the threshold to predict correctness labels of statements.

Table 2 reports the results when Vera is applied to solve commonsense problems. See Figure 5 and Table 9, 10, 11 (appendix) for full results including AUROC and AP. On seen benchmarks (16 multiple-choice and one boolean), Vera outperforms the best baseline, Flan-T5, by 6% on (absolute) accuracy and 9% on AUROC. Vera beats Flan-T5 by 4% accuracy and 5% AUROC on type 1 unseen benchmarks (four multiple-choice and one boolean), and by 4% accuracy and 6% AUROC on type 2 unseen benchmarks (five multiple-choice and two boolean), demonstrating good generalization. Vera-T5 has better performance than VerALLaMA across the board, which may be due to its bidirectional connectivity. Aside from performance, Vera also has good calibration, with ECE no higher than 3% on seen and unseen benchmarks. The post hoc calibration method improves calibration across all three parts.

Typically we may need to choose a threshold for binary classification in boolean datasets. However, we notice that a zero logit (\(z=0\)) is generally close to the optimal decision threshold between correct and incorrect commonsense statements. Therefore we do not estimate a model-specific threshold, and simply use the default threshold: \(z=0\), or equivalently, \(s=0.5\).

### Filtering LM-generated Commonsense Knowledge

Figure 2 reports the results when Vera is applied to filter LM-generated commonsense knowledge. On the two seen benchmarks, SKD_anno and I2D2_anno, Vera is a better knowledge filter than all baseline models, in terms of both AUROC and AP. In particular, on I2D2_anno it outperforms the I2D2 critic model by 2% AUROC, which is specifically trained on the I2D2_anno dataset and does not generalize well to other benchmarks. On the unseen benchmark, Rainier_anno, Vera is also comparable with the best baselines like Flan-T5 and GPT-3.5. As for calibration, the ECE is no higher than 8% on all three benchmarks.

We find that filtering commonsense knowledge using Vera can greatly improve the performance of knowledge-augmented reasoning methods. In the Generated Knowledge Prompting framework Liu et al. (2021), when solving a commonsense QA problem, first a knowledge model generates several commonsense knowledge statements rele

\begin{table}
\begin{tabular}{l c c c} \hline \hline
**Accuracy** & **Seen** & **Unseen (type 1)** & **Unseen (type 2)** \\ \hline SKD Critic (355M) & 36.64 & 38.34 & 43.40 \\ I2D2 Critic (355M) & 55.03 & 54.79 & 67.11 \\ UnifieQA-v2 (11B) & 56.33 & 59.73 & 53.95 \\ Entainer (11B) & 73.79 & 71.47 & 70.72 \\ GPT-3.5 (175B) & 75.41 & 71.03 & 78.87 \\ ChatGPT† & 62.11 & 61.20 & 62.83 \\ GPT-† & 72.35 & 77.40 & 70.29 \\ Flan-T 

vant to the question, and then a QA model makes predictions based on them. A big problem that hinders the effectiveness of this framework is that model-generated knowledge is not always factual, and incorrect knowledge statements can mislead the QA model. We introduce Vera to filter these statements before passing them to the QA model. In particular, we keep those statements that receive a score higher than 0.5 from Vera.

Following Liu et al. (2022), we use UnifiedQA-large as the QA model, and consider two knowledge models: few-shot GPT-3 (davinci)Brown et al. (2020) and Rainier-largeLiu et al. (2022). We follow the evaluation settings as in Liu et al. (2022), and for few-shot GPT-3 (davinci), we use the same task-specific few-shot prompts and same process to generate silver knowledge as in Liu et al. (2022). Results are shown in Table 3. Applying knowledge filtering with Vera increases the usefulness of GPT-3's and Rainier's knowledge by 46% and 233%, respectively. Vera can effectively supervise and improve the quality of commonsense knowledge generated by a much larger model, GPT-3 (davinci). Detailed results (Table 12, appendix) show that there is increased effectiveness in every individual benchmark.

### Preliminary Study on Detecting Commonsense Errors made by ChatGPT

Vera can be useful in detecting commonsense mistakes made by generative LMs in-the-wild. We collected 27 anecdotes from the Internet where people reported ChatGPT making commonsense errors, and manually rewrote them into their correct versions, obtaining 54 statements in total.

When detecting incorrect commonsense statements in this dataset, Vera has a precision of 91% and a recall of 74%, amounting to an \(F_{1}\) score of 82%. Table 4 shows how Vera scores some of these erroneous commonsense statements and their manually corrected version. In 7 out of the 9 cases, Vera assigns a low score to the original, incorrect statement, and a high score to the corrected statement. For example, _"since the density of a marble is much less than the density of mercury, the marble would sink to the bottom of the bowl if placed in it"_ receives a score of 0.04 and is identified as an incorrect statement, whereas _"since the density of a marble is much less than the density of mercury, the marble would float if placed in mercury"_ receives a score of 0.96 and is identified as a correct statement. Meanwhile, there are also some failure cases. Vera believes that _"it is possible for a solar eclipse to be followed by a lunar eclipse the next day"_, and fails to reject that _"it is possible to draw a diagonal line in a triangle"_.

Figure 2: Results for filtering LM-generated commonsense knowledge with Vera. We plot the calibration curve for both the uncalibrated version (w/ faded color) and calibrated version (w/ saturated color) of the Vera model. Results on the development sets are reported. See Figure 6 for full results.

 



### Analysis

**Ablations.** We conduct an ablation study by incrementally removing the following components from the training process: contrastive loss (SS3.2.3), training stage A (SS3.2.4), LM-augmented falsehoods (SS3.1), multi-class loss or binary loss (SS3.2.3). Since at least one of the multi-class loss and the binary loss is needed, we remove them separately and observe the effect of training with a single loss.

Results are shown in Figure 3. Overall, the ablated components have more impact on unseen benchmarks than seen ones. Removing the contrastive loss hurts performance mostly on unseen datasets, implying that the contrastive objective is beneficial for generalization. Removing training stage A hurts performance across the board, emphasizing the importance of training with large-scale commonsense knowledge. LM-augmented falsehoods are most helpful on unseen benchmarks, with a little sacrifice in the performance on seen benchmarks. The multi-class loss is most helpful on multiple-choice benchmarks, while removing the binary loss substantially hurts performance on boolean benchmarks.

Scaling Trends of Vera.We trained variants of Vera that are based on smaller versions of the T5 encoder, and show the results in Figure 4. Model performance increases steadily with size, and does not show evidence of saturation at 5B parameters, suggesting that better commonsense plausibility estimation models might be yielded from larger pretrained LMs.

\begin{table}
\begin{tabular}{l l c r} \hline \hline
**Date** & **Original / Corrected** & **Score Pred** \\ \hline \multirow{2}{*}{2023/01/05} & It is possible for a solar eclipse to be followed by a lunar eclipse the next day. & 0.86 & ✓ \\  & It is impossible for a solar eclipse to be followed by a lunar eclipse the next day. & 0.48 & ✗ \\ \hline \multirow{2}{*}{2023/01/06} & The time it takes for a given number of cars to travel a fixed distance is directly proportional to the number of cars. & 0.26 & ✗ \\  & The time it takes for a given number of cars to travel a fixed distance is invariant of the number of cars. & 0.52 & ✓ \\ \hline \multirow{2}{*}{2023/01/06} & If A sits next to B and B sits next to C, then A must sit next to C. & 0.20 & ✗ \\  & If A sits next to B and B sits next to C, then A may not sit next to C. & 0.60 & ✓ \\ \hline \multirow{2}{*}{2023/01/10} & If two cats can eat twocans of food in a minute, then it would take six cats to eat threecans of food in a minute. & 0.05 & ✗ \\  & If two cats can eat twocans of food in a minute, then it would take three cats to eat threecans of food in a minute. & 0.67 & ✓ \\ \hline \multirow{2}{*}{2023/01/11} & A three-dimensional cube has eight faces. & 0.46 & ✗ \\  & A three-dimensional cube has six faces. & 0.70 & ✓ \\ \hline \multirow{2}{*}{2023/01/30} & It is possible to draw a diagonal line in a triangle. & 0.80 & ✓ \\  & It is impossible to draw a diagonal line in a triangle. & 0.28 & ✗ \\ \hline \multirow{2}{*}{2023/02/21} & 70 is a smaller number than 58. & 0.14 & ✗ \\  & 70 is a larger number than 58. & 0.85 & ✓ \\ \hline \multirow{2}{*}{2023/02/23} & Since the density of a marble is much less than the density of mercury, the marble would sink to the bottom of the bowl if placed in it. & 0.04 & ✗ \\  & Since the density of a marble is much less than the density of mercury, the marble would float if placed in mercury. & 0.96 & ✓ \\ \hline \multirow{2}{*}{2023/02/25} & Both a house and a pound of feathers weigh the same, which is one bound. & 0.25 & ✗ \\  & A house weighs more than one pound, while a pound of feathers weighs one pound. & 0.87 & ✓ \\ \hline \hline \end{tabular}
\end{table}
Table 4: Examples of commonsense mistakes made by ChatGPT, and how Vera can detect them. In each section, the first line is the original, incorrect commonsense statement in ChatGPT’s output, and the second line is the authors’ manually corrected version of the statement. Each statement is followed by Vera’s score and predicted correctness label. Examples are adapted from Venuto (2023); Marcus and Davis (2023); Borji (2023).

Figure 3: Ablation results. Average accuracy on the development sets is reported. Components are incrementally removed from the training process, except for the multi-class loss and the binary loss; the hierarchy is indicated in the legend.



Format: Verification vs. QA.In this paper, we focus on the verification format to solve commonsense problems. A comprehensive discussion on how this format compares with the QA format is provided in SSE and Figure 7.

## 6 Related Work

Commonsense verifiers.Prior work has explored the idea of verifying commonsense statements. Symbolic Knowledge Distillation West et al. (2021) and I2D2 Bhagavatula et al. (2022) train models to classify the acceptability of model-generated commonsense statements. The EntailerTafjord et al. (2022) model is partially trained to score the validity of a given hypothesis. These models are trained on relatively small-scale, domain-specific data and do not generalize well to broader commonsense domains. Some other work uses pretrained LMs with few-shot prompting to verify commonsense statements Kadavath et al. (2022); Jung et al. (2022). In this work, we develop a general-purpose commonsense statement verifier that works out-of-the-box in zero-shot setting.

Verification in other tasks.Beyond commonsense statements, the problem of verification has been extensively studied on various NLP tasks. NLI Liu et al. (2019, 2022a); Zhang et al. (2017) can be viewed as an _entailment verification_ task. Chen et al. (2021) presents a method for _QA verification_ by transforming the context passage and question-answer pair into a premise-hypothesis format as in NLI. Some work build models to perform _reasoning verification_ - classifying whether a premise supports or refutes a hypothesis Bostrom et al. (2022); Sprague et al. (2022); Yang et al. (2022); Tafjord et al. (2022). On the other hand, _fact verification_Thorne et al. (2018); Wadden et al. (2020) requires judging the validity of claims against a corpus of evidence (e.g., Wikipedia). These tasks feature context-sensitive or knowledge-intensive hypotheses to verify and are typically complemented with additional context. In contrast, we focus on verifying standalone commonsense statements where no context is required or provided.

Generation vs. verification.With the rapid progress in generative LMs, researchers have been largely building general-purpose problem-solving methods with a generative approach Khashabi et al. (2020, 2022); Lourie et al. (2021); Tafjord and Clark (2021); Wei et al. (2022). However, current generative LMs are still prone to hallucination errors and lack an intrinsic mechanism to express confidence level on their outputs. Verification, on the other hand, shows promise to complement these shortcomings and has been adopted to improve the outcome of generation Chen et al. (2021); Jiang et al. (2022). In this work, we take a pure verification approach and build a general-purpose verifier for commonsense statements, which to our best knowledge is the first of its kind.

## 7 Conclusion and Future Work

We introduced Vera, a general-purpose verification model for commonsense statements and an early step toward tools for mitigating commonsense errors in text generated by language models. Vera achieves state-of-the-art performance when solving commonsense problems in the verification format, excels at filtering LM-generated commonsense knowledge statements, and is found useful in detecting erroneous commonsense statements from generative LMs. Furthermore, the scores produced by Vera are well-calibrated; and could be used for plausibility score estimation for declarative statements if needed. As Vera mainly targets on single-sentence statements, future work may consider verification of multi-sentence or long-form statements, or contextualized/defeasible commonsense statements.

Figure 4: Scaling trends of commonsense statement verifiers.

 



## Limitations

Vera aims, and is trained, to predict the plausibility of statements based on objective commonsense knowledge of our world. It is not intended to handle text outside the scope of commonsense statements (e.g., encyclopedic facts, reading comprehension with fictional worlds). It is not trained or evaluated on moral commonsense data, so its capability of making moral predictions is unknown. It gives a prediction even if the input falls out of its intended scope, which could be mitigated by an additional scope guard to determine its applicability. In addition, it is not trained to handle very long and compositional input. Although greatly outperforming existing systems, Vera is not perfect and may make incorrect predictions. It is not very robust under syntactic variations of the input, such as paraphrases and negations. As the training data may contain bias or toxicity, Vera may also make predictions that are perceived as ethically problematic. The output of Vera does not reflect the authors' view. Vera is a research prototype, and it is not designed for making real-world decisions.

## Acknowledgments

We thank Sean Welleck, Peter West, Alisa Liu, Jaehun Jung, Chandra Bhagavatula, Ram Pasunuru, Asli Celikyilmaz, and members of the H2lab, Xlab and ARK lab for their discussion and constructive feedback. This work was funded in part by the DARPA MCS program through NIWC Pacific (N66001-19-2-4031), NSF IIS-2044660, and ONR N00014-18-1-2826. We thank OpenAI for offering access to their API.

## References

* Aroca-Ouellette et al. [2021] Stephane T Aroca-Ouellette, Cory Paik, Alessandro Roncone, and Katharina Kann. 2021. Prost: Physical reasoning about objects through space and time. In Findings., Cited by: SS5.
* B. Carrera, M. Raghavan, S. C. P. K. G. de la Torre, D. E. L. d'Aschelle, F. R. d'Elmate, and Y. Choi (2021)The automated evaluation of human language understanding. arXiv preprint arXiv:2107.03203. Cited by: SS5.
* C. Bhagavatula, J. D. Hwang, D. Downey, R. Le Bras, X. Lu, K. Sakaguchi, S. Swayamdipta, P. West, and Y. Choi (2022)I2d2: inductive knowledge distillation with neurologic and self-imitation. ArXivabs/2212.09246. External Links: Link, 2009.11203 Cited by: SS5.
* S. Bhakthavatsalam, C. Anastasiades, and P. Clark (2020)Genericskb: a knowledge base of generic statements. ArXivabs/2005.00660. Cited by: SS5.
* Y. Bisk, R. Zellers, R. Le Bras, J. Gao, and Y. Choi (2019)Piqa: Reasoning about physical commonsense in natural language. ArXivabs/1911.11641. External Links: Link, 1911.11641 Cited by: SS5.
* A. Borji (2023)A categorical archive of chatgrt failures. ArXivabs/2302.03494. External Links: Link, 2302.03494 Cited by: SS5.
* K. Bostrom, Z. Sprague, S. Chaudhuri, and G. Durrett (2022)Natural language deduction through search over statement compositions. In Conference on Empirical Methods in Natural Language Processing, Cited by: SS5.
* T. B. Brown, B. Mann, N. Ryder, M. Subbiah, J. Kaplan, P. Dhariwal, A. Neelakantan, P. Shyam, G. Sastry, A. Askell, S. Agarwal, A. Herbert-Voss, G. Krueger, T. J. Henighan, R. Child, A. Ramesh, D. M. Ziegler, J. Wu, Clemens Winter, C. Hesse, M. Chen, E. Sigler, M. Litwin, S. Gray, B. Chess, J. Clark, C. Berner, S. McCandlish, A. Radford, I. Sutskever, and D. Amodei (2020)Language models are few-shot learners. ArXivabs/2005.14165. External Links: Link, 2005.14165 Cited by: SS5.
* J. Chen, E. Choi, and G. Durrett (2021)Can nli models verify qa systems' predictions?. ArXivabs/2104.08731. External Links: Link, 2104.08731 Cited by: SS5.
* M. Chen, M. D'Arcy, A. Liu, J. Fernandez, and D. Downey (2019)Codah: An adversarially authored question-answer dataset for common sense. arXiv preprint arXiv:1904.04365. Cited by: SS5.
* H. W. Chung, L. Hou, S. Longpre, B. Zoph, Y. Tay, W. Fedus, E. Li, Xuezhi Wang, Mostafa Dehghani, Siddhartha Brahma, A. Webbson, S. Shaen Gu, Z. Dai, M. Suzgun, X. Chen, A. Chowdhrey, D. Valter, S. Narang, G. Mishra, A. Wei Yu, V. Zhao, Y. Huang, A. M. Dai, H. Yu, S. Petrov, E. hsin Chi, J. Dean, J. Devlin, A. Roberts, D. Zhou, Q. V. Le, and J. Wei (2022)Scaling instruction-finetuned language models. ArXivabs/2210.11416. External Links: Link, 2210.11416 Cited by: SS5.
* P. Clark, I. Cowhey, O. Etzioni, T. Khot, A. Sabharwal, C. Schoenick, and O. Tarjford (2018)Think you have solved question answering? try arc, the ai2 reasoning challenge. ArXivabs/1803.05457. External Links: Link, 1803.05457 Cited by: SS5.
* Ernest Davis (2023)Benchmarks for automated commonsense reasoning: a survey. ArXivabs/2302.04752. External Links: Link, 2302.04752 Cited by: SS5.
* M. Geva, D. Khashabi, E. Segal, T. Khot, D. Roth, and J. Berant (2021)Did aristolte use a laptop? a question answering benchmark with

implicit reasoning strategies. _Transactions of the Association for Computational Linguistics_, 9:346-361.
* Gordon et al. (2011) Andrew S. Gordon, Zornitsa Kozareva, and Melissa Roemmele. 2011. Semeval-2012 task 7: Choice of plausible alternatives: An evaluation of commonsense causal reasoning. In _International Workshop on Semantic Evaluation_.
* Gugger et al. (2022) Sylvain Gugger, Lysandre Debut, Thomas Wolf, Philipp Schmid, Zachary Mueller, and Sourab Mangrulkar. 2022. Accelerate: Training and inference at scale made simple, efficient and adaptable. [https://github.com/huggingface/accelerate](https://github.com/huggingface/accelerate).
* Guo et al. (2017) Chuan Guo, Geoff Pleiss, Yu Sun, and Kilian Q. Weinberger. 2017. On calibration of modern neural networks. In _International Conference on Machine Learning_.
* Hwang et al. (2020) Jena D. Hwang, Chandra Bhagavatula, Ronan Le Bras, Jeff Da, Keisuke Sakaguchi, Antoine Bosseltut, and Yejin Choi. 2020. Comet-atomic 2020: On symbolic and neural commonsense knowledge graphs. In _AAAI Conference on Artificial Intelligence_.
* Jiang et al. (2022) Albert Qiachu Jiang, Sean Welleck, Jin Peng Zhou, Wenda Li, Jiacheng Liu, Mateja Jamnik, Timothe Lacroix, Yuhuai Wu, and Guillaume Lample. 2022. Draft, sketch, and prove: Guiding formal theorem provers with informal proofs. _ArXiv_, abs/2210.12283.
* Jung et al. (2022) Jaehun Jung, Lianhui Qin, Sean Welleck, Faeze Brahman, Chandra Bhagavatula, Ronan Le Bras, and Yejin Choi. 2022. Miaeutic prompting: Logically consistent reasoning with recursive explanations. In _Conference on Empirical Methods in Natural Language Processing_.
* Kadavath et al. (2022) Saurav Kadavath, Tom Conerly, Amanda Askell, T. J. Henighan, Dawn Drain, Ethan Perez, Nicholas Schiefer, Zachary Dodds, Nova DasSarma, Eli Tran Johnson, Scott Johnston, Shee El-Showk, Andy Jones, Nelson Elhaeg, Tristan Hume, Anna Chen, Yuntao Bai, Sam Bowman, Stanislav Fort, Deep Ganguli, Danny Hernandez, Josh Jacobson, John Kernion, Shauna Kravec, Liane Lovitt, Kamal Ndousse, Catherine Olsson, Sam Ringer, Dario Amodei, Tom B. Brown, Jack Clark, Nicholas Joseph, Benjamin Mann, Sam McCandlish, Christopher Olah, and Jared Kaplan. 2022. Language models (mostly) know what they know. _ArXiv_, abs/2207.05221.
* Khashabi et al. (2022) Daniel Khashabi, Yeganeh Kordi, and Hannaneh Hajishirzi. 2022. Unifiedqa-v2: Stronger generalization via broader cross-format training. _ArXiv_, abs/2202.12359.
* Khashabi et al. (2020) Daniel Khashabi, Sewon Min, Tushar Khot, Ashish Sabharwal, Oyvind Tafjord, Peter Clark, and Hannaneh Hajishirzi. 2020. Unifiedqa: Crossing format boundaries with a single qa system. In _Findings_.
* Khosla et al. (2020) Prannav Khosla, Piotr Teterwak, Chen Wang, Aaron Sarna, Yonglong Tian, Phillip Isola, Aaron Maschinot, Ce Liu, and Dilip Krishnan. 2020. Supervised contrastive learning. In _Advances in Neural Information Processing Systems_, volume 33.
* Khot et al. (2019) Tushar Khot, Peter Clark, Michal Guerquin, Peter Alexander Jansen, and Ashish Sabharwal. 2019. Qasc: A dataset for question answering via sentence composition. _ArXiv_, abs/1910.11473.
* Kingma and Ba (2014) Diederik P. Kingma and Jimmy Ba. 2014. Adam: A method for stochastic optimization. _CoRR_, abs/1412.6980.
* Levesque et al. (2011) Hector J. Levesque, Ernest Davis, and L. Morgenstern. 2011. The winograd schema challenge. In _International Conference on Principles of Knowledge Representation and Reasoning_.
* Lin et al. (2020) Bill Yuchen Lin, Seyeon Lee, Rahul Khanna, and Xiang Ren. 2020. Birds have four legs?! numersense: Probing numerical commonsense knowledge of pretrained language models. _ArXiv_, abs/2005.00683.
* Lin et al. (2022) Stephanie Lin, Jacob Hilton, and Owain Evans. 2022. TruthfulQA: Measuring how models mimic human falsehoods. In _ACL_, pages 3214-3252.
* Liu et al. (2022a) Alisa Liu, Swabha Swayamdipta, Noah A. Smith, and Yejin Choi. 2022a. Wanli: Worker and ai collaboration for natural language inference dataset creation. In _Conference on Empirical Methods in Natural Language Processing_.
* Liu et al. (2022b) Jiacheng Liu, Skyler Hallinan, Ximing Lu, Pengfei He, Sean Welleck, Hannaneh Hajishirzi, and Yejin Choi. 2022b. Rainier: Reinforced knowledge introspector for commonsense question answering. In _Conference on Empirical Methods in Natural Language Processing_.
* Liu et al. (2021) Jiacheng Liu, Alisa Liu, Ximing Lu, Sean Welleck, Peter West, Ronan Le Bras, Yejin Choi, and Hannaneh Hajishirzi. 2021. Generated knowledge prompting for commonsense reasoning. _ArXiv_, abs/2110.08387.
* Liu et al. (2022c) Xiao Liu, Da Yin, Yansong Feng, and Dongyan Zhao. 2022c. Things not written in text: Exploring spatial commonsense from visual signals. _ArXiv_, abs/2203.08075.
* Liu et al. (2019) Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. 2019. Roberta: A robustly optimized bert pretraining approach. _ArXiv_, abs/1907.11692.
* Lourie et al. (2021) Nicholas Lourie, Ronan Le Bras, Chandra Bhagavatula, and Yejin Choi. 2021. Unicorn on rainbow: A universal commonsense reasoning model on a new multitask benchmark. In _AAAI Conference on Artificial Intelligence_ 

Gary Marcus and Ernest Davis. 2023. Chatgpt/llm errors (public). [https://docs.google.com/spreadsheets/d/1kDSERnROv5FgfbHVN8Z_bXH9ggakIZIKRotqoz@whrviCw/edit](https://docs.google.com/spreadsheets/d/1kDSERnROv5FgfbHVN8Z_bXH9ggakIZIKRotqoz@whrviCw/edit).
* Mihaylov et al. (2018) Todor Mihaylov, Peter Clark, Tushar Khot, and Ashish Sabharwal. 2018. Can a suit of armor conduct electricity? a new dataset for open book question answering. In _Conference on Empirical Methods in Natural Language Processing_.
* Mostafazadeh et al. (2016) N. Mostafazadeh, Nathanael Chambers, Xiaodong He, Devi Parikh, Dhruy Batra, Lucy Vanderwerde, Pushmeet Kohli, and James F. Allen. 2016. A corpus and cloze evaluation for deeper understanding of commonsense stories. In _North American Chapter of the Association for Computational Linguistics_.
* Naeini et al. (2015) Mahdi Pakdaman Naeini, Gregory F. Cooper, and Milos Hauskrecht. 2015. Obtaining well calibrated probabilities using bayesian binning. _Proceedings of the ... AAAI Conference on Artificial Intelligence. AAAI Conference on Artificial Intelligence_, 2015:2901-2907.
* Onoe et al. (2021) Yasumasa Onoe, Michael J.Q. Zhang, Eunsol Choi, and Greg Durrett. 2021. Creak: A dataset for commonsense reasoning over entity knowledge. _ArXiv_, abs/2109.01653.
* OpenAI (2022a) OpenAI. 2022a. Introducing chatgpt.

* OpenAI (2023) OpenAI. 2023. Gpt-4 technical report. Technical report, OpenAI.
* Raffel et al. (2020) Colin Raffel, Noam Shazeer, Adam Roberts, Katherine Lee, Sharan Narang, Michael Matena, Yanqi Zhou, Wei Li, and Peter J. Liu. 2020. Exploring the limits of transfer learning with a unified text-to-text transformer. _Journal of Machine Learning Research_, 21(140):1-67.
* Sakaguchi et al. (2019) Keisuke Sakaguchi, Ronan Le Bras, Chandra Bhagavatula, and Yejin Choi. 2019. Winogrande: An adversarial winograd schema challenge at scale. _Commun. ACM_, 64:99-106.
* Sap et al. (2019) Maarten Sap, Hannah Rashkin, Derek Chen, Ronan Le Bras, and Yejin Choi. 2019. Social iqa: Commonsense reasoning about social interactions. _ArXiv_, abs/1904.09728.
* Singh et al. (2021) Shikhar Singh, Nuan Wen, Yu Hou, Pegah Alipoormolabashi, Te-Lin Wu, Xuezhe Ma, and Nanyun Peng. 2021. Com2sense: A commonsense reasoning benchmark with complementary sentences. In _Findings_.
* Sprague et al. (2022) Zayne Sprague, Kay Bostrom, Swarat Chaudhuri, and Greg Durrett. 2022. Natural language deduction with incomplete information. In _Conference on Empirical Methods in Natural Language Processing_.
* Tafjord and Clark (2021) Oyvind Tafjord and Peter Clark. 2021. General-purpose question-answering with macaw. _ArXiv_, abs/2109.02593.
* Tafjord et al. (2018) Oyvind Tafjord, Peter Clark, Matt Gardner, Wen tau Yih, and Ashish Sabharwal. 2018. Quarel: A dataset and models for answering questions about qualitative relationships. _ArXiv_, abs/1811.08048.
* Tafjord et al. (2022) Oyvind Tafjord, Bhavana Dalvi, and Peter Clark. 2022. Entailer: Answering questions with faithful and truthful chains of reasoning. In _Conference on Empirical Methods in Natural Language Processing_.
* Tafjord et al. (2019) Oyvind Tafjord, Matt Gardner, Kevin Lin, and Peter Clark. 2019. Quartz: An open-domain dataset of qualitative relationship questions. _ArXiv_, abs/1909.03553.
* Talmor et al. (2019) Alon Talmor, Jonathan Herzig, Nicholas Lourie, and Jonathan Berant. 2019. Commonsenseqa: A question answering challenge targeting commonsense knowledge. _ArXiv_, abs/1811.00937.
* Talmor et al. (2021) Alon Talmor, Ori Yoran, Ronan Le Bras, Chandrasekhar Bhagavatula, Yoav Goldberg, Yejin Choi, and Jonathan Berant. 2021. Commonsenseqa 2.0: Exposing the limits of ai through gamification. _ArXiv_, abs/2201.05320.
* Thorne et al. (2018) James Thorne, Andreas Vlachos, Christos Christodo Christodoulopoulos, and Arpit Mittal. 2018. Fever: a large-scale dataset for fact extraction and verification. _ArXiv_, abs/1803.05355.
* Tuvron et al. (2023) Hugo Tuvron, Thibaut Lavril, Gautier Izacard, Xavier Martinet, Marie-Anne Lachaux, Timothee Lacroix, Bapistte Roziere, Naman Goyal, Eric Hambro, Faisal Azhar, Aur'elien Rodriguez, Armand Joulin, Edouard Grave, and Guillaume Lambe. 2023. Llama: Open and efficient foundation language models. _ArXiv_, abs/2302.13971.
* Venuto (2023) Giuseppe Venuto. 2023. chatgtpft-failures. [https://github.com/giuven95/chatgtpft-failures](https://github.com/giuven95/chatgtpft-failures).
* Wadden et al. (2020) David Wadden, Kyle Lo, Lucy Lu Wang, Shanchuan Lin, Madeleine van Zuylen, Armen Cohan, and Hannaneh Hajishirzi. 2020. Fact or fiction: Verifying scientific claims. _ArXiv_, abs/2004.14974.
* Wang et al. (2020) Cunxiang Wang, Shuailong Liang, Yili Jin, Yilong Wang, Xiaodan Zhu, and Yue Zhang. 2020. Semeval-2020 task 4: Commonsense validation and explanation. In _International Workshop on Semantic Evaluation_.
* Wei et al. (2022) Jason Wei, Xuezhi Wang, Dale Schuurmans, Maarten Bosma, Ed Huai hsin Chi, Quoc Le, and Denny Zhou. 2022. Chain of thought prompting elicits reasoning in large language models. _ArXiv_, abs/2201.11903.
* Welbl et al. (2017) Johannes Welbl, Nelson F. Liu, and Matt Gardner. 2017. Crowdsourcing multiple choice science questions. _ArXiv_, abs/1707.06209.
* West et al. (2021) Peter West, Chandrasekhar Bhagavatula, Jack Hessel, Jena D. Hwang, Liwei Jiang, Ronan Le Bras, Ximing Lu, Sean Welleck, and Yejin Choi. 2021. Symbolic 

knowledge distillation: from general language models to commonsense models. In _North American Chapter of the Association for Computational Linguistics_.
* Wolf et al. (2019) Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue, Anthony Moi, Pierric Cistac, Tim Rault, Remi Louf, Morgan Funtowicz, and Jamie Brew. 2019. Huggingface's transformers: State-of-the-art natural language processing. _ArXiv_, abs/1910.03771.
* Yang et al. (2022) Kaiyu Yang, Jia Deng, and Danqi Chen. 2022. Generating natural language proofs with verifier-guided search. In _Conference on Empirical Methods in Natural Language Processing_.
* Zellers et al. (2018) Rowan Zellers, Yonatan Bisk, Roy Schwartz, and Yejin Choi. 2018. Swag: A large-scale adversarial dataset for grounded commonsense inference. In _Conference on Empirical Methods in Natural Language Processing_.
* Zellers et al. (2019) Rowan Zellers, Ari Holtzman, Yonatan Bisk, Ali Farhadi, and Yejin Choi. 2019. Hellaswag: Can a machine really finish your sentence? In _Annual Meeting of the Association for Computational Linguistics_.
* Zhang et al. (2017) Sheng Zhang, Rachel Rudinger, Kevin Duh, and Benjamin Van Durme. 2017. Ordinal common-sense inference. _Transactions of the Association for Computational Linguistics_, 5:379-395.

 

More Details on Datasets

Table 6 shows more dataset statistics, and Table 7 shows the dataset citations and links from which we retrieved the datasets.

### Dataset-Specific Special Handling

For some datasets, we pre-process them into a unified multiple-choice or boolean format. We provide the details below.

Com2Sense (paired).Corn2Sense contains true and false statements that can be paired into complements. To utilize this pairing information, we place the two statements in each pair into the same statement group, and treat this as a multiple-choice dataset. Some statements in the dev set are not paired, so we discarded these examples.

CycIC (mc).CyclC contains both multiple-choice and boolean QA problems. To keep consistency in evaluation, we use only the multiple-choice problems, which is the dominant problem type in this dataset.

ComVE (task A).COVE contains data for three tasks. Task A is assigning true/false labels to paired statements, similar to Com2Sense (paired). Task B and C are about choosing and generating explanations to a given statement being against commonsense. We use the data for task A.

Skd (annotated).The annotated dataset of Symbolic Knowledge Distillation (SKD) contains LM-generated, semi-structured knowledge triples, where the head and tail events are connected by relations, such as

\[\begin{split}&\text{(PersonX doesn't like to wait, xIntent,}\\ &\quad\text{to get the job done).}\end{split}\]

Following West et al. (2021), we replace the name placeholders with random person names, and convert into natural language statements using templates adapted from Hwang et al. (2020). For example, the triple in the above example becomes

Arnold doesn't like to wait. Because Arnold wanted to get the job done.

We set the correctness label to be true iff the _valid_ field has a positive value.

I2D2 (annotated).The annotated dataset of I2D2 contains LM-generated commonsense statements with human-annotated correctness labels. We use the combination of annotated data in "Iter0" and "Iter2", because the data of "Iter1" is missing from the website.

### Conversion to Declarative Statements

From QA datasets, we create declarative statements from QA problems using the following method:

* If the problem contains a question, we convert the question and choice into a declarative statement using the question conversion model created by Chen et al. (2021).
* If the question is cloze-style, we replace the blank with the choice.
* If the question is an incomplete sentence and the choice is a continuation to it, we concatenate the question and the choice.
* If there is no question and the problem only asks to choose between some choices, we use the choice as the declarative statement.
* For boolean problems, we always use _yes_ as the choice and create a single declarative statement for each problem. We use the original label as the correctness label of this statement.

## Appendix B More Details on Method

### Training Objectives

Binary classification loss.We defined the binary classification loss as

\[\mathcal{L}_{\text{bin}}(x_{i},y_{i})=\\ -y_{i}\log s(x_{i})-(1-y_{i})\log(1-s(x_{i})).\]

To account for the fact that there are usually more incorrect statements than correct ones in the data produced from multiple-choice datasets, we divide this loss by the number of statements with the same correctness label in the same statement group. Therefore, the binary classification loss for the whole batch is

\[\mathcal{L}_{\text{bin}}=\\ \frac{1}{B_{G}}\sum_{j=1}^{B_{G}}\sum_{y\in\{0,1\}}\frac{\sum_{ c=1}^{C_{j}}\mathbb{I}[y_{jc}=y]\mathcal{L}_{\text{bin}}(x_{jc},y_{jc})}{ \sum_{c=1}^{C_{j}}\mathbb{I}[y_{jc}=y]},\]

where \(C_{j}\) is the number of statements in statement group \(X_{j}\), \(x_{jc}\) is the \(c\)th statement in \(X_{j}\), and \(\mathbb{I}\) is the indicator function 

Multi-class loss.We defined the multi-class loss as

\[{\mathcal{L}_{\text{mc}}(X_{j})=-\log\frac{\exp z(x_{js})}{\sum_{c =1}^{C_{j}}\exp z(x_{jc})}.}\]

The multi-class loss for the whole batch is

\[{\mathcal{L}_{\text{mc}}=\frac{1}{B_{G}}\sum_{j=1}^{B_{G}}{\mathcal{ L}_{\text{mc}}(X_{j})}.}\]

Supervised contrastive loss.We defined the supervised contrastive loss as

\[{\mathcal{L}_{\text{ctr}}(x_{i},y_{i})=-\log\frac{\sum_{k\in{ \mathcal{P}}(i)}e^{\frac{\cos(\mathbf{h}(x_{i}),\mathbf{h}(x_{k}))}{\tau}}}{ \sum_{k\in{\mathcal{P}}(i)\cup{\mathcal{N}}(i)}e^{\frac{\cos(\mathbf{h}(x_{i} ),\mathbf{h}(x_{k}))}{\tau}}}.}\]

The supervised contrastive loss for the whole batch is

\[{\mathcal{L}_{\text{ctr}}=\frac{1}{B_{S}}\sum_{i=1}^{B_{S}}{ \mathcal{L}_{\text{ctr}}(x_{i},y_{i})}.}\]

### Calibration

Our calibration is a post-hoc strategy and does not affect the task performance metrics we report in SS5. This is because applying our calibration method - temperature scaling - does not affect the relative order of plausibility scores assigned to a given set of statements:

* For tasks with multiple-choice questions (SS5.1), calibration does not affect the argmax prediction for the above reason.
* For commonsense knowledge filtering (SS5.2), calibration does not affect the TPR/FPR numbers at each corresponding decision point, again for the above reason, so the ROC curves are valid.
* For True/False judgment problems (SS5.1 and SS5.3), calibration does not move the plausibility scores across the decision boundary. We use logit \(z=0.0\) (or equivalently, plausibility score \(s=0.5\)) as the True/False boundary. A positive (or negative) logit remains positive (or negative) after applying the temperature.

## Appendix C More Details on Experimental Setup

Table 8 shows the hyperparamter settings for training Vera. These values are obtained from some moderate hyperparameter tuning, and we did not do extensive search due to training cost.

For tokenization, the T5 tokenizer tokenizes input so that it ends with the EOS token 
 (token ID = 1). We manually configured the LLaMA tokenizer so that its output ends with the EOS token 
 (token ID = 2), and does not contain the BOS token 
 (token ID = 1). Models are trained for \(S=50k\) steps with \(B_{G}=64\) statement groups per batch, using the Adam optimizer Kingma and Ba (2014) with learning rate \(\eta=1\times 10^{-5}\) for T5 encoder and \(\eta=2\times 10^{-6}\) for LLaMA. We train models with the Huggingface Transformers and Accelerate libraries Wolf et al. (2019); Gugger et al. (2022). For memory efficiency, during training, each statement is truncated to 128 tokens (which can accommodate more than 99% of the statements; see Table 6) and each statement group is capped to four statements.

### Definition of Metrics

Multiple-choice accuracy.For multiple-choice benchmarks, we report the multiple-choice accuracy:

\[Acc_{\text{mc}}=\frac{1}{|{\mathcal{D}}|}\sum_{X_{j}\in{\mathcal{ D}}}\mathbb{I}[x_{j*}=\operatornamewithlimits{arg\,max}_{x_{jc}\in X_{ j}}s(x_{jc})].\]

Boolean accuracy.The boolean accuracy is defined as

\[Acc_{\text{bool}}=\frac{1}{|{\mathcal{D}}|}\sum_{(x_{i},y_{i}) \in{\mathcal{D}}}\mathbb{I}\big{[}y_{i}=\mathbb{I}[z(x_{i})>0]\big{]}.\]

Boolean accuracy is applicable to balanced boolean benchmarks where there are roughly equal true and false statements (e.g., CommonsenseQA 2.0, Spatial Commonsense, StrategyQA, CREAK). Generally it is not a good metric for multiple-choice benchmarks and unbalanced boolean benchmarks.

AUROC and AP.For unbalanced boolean benchmarks (e.g., LM-generated knowledge filtering datasets), accuracy may not faithfully capture the model's performance. Instead, the metrics we use are the area under the ROC curve (AUROC) and the average precision (AP) for selecting the True statements. Statements are ranked based on their assigned raw scores, so that different score thresholds can be selected to construct the ROC and Precision-Recall curves. Aside from unbalanced boolean benchmarks, AUROC and AP are also applicable 

to multiple-choice and balanced boolean benchmarks.

Calibration.To measure how well the verifier-predicted score reflects its confidence, we measure the ECE (Naeini et al., 2015) on the boolean benchmarks. ECE is computed as

\[{\text{ECE}}=\sum_{m=1}^{M}\frac{|B_{m}|}{|\mathcal{D}|}\cdot\Big{|} \text{Acc}(B_{m})-\text{Score}(B_{m})\Big{|}\\ =\sum_{m=1}^{M}\frac{|B_{m}|}{|\mathcal{D}|}\cdot\Big{|}\frac{1}{| B_{m}|}\sum_{(x_{i},y_{i})\in B_{m}}\mathbb{I}[y_{i}=1]\\ -\frac{1}{|B_{m}|}\sum_{(x_{i},y_{i})\in B_{m}}s(x_{i})\Big{|}, \tag{1}\]

where \(M\) is the number of bins which bucket data points with similar predictions, and \(B_{m}\subseteq\mathcal{D}\) is the subset of data points that fall into the \(m\)-th bin. We use \(M=10\) equal-sized bins when computing ECE.

### Details on Baseline Models

Skd Critic.West et al. (2021) trained a critic model that filters incorrect commonsense knowledge generated by their symbolic knowledge distillation (SKD) method. This critic model is based on RoBERTa-large (Liu et al., 2019) and is finetuned on \(8k\) GPT-3-generated commonsense knowledge sentences with human-annotated true/false labels. The model predicts a \([0,1]\) score \(s\) which we use as the final score, and we let the logit \(z=\sigma^{-1}(s)\).

I2D2 Critic.Bhagavatula et al. (2022) trained a critic model that filters incorrect commonsense knowledge generated by their I2D2 method. This critic model is based on RoBERTa-large (Liu et al., 2019) and is finetuned on \(12k\) I2D2-generated commonsense knowledge sentences with human-annotated true/false labels. Given an input statement, the model predicts two logits: \(t\) for the True label and \(f\) for the False label. We let the logit \(z=t-f\) and the score \(s=\sigma(t-f)\). We use the critic model trained in the final iteration (i.e., "Iter 2" in I2D23).

Footnote 3: [https://gengen.apps.allenai.org/](https://gengen.apps.allenai.org/)

UnifiedQA-v2 (Khashabi et al., 2022) is a general-purpose QA model trained on datasets with a variety of input formats, including boolean datasets. When the input is a declarative statement, the model is trained to output either "yes" or "no". We use this feature of the model and make it act as a commonsense statement verifier. For an input statement, we compute the logits received by "yes" and "no" in the decoder, denoted as \(t\) and \(f\), respectively. We let the logit \(z=t-f\) and the score \(s=\sigma(t-f)\). We use the largest version of this model, UnifiedQA-v2-11b.4

Footnote 4: [https://huggingface.co/alleni/unifiedqa-v2-t5-11b-12510@0](https://huggingface.co/alleni/unifiedqa-v2-t5-11b-12510@0)

Entailer.Entailer (Tafjord et al., 2022) is a model trained to construct proof trees for scientific commonsense hypotheses. This multi-angle model can be used in three ways: (1) given a hypothesis, generate a set of premises that may entail it; (2) given a hypothesis, predict a score that reflects the model's belief in it; (3) given a hypothesis and set of premises, predict a score that reflects whether there is a valid entailment between them. We use (2) as a commonsense statement verifier. The model predicts a \([0,1]\) score \(s\) which we use as the final score, and we let the logit \(z=\sigma^{-1}(s)\). We use the largest version of this model, Entailer-11b.5

Footnote 6: [https://platform.openai.com/docs/api-reference/completions](https://platform.openai.com/docs/api-reference/completions)

Gpt-3.5.GPT-3.5(OpenAI, 2022b) is a series of general-purpose autoregressive decoder-only LMs. To make it act as a commonsense verifier, we use the following input prompt:

Question: Based on commonsense knowledge, is the following statement correct? Please answer yes or no. Statement: (statement) Ansuer:

We query the OpenAI Completions API7 with this prompt and compute the logits received by " Yes" and " No" in the next-token prediction, denoted as \(t\) and \(f\), respectively. We let the logit \(z=t-f\) and the score \(s=\sigma(t-f)\). We experimented with several prompt formats and found the one presented above to have the best performance, and in most cases, " Yes" and " No" together receive most of the probability mass during next-token prediction. We also experimented with several models in the GPT-3 (Brown et al., 2020) and GPT-3.5 series, and found GPT-3.5 (text-davinci-002) to work the best. Additionally, we report a baseline where the (negated) language modeling perplexity is used for 

commonsense plausibility. Note that the plausibility scores derived this way are not normalized, and we only use them for ranking purposes. For this baseline, we use GPT-3.5 (text-davinci-002) as the base model, and name it as "PPL (GPT-3.5)".

**ChatGPT and GPT-4.** ChatGPT (OpenAI, 2022a) and GPT-4 (OpenAI, 2023) are optimized for chat. To make them act as a commonsense verifier, we use the same input prompt as for GPT-3.5, without the "Answer:" line. We query the OpenAI Chat API7 with this prompt in a user message, and obtain the first token of the assistant message in the response. Besides this zero-shot setting, we additionally report a few-shot chain-of-thought Wei et al. (2022) setting with 5 in-domain examples, formatted as additional user-assistant message pairs prior to the query user message.

Footnote 7: [https://platform.openai.com/docs/api-reference/chat](https://platform.openai.com/docs/api-reference/chat)

Since the API does not provide token logits, we let the score \(s=1.0\) when this token is "Yes", and \(s=0.0\) when this token is "No". In the unlikely case that this token is neither, we let \(s=0.5\). We add a small random noise to the score. This is to arbitrate potentially multiple positive predictions within statement groups from multiple-choice QA problems, and to enable plotting the ROC and precision-recall curves. Note that this is not an ideal solution and may cause under-estimation of ChatGPT and GPT-4's performance.

Flan-T5.Flan-T5 Chung et al. (2022) is a series of sequence-to-sequence LMs instruction-finetuned on massive number of tasks. To make it act as a commonsense verifier, we use the same input prompt as for GPT-3.5. We compute the logits received by "yes" and "no" in the first token prediction in the decoder, denoted as \(t\) and \(f\), respectively. We let the logit \(z=t-f\) and the score \(s=\sigma(t-f)\). We experimented with several prompt formats and found the one presented above to have the best performance, and in most cases, "yes" and "no" together receive most of the probability mass during the token prediction. We use the largest version of this model, Flan-T5-XXL.8 Note that some unseen benchmarks are in the training data of Flan-T5; see Table 7 for details on data contamination.

Footnote 8: [https://huggingface.co/google/flan-t5-xxl](https://huggingface.co/google/flan-t5-xxl)

## Appendix D More Evaluation Results

Figure 5 is an expansion of Table 2 and additionally shows the precision-recall curves on problem-solving benchmarks. Table 9, Table 10, and Table 11 show the per-dataset breakdown of the accuracy numbers in Figure 5. Figure 6 is an expansion of Figure 2 and additionally shows the precision-recall curves on knowledge-filtering benchmarks. Table 12 shows the per-dataset breakdown of the accuracy numbers in Table 3.

## Appendix E Further Analysis

Format: Verification vs. QA.In this paper, we have been using the verification format to approach problem-solving tasks. But do we lose something when compared to using the QA format? In Figure 7 we compare how well existing models can solve problems in the verification format and the QA format. Verification format does fall behind QA format, especially with models trained exclusively in QA format (i.e., UnifiedQA-v2). We also trained a sequence-to-sequence model in QA format on the same multiple-choice data as Vera. It leads Vera by 1.5% on seen multiple-choice benchmarks. We hypothesize that this is because verification models only see one option at a time, whereas QA models can see all choices of a problem at the same time and thus can do comparative ranking.

In addition to the performance loss, a verification model does lose the generative capability possessed by some QA models that are generative (e.g., UnifiedQA in Khashabi et al. (2020)), and it has to run \(C\) times to solve a \(C\)-way multiple-choice problem, whereas QA models (e.g., UnifiedQA in Khashabi et al. (2020), Unicorn in Mourie et al. (2021)) need to run only once.

However, verification models can perform some tasks that generative QA models cannot cover. They can classify the correctness of declarative statements, without having to convert them into questions in the first place. They can also reflect on the answer produced by a generative QA model, and provide a level of confidence. We argue that verification models and generative QA models have different best-application scenarios and are sometimes complementary to each other.

 



\begin{table}
\begin{tabular}{l l r r r r r r r} \hline
**Abbr.** & **Name** & **Domain** & **Format** & **\# Train Ex.** & **Aug** & **\# Dev Ex.** & **\# Statements** & **\# True** & **\# False** \\ \hline  & & & & & & & & & \\ \multicolumn{7}{c}{Stage A training} \\ Atomic2020 & Atomic2020 & multiple-choice (4) & 803541 & 70731 & 282924 & 70731 & 212193 \\ GenericsKB & GenericsKB & multiple-choice (4) & 775820 & 96977 & 387908 & 96977 & 290931 \\
**Total** & & & & & & & \\ \multicolumn{7}{c}{Stage B training (seen)} \\ ORQA & OpenBookQA & scientific & multiple-choice (4) & 4957 & ✓ & 500 & 2000 & 500 & 1500 \\ ARC\_e & ARC (easy) & scientific & multiple-choice (4) & 2251 & ✓ & 570 & 2281 & 570 & 1711 \\ ARC\_h & ARC (hard) & scientific & multiple-choice (4) & 1119 & ✓ & 299 & 1194 & 2pig & 895 \\ AI2Sci\_e & AT2 Science (elem) & scientific & multiple-choice (4) & 623 & ✓ & 123 & 489 & 123 & 366 \\ AI2Sci\_m & AI2 Science (middle) & scientific & multiple-choice (4) & 605 & ✓ & 125 & 502 & 125 & 377 \\ CSQA & CommonsenseQA & general & multiple-choice (5) & 9741 & ✓ & 1221 & 6099 & 1221 & 4878 \\ QASC & QASC & scientific & multiple-choice (8) & 8134 & ✓ & 926 & 7408 & 926 & 6482 \\ PIQA & Physical IQA & physical & multiple-choice (2) & 16113 & 1838 & 3676 & 1838 & 1838 \\ SIOA & Social IQA & social & multiple-choice (3) & 33410 & ✓ & 1954 & 5861 & 1954 & 3907 \\ WG & Winogrande & general & multiple-choice (2) & 40398 & & 1267 & 2534 & 1267 & 1267 \\ C2S & Com2Sense (paired) & general & multiple-choice (2) & 804 & 391 & 782 & 391 & 391 \\ SciQ & Sciq & scientific & multiple-choice (4) & 11679 & ✓ & 1000 & 4000 & 1000 & 3000 \\ QuaRel & QuaRel & qualitative & multiple-choice (2) & 1941 & 278 & 556 & 278 & 278 \\ QuaRTrz & QuaRTz & qualitative & multiple-choice (2) & 2696 & 384 & 768 & 384 & 384 \\ CyIC IC & CyIC (mc) & general & multiple-choice (5) & 6521 & 907 & 4535 & 907 & 3628 \\ ConvVE & ConvVE (task A) & general & multiple-choice (2) & 10000 & 997 & 1994 & 997 & 997 \\ CSQA2 & CommonsenseQA 2.0 & general & boolean & 9264 & 2541 & 2541 & 1225 & 1316 \\ SKD\_anno & SKD (annotated) & & boolean & 7980 & 1015 & 1015 & 803 & 212 \\ I2D2\_anno & I2D2 (annotated) & & boolean & 26206 & 13094 & 13094 & 6158 & 6936 \\
**Total** & & & **194442** & **29430** & **61329** & **20966** & **40363** \\ \cline{6-7}  & & & Evaluation (unseen type 1) & & & & & \\ WSC & WC & general & multiple-choice (2) & 0 & 273 & 546 & 273 & 273 \\ COPA & COPA & general & multiple-choice (2) & 0 & 500 & 1000 & 500 & 500 \\ NumerSense & NumerSense & quantitative & multiple-choice (11) & 0 & 200 & 2200 & 2000 & 2000 \\ PROST & PROST & physical & multiple-choice (4) & 0 & 18736 & 74944 & 18736 & 56208 \\ SpatialCS & Spatial Commonsense & physical & boolean & 0 & 1448 & 1448 & 724 & 724 \\ Rainier\_anno & Rainier (annotated) & & boolean & 0 & 591 & 591 & 424 & 167 \\
**Total** & & & **0** & **21748** & **80729** & **20857** & **59872** \\ \hline  & & & & & & & \\ \end{tabular} Evaluation (unseen type 2)

\begin{tabular}{l l c c c c c} SWAG & SWAG & multiple-choice (4) & 0 & 20006 & 80024 & 20006 & 60018 \\ HellaSwag & HellaSwag & multiple-choice (4) & 0 & 10042 & 40168 & 10042 & 30126 \\ CODAH & CDOAH & multiple-choice (4) & 0 & 2776 & 11104 & 2776 & 8328 \\ SCT & Story Cloze Test & multiple-choice (2) & 0 & 1871 & 3742 & 1871 & 1871 \\ \(\alpha\)NLI & \(\alpha\)NLI & multiple-choice (2) & 0 & 1532 & 3064 & 1532 & 1532 \\ StrategyQA & StrategyQA & boolean & 0 & 229 & 229 & 107 & 122 \\ CREAK & CREAK & boolean & 0 & 1371 & 1371 & 691 & 680 \\
**Total** & & & **0** & **37827** & **139702** & **37025** & **102677** \\ \hline \end{tabular}
\end{table}
Table 5: Datasets and statistics. Data sourced from commonsense KBs are listed under Stage A training, and data sourced from commonsense QA datasets are listed under Stage B training. The number in parentheses under the **Format** column represents the number of choices per question. The **Aug** column indicates whether LM-augmented falsehoods are generated for each dataset. The last three columns are the number of total, correct and incorrect statements in the development set. See Table 6 for more dataset statistics, and Table 7 for full citations and sources for these datasets.





\begin{table}
\begin{tabular}{l l c r r r r r} \hline \hline
**Abbr.** & **Name** & \multicolumn{6}{c}{**Statement Length**} \\  & min & median & 90\% & 95\% & 99\% & max \\ \hline \multicolumn{7}{c}{Stage A training} \\ \hline Atomic2020 & Atomic2020 & 5 & 19 & 24 & 26 & 30 & 57 \\ GenericsKB & GenericsKB & 4 & 13 & 22 & 24 & 28 & 82 \\ \hline \multicolumn{7}{c}{Stage B training (seen)} \\ \hline OBQA & OpenBookQA & 5 & 16 & 29 & 36 & 56 & 74 \\ ARC\_e & ARC (easy) & 6 & 24 & 50 & 60 & 86 & 111 \\ ARC\_h & ARC (hard) & 7 & 30 & 59 & 70 & 94 & 138 \\ AI2Sci\_e & AI2 Science (elem) & 7 & 29 & 63 & 79 & 455 & 473 \\ AI2Sci\_m & AI2 Science (middle) & 7 & 24 & 58 & 72 & 511 & 536 \\ CSQA & CommonsenseQA & 5 & 18 & 28 & 32 & 43 & 73 \\ QASC & QASC & 5 & 13 & 19 & 21 & 24 & 30 \\ PIQA & Physical IQA & 5 & 26 & 62 & 80 & 120 & 256 \\ SIQA & Social IQA & 10 & 28 & 38 & 41 & 51 & 70 \\ WG & Winogrande & 17 & 24 & 31 & 34 & 38 & 42 \\ C2S & ComZsense (paired) & 12 & 24 & 34 & 38 & 44 & 55 \\ SciQ & SciQ & 6 & 19 & 29 & 34 & 48 & 75 \\ QuaRel & QuaRel & 15 & 39 & 62 & 80 & 101 & 107 \\ QuaRTz & QuaRTz & 9 & 29 & 44 & 49 & 73 & 78 \\ CycIC & CycIC (mc) & 6 & 31 & 59 & 67 & 97 & 122 \\ ComVE & ComVE (task A) & 4 & 10 & 14 & 16 & 20 & 28 \\ CSQA2 & CommonsenseQA 2.0 & 5 & 14 & 24 & 29 & 38 & 58 \\ SKD\_anno & SKD (annotated) & 13 & 20 & 25 & 27 & 31 & 37 \\ I2D2\_anno & I2D2 (annotated) & 5 & 15 & 21 & 24 & 31 & 41 \\ \hline \multicolumn{7}{c}{Evaluation (unseen type 1)} \\ \hline WSC & WSC & 10 & 22 & 33 & 39 & 45 & 48 \\ COPA & COPA & 10 & 17 & 21 & 23 & 26 & 28 \\ NumerSense & NumerSense & 6 & 13 & 20 & 23 & 32 & 36 \\ PROST & PROST & 17 & 42 & 63 & 68 & 78 & 78 \\ SpatialCS & Spatial Commonsense & 9 & 12 & 17 & 18 & 19 & 20 \\ Rainier\_anno & Rainier (annotated) & 5 & 12 & 19 & 21 & 29 & 33 \\ \hline \multicolumn{7}{c}{Evaluation (unseen type 2)} \\ \hline SWAG & SWAG & 12 & 30 & 46 & 52 & 67 & 148 \\ HellaSwag & HellaSwag & 15 & 103 & 134 & 140 & 149 & 181 \\ CODAH & CODAH & 5 & 21 & 31 & 34 & 45 & 73 \\ SCT & Story Cloze Test & 29 & 56 & 69 & 72 & 78 & 89 \\ \(\alpha\)NLI & \(\alpha\)NLI & 17 & 35 & 44 & 47 & 53 & 65 \\ StrategyQA & StrategyQA & 6 & 14 & 20 & 22 & 25 & 30 \\ CREAK & CREAK & 8 & 14 & 20 & 22 & 29 & 50 \\ \hline \hline \end{tabular}
\end{table}
Table 6: More dataset statistics. This table shows the percentiles of statement lengths (as in number of T5 tokens) in each dataset.





\begin{table}
\begin{tabular}{l l c r r} \hline \hline
**Abbr.** & **Name** & **Citation** & **Link** & **In Flan-T5?** \\ \hline  & \multicolumn{4}{c}{Stage A training} \\ \hline Atomic2020 & Atomic2020 & Hwang et al. (2020) & [https://allenai.org/data/atomic-2020](https://allenai.org/data/atomic-2020) & yes \\ GenericsKB & GenericsKB & Bhakhavatsalam et al. (2020) & [https://allenai.org/data/genericskb](https://allenai.org/data/genericskb) & yes \\ \hline  & \multicolumn{4}{c}{Stage B training (seen)} \\ OBQA & OpenBookQA & Minylov et al. (2018) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ ARC\_e & ARC (easy) & Clark et al. (2018) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ ARC\_h & ARC (hard) & Clark et al. (2018) & [https://github.com/allenai/unifiedga](https://github.com/allenai/unifiedga) & yes \\ AI2Sci\_e & Al2 Science (elem) & Clark et al. (2018) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & no \\ AI2Sci\_m & AZScience (middle) & Clark et al. (2018) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & no \\ CSQA & CommonsenseQA & Talmor et al. (2019) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ QASC & QASC & Khot et al. (2019) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ PIQA & Physical IQA & Bisk et al. (2019) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ SIQA & Social IQA & Sap et al. (2019) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ WG & Winogrande & Sakaguchi et al. (2019) & [https://github.com/allenai/unifiedqa](https://github.com/allenai/unifiedqa) & yes \\ C2S & Com2Series (paired) & Singh et al. (2021) & [https://github.com/PlusAutkLP/Com2sense/tree/](https://github.com/PlusAutkLP/Com2sense/tree/) & yes \\ SciQ & SciQ & Welth et al. (2017) & [https://alleni.org/data/scq](https://alleni.org/data/scq) & yes \\ QuaRel & QuaRel & Tafjord et al. (2018) & [https://allenai.org/data/quareql](https://allenai.org/data/quareql) & yes \\ QuaRTz & QuaRLr & Tafjord et al. (2019) & [https://alleni.org/data/quartz](https://alleni.org/data/quartz) & yes \\ CyClC & CyCIC (mc) & – & [https://leaderboard.allenai.org/cyci/](https://leaderboard.allenai.org/cyci/) & no \\ ConvVE & ConVE (task A) & Wang et al. (2020) & [https://github.com/wangconxiang/](https://github.com/wangconxiang/) & no \\ CSAQ2 & CommonsenseQA 2.0 & Talmor et al. (2021) & [https://github.com/allenai/csqa2/tree/master/](https://github.com/allenai/csqa2/tree/master/) & no \\ SKD\_anno & SKD (annotated) & West et al. (2021) & [https://github.com/peterwestia2/](https://github.com/peterwestia2/) & no \\  & & & symbolic-knowledge-distillation/tree/main/ & \\  & & & purification code & purification code \\ I2D2\_anno & 12D2 (annotated) & Bhagavatula et al. (2022) & [https://gengen.apps.allenai.org](https://gengen.apps.allenai.org) & no \\ \hline  & \multicolumn{4}{c}{Evaluation (unseen type 1)} \\ WSC & WSC & Levesque et al. (2011) & [https://huggingface.co/datasets/winograd_wsc](https://huggingface.co/datasets/winograd_wsc) & yes \\ COPA & COPA & Gordon et al. (2011) & [https://huggingface.co/datasets/sweer_glue](https://huggingface.co/datasets/sweer_glue) & yes \\ NumerSense & NumerSense & Lin et al. (2020) & [https://github.com/INKU-UC/NumerSense/tree/main/](https://github.com/INKU-UC/NumerSense/tree/main/) & yes \\ PROST & PROST & Aroca-Ouellette et al. (2021) & [https://huggingface.co/datasets/corypwalk/prost](https://huggingface.co/datasets/corypwalk/prost) & yes \\ SpatialCS & Spatial Commonsense & Liu et al. (2022c) & [https://github.com/xxxiaoli/spatial-commonsense](https://github.com/xxxiaoli/spatial-commonsense) & no \\ Rainier\_anno & Rainier (annotated) & Liu et al. (2022b) & [https://github.com/liuicht998/rainier](https://github.com/liuicht998/rainier) & no \\ \hline  & \multicolumn{4}{c}{evaluation (unseen type 2)} \\ SWAG & SWAG & Zellers et al. (2018) & [https://github.com/rowanz/swagaf/tree/master/](https://github.com/rowanz/swagaf/tree/master/) & yes \\ HellaSwag & HellaSugg & Zellers et al. (2019) & [https://github.com/rowanz/hellasug/tree/master/](https://github.com/rowanz/hellasug/tree/master/) & yes \\ CDBAH & CODAH & Chen et al. (2019) & [https://github.com/Websail-NU/CODAH/tree/master/](https://github.com/Websail-NU/CODAH/tree/master/) & yes \\ SCT & Story Cloze Test & Mostafazadeh et al. (2016) & [https://cs.rochester.edu/nlp/roctories/](https://cs.rochester.edu/nlp/roctories/) & yes \\ \(\alpha\)NLJ & \(\alpha\)NLI & Bhagavatula et al. (2019) & [https://leaderboard.allenai.org/anli/submissions/](https://leaderboard.allenai.org/anli/submissions/) & yes \\ StrategyQA & StrategyQA & Geva et al. (2021) & [https://github.com/eladesegal/strategya/tree/](https://github.com/eladesegal/strategya/tree/) & yes \\ CREAK & CREAK & Onoe et al. (2021) & [https://github.com/yasumasaonoe/creak/tree/main/](https://github.com/yasumasaonoe/creak/tree/main/) & yes \\ \hline \hline \end{tabular}
\end{table}
Table 7: More dataset details. We show the link from which we retrieved each dataset, and whether each dataset is included in the training data of Flan-T5.

\begin{table}
\begin{tabular}{c c p{341.4pt}} \hline \hline
**Symbol** & **Value** & **Description** \\ \hline \(L\) & 128 & Max number of tokens in the input statement \\ \(B_{G}\) & 64 & Number of statement groups per batch \\ \(C\) & 4 & Max number of statements in each group, during training \\ \(B_{S}\) & 256 & Max number of statements per batch, during training \\ \(S\) & 50,000 & Total number of training steps in each stage \\ \(\eta_{\text{T5}}\) & \(1\times 10^{-5}\) & Learning rate for Vera with T5 encoder backbone \\ \(\eta_{\text{LLMA}}\) & \(2\times 10^{-6}\) & Learning rate for Vera with LLaMA backbone \\ \(\alpha\) & 1.0 & Weight of binary classification loss \\ \(\beta\) & 1.0 & Weight of multiple-choice loss \\ \(\gamma\) & 0.1 & Weight of supervised contrastive loss \\ \(\tau\) & 0.05 & Temperature in supervised contrastive loss \\ \hline \hline \end{tabular}
\end{table}
Table 8: Hyperparameter settings.



Figure 5: Results on problem-solving with Vera on seen and unseen benchmarks. Average results on the development sets are reported. Accuracy across different parts (seen, unseen (type 1), unseen (type 2)) are not directly comparable due to different underlying benchmarks. For calibration curves, curves with saturated colors are results after applying post hoc calibration (§3.3), while curves with faded colors are results from the raw logits.

 



\begin{table}
\begin{tabular}{l c

Figure 6: Results for filtering LM-generated commonsense knowledge with Vera. Results on the development sets are reported.

 



## Appendix A

Figure 7: Comparing verification and QA, the two different formats for problem-solving tasks. Average accuracy on the development sets of the seen multiple-choice benchmarks is reported. We use text-davinci-002 as GPT-3.5 here, and gpt-3.5-turbo-0301 as ChatGPT. Vera in QA format actually means a T5 model finetuned on the same seen multiple-choice data as Vera.