基于bert4keras的GLUE基准代码
引用苏神博客中的话:“事实上,不管是tensorflow还是pytorch,不管是CLUE还是GLUE,笔者认为能找到的baseline代码,都很难称得上人性化,试图去理解它们是一件相当痛苦的事情。” (附上苏神的中文CLUE基准代码)
本人也是感同身受,既然有了中文CLUE基准代码,那么英文GLUE基准代码也得搞一个,所以决定基于bert4keras实现一套GLUE的baseline。经过测试,基本上复现了Huggingface的基准成绩,并且大多数任务还更优。最重要的是,所有代码尽量保持了清晰易读的特点(bert4keras的最大特点)。
GLUE benchmark: General Language Understanding Evaluation
Task | Metric | BERT-base* | BERT-base# | ELECTRA-base# | ELECTRA-large# |
---|---|---|---|---|---|
CoLA | Matthews corr | 56.53 | 61.53 | 65.63 | 68.99 |
SST-2 | Accuracy | 92.32 | 92.66 | 94.04 | 94.95 |
MRPC | F1/Accuracy | 88.85/84.07 | 88.53/84.17 | 90.83/87.71 | 91.78/89.16 |
STS-B | Pearson/Spearman corr | 88.64/88.48 | 89.20/88.77 | 90.97/90.75 | 91.13/91.25 |
QQP | Accuracy/F1 | 90.71/87.49 | 90.81/87.66 | 91.23/88.33 | 92.20/89.70 |
MNLI | M acc/MisM acc | 83.91/84.10 | 84.02/84.24 | 88.32/88.16 | 91.10/91.15 |
QNLI | Accuracy | 90.66 | 91.42 | 92.11 | 93.74 |
RTE | Accuracy | 65.70 | 69.68 | 81.23 | 87.73 |
WNLI | Accuracy | 56.34 | 56.34 | 64.79 | 84.51 |
* Huggingface # Our
python CoLA.py
。