GLUE 任务分为主要的任务(CoLA, MNLI, MRPC, QNLI, QQP, RTE, SST-2, STS-B, WNLI),以及附加的任务(Diagnostic,下面简称为 AX)。其中只有 STS-B 是回归任务,其余的全为分类任务。还需说明的是,MNLI 数据集的验证集和测试集包含两部分:matched (简称为 MNLI-m) 和 mismatched (简称为 MNLI-mm),可以当成两个任务看待。并且对于所有的分类任务, MNLI-m,MNLI-mm 和 AX 是三分类任务,其余都为二分类任务。
关于主任务,全部可以在 https://gluebenchmark.com/tasks 网站上下载,其中 MRPC 任务下载下来是个 msi 文件,需要安装,并且只有训练集和测试集,需要对训练集划分才能获得验证集。而 AX 任务的测试集下载链接有两个,如果是单纯的无标签的测试集,可以在 https://gluebenchmark.com/tasks 该网站上下载,带标签的测试集链接为 https://www.dropbox.com/s/ju7d95ifb072q9f/diagnostic-full.tsv?dl=1。 AX 任务的训练集与测试集为 MultiNLI 1.0 数据集,链接为 https://cims.nyu.edu/~sbowman/multinli/multinli_1.0.zip。
不同的任务有不同的评价指标,如下图所示。
CoLA 和 AX 评价指标为 MCC,训练时可以调用:from sklearn.metrics import matthews_corrcoef
SST-2,MNLI-m,MNLI-mm,QNLI,RTE 和 WNLI 评价指标为 ACC,可以调用:from sklearn.metrics import accuracy_score
MRPC 和 QQP 评价指标为 macro-F1 (因为 micro-F1 = ACC) 和 ACC,可以调用:from sklearn.metrics import accuracy_score, f1_score
STS-B 评价指标为 Pearsonr,可以调用:from scipy.stats import pearsonr

提交时需要填写一些信息,相应的信息的说明在 FAQ 中查看到 https://gluebenchmark.com/faq,或者直接提交的时候鼠标放在每个 input 框也可以看到。
其中需要注意的为要提交的数据的格式。如果想看英语原版的同学,可以直接在 FAQ 查看第一个问题 https://gluebenchmark.com/faq。
zip 文件。假设我将数据放在了名为 glue_results 的文件夹中,那么我就要提交这个 glue_results.zip 文件。注:文件夹中不要再包含文件夹。tsv 文件,并且名字对应任务,即:CoLA.tsv,MNLI-m.tsv,MNLI-mm.tsv,MRPC.tsv,QNLI.tsv,QQP.tsv,RTE.tsv,SST-2.tsv,STS-B.tsv,WNLI.tsv,AX.tsv。tsv 文件中只包含两列,第一列为 IDs,第二列为 labels,需要表头,并且以 \t 作为分隔符。并且需要注意的是,对于 AX,MNLI-m,MNLI-mm,QNLI,RTE 这5个任务,labels 这一列必须为标签名字。比如对于 MNLI 数据集,labels 要为 [“contradiction”, “entailment”, “neutral”],所以模型输出后这里还要做个映射。zip 中必须包含这 11 个任务,否则提交不能完成。public,想要查看每个任务的具体得分的话,可以在 profile 页面找到提交成功的名字,然后点击名字即可查看到细节。