wikillm

Paper · 2021-11-04 · cs.CL, cs.CR, cs.LG

Adversarial GLUE: A Multi-Task Benchmark for Robustness Evaluation of Language Models

A robustness benchmark for five GLUE tasks (SST-2, QQP, MNLI, QNLI, RTE). Its adversarial examples come from 14 attacks and are filtered for cross-model transfer, fidelity and five-annotator agreement. Author-reported: ten tested models average 30.3 to 60.9 on AdvGLUE, against 85.7 to 93.2 on GLUE.

Adversarial robustnessBenchmark validityLanguage model pretrainingText classificationbenchmarkrobustnessadversarial-examplesglue

arXivPDFCodeMarkdown18 min read

AI-compiled by claude-haiku-5-5 on 2026-10-18, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

In plain words

Language models that do well on standard language-understanding tests can still be thrown off by text that has been changed a little. A typo, a swapped synonym or an irrelevant extra sentence can flip the answer, even though a person reads the same meaning.

This paper builds a test set for that weakness. It takes five tasks from the GLUE benchmark: sentiment, question pairs and three sentence-pair tasks. It runs many published attack methods to produce altered inputs that current models get wrong. Then it removes the altered inputs that change the meaning or that people would label differently. What remains is a hard test set that is scored with the same metrics as GLUE. The authors find that models which do well on GLUE do much worse on this set.

TL;DR

  • A benchmark of adversarial examples for five GLUE tasks: SST-2, QQP, MNLI, QNLI and RTE §3.1 tab. 1.
  • The examples come from 14 attack entries. Automatic filters check transfer across surrogate models and fidelity; crowd workers then validate what remains §3.2 §3.3.
  • Only the dev split is public. Test scores come from a hidden test set that is evaluated on CodaLab §3.5.
  • Author-reported: ten tested models average 30.3 to 60.9 on AdvGLUE, against 85.7 to 93.2 on GLUE tab. 4.
  • The authors present it as a diagnostic test set beside GLUE, not as a replacement for it app. A.8.

Problem

  • Pre-trained language models reach high GLUE scores, yet adversarial text can make them fail §1.
  • Robustness methods each use their own adversary, so their numbers are not comparable §1.
  • Many automatic attacks produce invalid examples. The abstract reports that around 90% either change the original meaning or mislead human annotators. The introduction reports that only about 10% reach a four-of-five annotator consensus that matches the original label [abstract] §1.
  • Toolkits that apply ad hoc transformations have no quality check. One cited study found validity as low as 65.5% §2.
  • Human-written adversarial sets are of high quality, but they are limited by annotator effort and cover fewer phenomena §2.

Method

Examples are generated against surrogate models, filtered automatically, checked by crowd workers, then merged and split into dev and test §3.2 to §3.5. Figure 1 gives an overview of this pipeline fig. 1.

1. Scope and source data

  • Tasks: SST-2, QQP, MNLI, QNLI and RTE. CoLA is left out because it has no well-defined automatic attack; WNLI is left out because it has too little data for attacks §3.1.
  • Source: the GLUE dev sets. For QQP, QNLI and MNLI-m/mm, 1,000 cases are sampled from the dev sets; the other tasks use the whole dev set §3.2.
  • Metrics and training data follow GLUE. Models are trained on GLUE training data and then evaluated on AdvGLUE §3.1.

Counts per perturbation column in the test set tab. 1:

CorpusTask|Train| (GLUE)|Test| (AdvGLUE)C1C2C3C4C5C6C7C8C9C10C11
SST-2sentiment67,3491,4202041979117564211320158000
QQPparaphrase363,8464224215117357537065000
QNLINLI/QA104,74396873139719872159219800057
RTENLI2,490304434431272348880000
MNLINLI392,7021,8646940211416112821738601941930
Sum4,9784319333244963626721,01330319419357

Columns: C1 swaps in embedding-nearest words, C2 uses typos, C3 uses context-aware substitutions, C4 uses knowledge-base substitutions and C5 mixes these in one attack (word level); C6 rewrites syntax, C7 adds distractions (sentence level); C8 to C11 are the human-crafted sets, in the order CheckList, StressTest, ANLI and AdvSQuAD tab. 1 §3.2. The caption states that C7 is applied to four tasks, not QQP, and that C8 applies to SST-2, QQP and QNLI tab. 1.

2. Attacks

Word-level perturbations §3.2.1:

  • TextBugger (C2, typo-based). Finds important words and replaces them with typos §3.2.1.
  • TextFooler (C1, embedding similarity). Ranks word importance, then swaps in synonyms chosen by cosine similarity of word embeddings §3.2.1.
  • BERT-ATTACK (C3, context-aware). Uses masked-language-model predictions to propose replacements in context §3.2.1.
  • SememePSO (C4, knowledge-guided). Finds substitutions from HowNet sememes and searches the combinations with particle swarm optimisation §3.2.1.
  • CompAttack (C5, compositions). A whitebox attack that combines the other word-level perturbations and tries to change as few words as possible §3.2.1 app. A.4.

Sentence-level perturbations §3.2.2:

  • SCPN (C6, syntactic). A paraphraser conditioned on the 10 most frequent templates from ParaNMT-50M §3.2.2 app. A.4.
  • T3 (C6, syntactic). A whitebox attack that perturbs the context vector at the root of a syntax tree §3.2.2.
  • AdvFever (C6, syntactic). Entailment-preserving rewrite rules; all 23 templates are used §3.2.2 app. A.4.
  • StressTest (C7, distraction). Appends a fixed suffix to the hypothesis of NLI pairs. The suffix is three short statements: "and true is true", "and false is not true", and "and true is true" repeated five times §3.2.2.
  • CheckList (C7, distraction). Adds randomly generated URLs and handles §3.2.2.

Human-crafted examples §3.2.3:

  • CheckList (C8): temporal and negation capability tests for SST-2, QQP and QNLI.
  • StressTest (C9): numerical-reasoning tests for MNLI.
  • ANLI (C10): human-in-the-loop NLI examples, used in MNLI.
  • AdvSQuAD (C11): a distracting sentence appended to the paragraph, used in QNLI with "not answered" labels §3.2.3.

The 14 attack entries are grouped in 11 columns. CheckList and StressTest each appear twice, once as distraction (C7) and once as human-crafted (C8, C9), so the entries cover 12 distinct methods §3.2.3, footnote tab. 1.

Attack hyperparameters stated in the paper app. A.4:

AttackSetting stated in the paper
TextBuggerFive strategies: insert a space, delete a character, swap a character for a keyboard neighbour, swap for a look-alike, swap two characters. The first four keep edit distance 1; the swap keeps it at 2. Spaces are inserted only in words under 6 characters; swaps only in words over 4 characters.
TextFoolerCosine-similarity threshold 0.8 for the sentiment task (SST-2), 0.7 for the others; 50 synonyms per word.
BERT-ATTACK48 candidate words; threshold 0.4 to filter antonyms using synonym dictionaries.
SememePSOMaximum and minimum inertia weights 0.8 and 0.2; maximum and minimum movement probabilities 0.8 and 0.2; population 60.
CompAttackObjective: perturbation norm plus c times an attack term g(x'). The value of c is not stated. Perturbation is constrained to typo, WordNet and BERT-embedding spaces.
T3Scaling constant 1e4; optimising confidence 0; at most 100 steps per iteration; learning rate 0.1.
SCPNPre-trained models from the official codebase; CoreNLP 3.7.0 with the Shift-Reduce parser.
AdvFeverAll 23 official templates.

The paper states that these attacks use the official hyperparameters where they exist, and that CompAttack's objective follows T3 and C&W app. A.4 eq. 3.

3. Surrogate models and transfer

  • Examples are generated against three surrogate models: BERT, RoBERTa and a RoBERTa ensemble. This follows the ANLI setup §3.2.
  • Automatic filter 1 (transferability). An example is kept only if it also changes the prediction of the other two surrogates §3.3. The paper does not define "successfully transfer". This card reads it as misclassification by the other surrogates (inferred).
  • Automatic filter 2 (fidelity), word level. Examples in which more than 15% of the words are modified are removed §3.3.
  • Automatic filter 2 (fidelity), sentence level. Examples are scored with BERTScore against the original, and those with the highest similarity are kept. The fraction that is kept is not stated §3.3.
Pseudocode
# Automatic filtering of word- and sentence-level candidates  [§3.3]
# Input:  candidates with original, adversarial, label and source surrogate
# Output: candidates that pass both automatic filters

def automatic_filter(candidates, surrogates):
    # Filter 1: keep a candidate only if the other two surrogates also
    #  change its label; "successfully transfer" read as misclassified
    #  (inferred)  [§3.3]
    transferred = []
    for candidate in candidates:
        others = [m for m in surrogates if m is not candidate.source]
        fooled = [predict(m, candidate.adversarial) != candidate.label
                  for m in others]
        if all(fooled):
            transferred.append(candidate)
    # Filter 2, word level: drop if more than 15% of words changed  [§3.3]
    kept = [c for c in transferred
            if word_modification_rate(c) <= 0.15]
    # Filter 2, sentence level: keep the highest BERTScore; the cut-off is
    #  not stated  [§3.3]
    return kept

4. Human validation

  • Crowd workers come from Amazon Mechanical Turk §3.3.
  • Training phase. Each worker labels batches of 20 GLUE dev examples and sees the correct answer after each one. Workers with at least 85% correct are qualified §3.3 app. A.7.
  • Filtering phase. Each batch has 10 adversarial examples from one attack. Each example is labelled by 5 annotators. An example is kept only if it has a 4-vote consensus and its majority label equals the original label. This keeps examples that are valid and unambiguous §3.3.
  • The filtering pay is twice the training pay §3.3. Per-batch pay, worker counts and human accuracy by task tab. 11:
CorpusPay per batchQualified workersHuman acc. (avg.)Human acc. (vote)Fleiss kappa
SST-2$0.47089.295.00.738
MNLI$1.03380.485.00.615
RTE$1.06685.892.00.602
QNLI$1.04185.691.00.684
QQP$0.55886.490.00.691

5. Merging, splitting and release

  • Distraction-based and human-crafted examples skip the automatic and human filters. They are valid by construction or by crowd labels §3.5.
  • Merging: for each attack, the average number of curated examples per attack is calculated. The same number is sampled from the distraction and human-crafted sets, with the same label distribution §3.5.
  • Split: the benign GLUE dev data is split 9:1. Adversarial examples built on the 90% form the hidden test set; the rest form the public dev set. Human-crafted examples are split 90:10 at random §3.5.
  • Label distribution and split sizes tab. 8:
CorpusMetricGLUE dev (labels)GLUE testAdvGLUE devAdvGLUE test
SST-2acc.428:4441,82172:76590:830
QQPacc./F125,545:14,885390,96546:32297:125
QNLIacc.2,702:2,7615,46374:74394:574
RTEacc.146:1313,00035:46123:181
MNLImatched/mismatched acc.6,942:6,252:6,45319,64392:84:107706:565:593

Label orders follow the caption of tab. 8: SST-2 negative:positive, QQP not equivalent:equivalent, QNLI true:false, RTE entailment:not entailment, MNLI entailment:neutral:contradiction.

Hyperparameters

Two sets are given: the target-model training settings in app. A.6, with the values found in the official repository at code_commit, and the attack settings in app. A.4, which the repository does not contain.

Target-model fine-tuning. The paper's values come from app. A.6. Code values are per-device batch sizes from the scripts, not the paper's claims.

ModelPaper app. A.6Code at code_commitWhere
BERT (Large)4 epochs; RTE 10 epochs; learning rate 2e-5; batch 256 (QNLI 512)4 epochs including RTE; learning rate 2e-5; batch 32; max sequence length 128; warmup 4 to 300 steps by taskrun_large_rte.sh run_large_mnli.sh
ELECTRA (Large)learning rate 5e-5; batch 32; weight decay 0.01; RTE 10 epochs, other tasks 2No ELECTRA scripts; training_script/electra/ is an empty directory
RoBERTa (Large)10 epochs; learning rate 2e-5; batch 64 (QNLI 32)10 epochs; learning rate 2e-5; batch 16 (RTE), 4 (SST-2, QNLI), 8 (MNLI, QQP)run_large_rte.sh run_large_qnli.sh
T5 (Large)10 epochs; learning rate 2e-5; batch 64 (QNLI 32); GLUE templates from the T5 paperNot in the repositorynot applicable
ALBERT (XXLarge)"default" settings; max steps SST-2 20935, MNLI 10000, QNLI 33112, QQP 14000, RTE 800; batch 32 (MNLI, QQP), 128 (others)SST-2: learning rate 1e-5, per-device batch 2 with 16 accumulation steps, 20935 steps. MNLI: learning rate 3e-5, batch 2 with 64 accumulation steps, 10000 steps, warmup 1000. Max sequence length 512.run_xxlarge_v2_sst2.sh run_xxlarge_v2_mnli.sh
DeBERTa (Large)"official" settings; learning rate 1e-5 for all tasks; batch 64 (MNLI, QQP), 32 (others)RTE: 6 epochs, learning rate 1e-5, batch 8, max sequence length 320. MNLI: 3 epochs, learning rate 2e-5, batch 16. QQP: 8 epochs, learning rate 1e-5, batch 16.run_large_rte.sh run_large_mnli.sh run_large_qqp.sh
SMART (BERT, RoBERTa)Grid search; the best of all trained models is reportedNot checked against the repositoryapp. A.6
FreeLB (RoBERTa)Every combination from the official codebase; the best is keptNot checked against the repositoryapp. A.6
InfoBERT (RoBERTa)Batch 32; learning rate 2e-5 for all tasks; hyperparameters chosen by the best accuracy on GLUE dev and AdvGLUE testNot checked against the repositoryapp. A.6 §4

Hardware: 8 V100 GPUs with 256 GB memory app. A.6. No total compute or training time is given per model.

Attack settings: all are given in the attack table in §3.2 above, from app. A.4. No attack code is in the repository, so these values cannot be checked against code.

Results

Author-reported. Models are fine-tuned on GLUE training data, using the settings above, and evaluated on the AdvGLUE test set and on GLUE dev. Each task score is accuracy (QQP also F1; MNLI matched and mismatched averaged). The Avg column is the mean over the five tasks tab. 4 §4.

Main results tab. 4.

ModelSST-2MNLI (m/mm)RTEQNLIQQP (acc/F1)Avg AdvGLUEAvg GLUEΔ
BERT (Large)33.0328.72/27.0540.4639.7737.91/16.5633.6885.7652.08
ELECTRA (Large)58.5914.62/20.2223.0357.5461.37/42.4041.6993.1651.47
RoBERTa (Large)58.5250.78/39.6245.3952.4857.11/41.8050.2191.4441.23
T5 (Large)60.5648.43/38.9862.8357.6463.03/55.6856.8290.3933.57
ALBERT (XXLarge)66.8351.83/44.1773.0363.8456.40/32.3559.2291.8732.65
DeBERTa (Large)57.8958.36/52.4678.9557.8560.43/47.9860.8692.6731.81
SMART (BERT)25.2126.89/23.3238.1634.6136.49/20.2430.2985.7055.41
SMART (RoBERTa)50.9245.56/36.0770.3952.1764.22/44.2853.7192.6238.91
FreeLB (RoBERTa)61.6931.59/27.6062.1762.2942.18/31.0750.4792.2841.81
InfoBERT (RoBERTa)47.6150.39/41.2639.4754.8649.29/35.5446.0489.0643.02

Δ is GLUE average minus AdvGLUE average. This holds for every row.

Key statements, with the table values they rest on:

  • Highest AdvGLUE averages: DeBERTa (Large) 60.86 and ALBERT (XXLarge) 59.22 tab. 4 §4.
  • Lowest: SMART (BERT) 30.29 and BERT (Large) 33.68 tab. 4.
  • Largest drop: SMART (BERT), 55.41 points; the text says "as large as 55%" tab. 4 §4.
  • ELECTRA (Large) drops from 93.16 to 41.69 §1 tab. 4. The text notes that ELECTRA is lower on AdvGLUE than the surrogate RoBERTa (Large) §4.
  • Robust training: SMART (RoBERTa) 53.71 against RoBERTa 50.21; the improvement is reported as "over 3.71%" in the text §4 (see Pitfalls). FreeLB (RoBERTa) 50.47 and InfoBERT (RoBERTa) 46.04 tab. 4.

Attack curation statistics tab. 3 per attack, averaged over the three surrogate models. Column SPSO is SememePSO, TF TextFooler, TB TextBugger, CA CompAttack, BA BERT-ATTACK, T3 T3, SCPN SCPN, AdvFever AdvFever. The Avg column is the average over attacks for each task.

TaskMetricSPSOTFTBCABAT3SCPNAdvFeverAvg
SST-2ASR ↑89.0895.3888.0831.9139.7797.6965.370.5763.48
SST-2Curated ASR ↑8.298.978.854.024.0410.456.880.236.47
SST-2Filter Rate ↓90.7190.6290.0486.6389.8189.2789.4760.0085.82
SST-2Fleiss Kappa ↑0.220.200.500.210.240.230.290.120.26
SST-2Curated Fleiss Kappa ↑0.510.490.670.460.450.440.470.200.52
SST-2Human Accuracy ↑0.850.860.910.880.850.780.850.500.87
MNLIASR ↑78.4561.5069.3568.5865.0291.2387.732.2565.51
MNLICurated ASR ↑3.481.558.943.112.583.416.750.303.77
MNLIFilter Rate ↓95.5997.5587.1295.4596.1096.2792.3186.6393.38
MNLIFleiss Kappa ↑0.280.240.530.390.320.280.240.350.33
MNLICurated Fleiss Kappa ↑0.650.590.740.650.600.560.600.510.67
MNLIHuman Accuracy ↑0.850.830.910.890.830.840.910.830.89
RTEASR ↑76.6775.6785.8973.3672.0592.3988.456.6271.39
RTECurated ASR ↑6.208.1410.036.975.587.058.302.536.85
RTEFilter Rate ↓91.9389.2188.2990.7292.1692.3190.6161.3487.07
RTEFleiss Kappa ↑0.300.320.580.350.250.330.430.580.38
RTECurated Fleiss Kappa ↑0.490.670.800.630.420.600.640.650.66
RTEHuman Accuracy ↑0.770.950.940.870.790.890.910.860.92
QNLIASR ↑71.8867.0382.5467.2460.5396.4167.370.9764.25
QNLICurated ASR ↑3.922.875.874.092.697.593.900.003.87
QNLIFilter Rate ↓94.6395.8992.8993.9295.7892.1694.21100.0094.93
QNLIFleiss Kappa ↑0.070.050.160.100.140.070.12-0.160.11
QNLICurated Fleiss Kappa ↑0.370.430.490.340.530.370.43-0.44
QNLIHuman Accuracy ↑0.800.860.850.820.920.890.92-0.85
QQPASR ↑45.8648.5957.9249.3343.6648.2044.370.3042.28
QQPCurated ASR ↑1.521.745.873.050.761.471.500.001.99
QQPFilter Rate ↓96.7396.5089.9093.8398.2897.0496.62100.0096.11
QQPFleiss Kappa ↑0.260.270.380.270.240.250.29-0.30
QQPCurated Fleiss Kappa ↑0.320.460.620.480.400.100.47-0.51
QQPHuman Accuracy ↑0.840.980.970.890.780.891.00-0.89

Statements from the same section §3.4: curated ASR stays at or below 10.45 in every cell; the filter rate is the average over the three surrogates, and the paper's text gives 60 to 80% of examples filtered by transferability and word-modification rate, 30 to 40% by low human agreement, and 20 to 30% by label changes §3.3 app. A.7 tab. 12. Human accuracy is measured with one random annotator against the majority label §3.4.

Diagnostic report tab. 5. Per-model accuracy against each perturbation column, macro-averaged over tasks (the values are as published; see Pitfalls for sample sizes).

ModelC1C2C3C4C5C6C7C8C9C10C11
BERT (Large)42.0231.9645.1845.8633.8544.8624.1616.3323.2013.4710.53
ELECTRA (Large)43.0745.1247.9546.3347.3343.4733.3032.2026.2926.9452.63
RoBERTa (Large)56.5457.1960.4749.8155.9250.4941.8937.7828.3516.5835.09
T5 (Large)60.0467.9464.6059.8458.5050.5442.2069.0223.2017.1052.63
ALBERT (XXLarge)66.7167.6173.4970.3659.5263.7649.1445.5539.6926.9443.86
DeBERTa (Large)65.0774.8768.0265.3062.5457.4147.2245.0852.0622.8054.39
SMART (BERT)45.1731.0442.8945.2330.7640.7416.628.2018.5610.361.75
SMART (RoBERTa)62.9358.0365.0962.6561.3755.3140.1339.2728.3515.5431.58
FreeLB (RoBERTa)51.9553.2352.9251.1552.1850.7537.7266.8723.7129.0264.91
InfoBERT (RoBERTa)55.4755.7859.0251.3355.4844.5631.4934.3142.2714.5143.86

Statements in the paper §4: models are most vulnerable to the human-crafted examples (C8 to C11), where numerical reasoning, negation and coreference appear; among sentence-level attacks, distraction (C7) hurts more than syntactic changes (C6); among word-level attacks, typo (C2) and knowledge-guided (C4) perturbations are the most effective. The paper also says that BERT (Large) scores below random-guess accuracy on AdvGLUE for all tasks; the random-guess value is not given.

Paper vs code

Official code: https://github.com/AI-secure/adversarial-glue, cloned at 2e18301c3e6b0fed775834d64e9e431745df92ed (shallow clone, HEAD). The project page the paper names links to it §1 (project page at https://adversarialglue.github.io). The repository's README names the same author list and calls it the official code base for this paper [README.md].

What the repository contains: evaluate.py, human-evaluation HTML files, and fine-tuning scripts per model. It does not contain the attack generators or the filtering code, so the attack settings in app. A.4 and the curation in §3.3 cannot be checked against code.

  • Training hyperparameters disagree with the paper. Examples:
  • Settings the paper does not state. Warmup steps vary by task in the BERT scripts (4 to 300) run_large_mnli.sh and maximum sequence length is 128 for BERT and RoBERTa, 320 for DeBERTa RTE and 512 for ALBERT run_large_rte.sh run_xxlarge_v2_sst2.sh.
  • Missing model scripts. ELECTRA and T5 are not in the repository, so their rows in tab. 4 cannot be checked against code.
  • Evaluation script. evaluate.py loads a metric file named glue_metrics.py evaluate.py. That file is not in the repository, so the script cannot run as shipped. Its score is the mean of five task averages, with MNLI matched and mismatched averaged first evaluate.py. This reproduces the Avg column of tab. 4: checked for BERT (Large), 33.68, and DeBERTa (Large), 60.86. The help text says results go to stdout by default, but the script writes a file only when -o is given evaluate.py evaluate.py.
  • Code license. No LICENSE file at the repository root. The only LICENSE file is in training_script/DeBERTa_sift/ (MIT, Microsoft), which holds third-party DeBERTa code. This card therefore records code_license as not stated. No code is quoted here.

Pitfalls

  • Attack count. The abstract says 14 attacks. Table 1 has 11 columns, and CheckList and StressTest each appear twice, so there are 12 distinct methods §3.2.3, footnote tab. 1.
  • Sampling is ambiguous. "1,000 cases" for QQP, QNLI and MNLI does not say whether it is per task or per split, nor whether it is per attack §3.2.
  • Equations 1 and 2 are ill-defined as typed. Each term divides by an indicator that is zero when the source example is misclassified, so the term is undefined for those examples eq. 1 eq. 2. The likely intent is a ratio over correctly classified originals (inferred). Filter Rate is 1 minus Curated ASR over ASR §3.4.
  • Transfer criterion and fidelity cut-off not stated. "Successfully transfer" is not defined (see Method). For sentence-level attacks the share of examples kept by BERTScore is not stated §3.3.
  • Robustness claim wording. The text says TextBugger has "the highest Curated ASR and Curated Fleiss Kappa across different tasks" §3.4. Table 3 disagrees in places: T3 has the highest curated ASR on SST-2 (10.45 against 8.85 for TextBugger) and QNLI (7.59 against 5.87), and BERT-ATTACK has the highest curated Fleiss kappa on QNLI (0.53 against 0.49) tab. 3.
  • "Near 0.6" curated agreement. The paper says Curated Fleiss Kappa is "near 0.6" §3.4. The per-task averages in tab. 3 range from 0.44 (QNLI) to 0.67 (MNLI).
  • Improvement arithmetic. The text says SMART (RoBERTa) improves RoBERTa (Large) "over 3.71%" on average §4. Table 4 gives 53.71 and 50.21, a difference of 3.50 points tab. 4.
  • Selection on the test set. InfoBERT's hyperparameters are chosen by the best accuracy on the AdvGLUE test set §4. SMART reports the best of all trained models, and the selection criterion is not stated app. A.6. Treat these two rows as optimistic.
  • Hidden test set. Only the dev split is public. The test scores in tab. 4 need a CodaLab submission and cannot be reproduced from the repository §3.5. Use the dev split to check your scoring code.
  • Small diagnostic cells. The C11 (AdvSQuAD) test set has 57 examples, all in QNLI; C9 (StressTest) and C10 (ANLI) have 194 and 193, all in MNLI tab. 1. The per-column scores in tab. 5 rest on these small sets.
  • Surrogate bias. All examples are generated against BERT and RoBERTa models. The authors argue they transfer, using ELECTRA as evidence §4, and they acknowledge that adversarial filtering may not benchmark robustness fairly app. A.8.
  • Scope of models. Only encoder and T5 models are evaluated. Few-shot evaluation of autoregressive language models is left to future work app. A.8.
  • Curated text still has errors. Typos and grammar errors are kept on purpose, because the labels still show high annotator agreement §3.3.
  • Third-party data. ANLI was used with permission from its authors, and AdvSQuAD was used with the authors' authorisation §3.2.3. Check these permissions before redistributing the data.
  • Two licenses. The paper's arXiv license is CC BY 4.0 (recorded on this card). The dataset is distributed under CC BY-SA 4.0 app. B [README.md] [project page]. Anyone who ships the dataset must follow the CC BY-SA terms.
  • Table 12 label. The filtering table calls one attack "CombAttack"; the rest of the paper says "CompAttack" app. A.7.
  • Compute and cost. The paper reports the hardware (8 V100 GPUs, 256 GB memory) but not the total GPU hours per model app. A.6.

Lineage

  • Builds on: GLUE for tasks, data and metrics §3.1; the attack methods TextBugger, TextFooler, BERT-ATTACK, SememePSO, CompAttack, SCPN, T3, AdvFever, StressTest and CheckList §3.2; and the human-in-the-loop sets ANLI and AdvSQuAD §3.2.3. Papers are named in the text but no arXiv ids are given in the paper.
  • Compared against: robust training methods SMART, FreeLB, InfoBERT and ALUM (ALUM is discussed but not evaluated) §2 tab. 4.
  • Models evaluated: BERT, ELECTRA, RoBERTa, T5, ALBERT and DeBERTa, plus the robust training variants tab. 4.
  • Superseded: not known from content in this wiki.

Source and license

Adapted from “Adversarial GLUE: A Multi-Task Benchmark for Robustness Evaluation of Language Models” by Boxin Wang, Chejian Xu, Shuohang Wang, Zhe Gan, Yu Cheng, Jianfeng Gao, Ahmed Hassan Awadallah, Bo Li (arXiv:2111.02840), used under CC BY 4.0. Changes: condensed and restructured for implementation, with tables, equations and algorithms taken from the paper and its code, each cited to its source. Not affiliated with or endorsed by the authors. Code citations refer to https://github.com/AI-secure/adversarial-glue at commit 2e18301c3e6b (not stated (no LICENSE file at the repository root)). Any quoted code is shown under that license.