🚀 DeBERTa:具有解耦注意力的解码增强型BERT
DeBERTa通过解耦注意力和增强掩码解码器改进了BERT和RoBERTa模型。在使用80GB训练数据的情况下,它在大多数自然语言理解(NLU)任务上的表现优于BERT和RoBERTa。
更多详细信息和更新请查看官方仓库。
这是针对多类型自然语言推理(MNLI)任务进行微调的DeBERTa大模型。
✨ 主要特性
- 模型改进:使用解耦注意力和增强掩码解码器改进BERT和RoBERTa模型。
- 性能优越:在多数NLU任务上表现优于BERT和RoBERTa。
📚 详细文档
NLU任务微调
我们展示了在SQuAD 1.1/2.0和几个GLUE基准任务上的开发结果。
模型 |
SQuAD 1.1 |
SQuAD 2.0 |
MNLI - m/mm |
SST - 2 |
QNLI |
CoLA |
RTE |
MRPC |
QQP |
STS - B |
|
F1/EM |
F1/EM |
Acc |
Acc |
Acc |
MCC |
Acc |
Acc/F1 |
Acc/F1 |
P/S |
BERT - Large |
90.9/84.1 |
81.8/79.0 |
86.6/- |
93.2 |
92.3 |
60.6 |
70.4 |
88.0/- |
91.3/- |
90.0/- |
RoBERTa - Large |
94.6/88.9 |
89.4/86.5 |
90.2/- |
96.4 |
93.9 |
68.0 |
86.6 |
90.9/- |
92.2/- |
92.4/- |
XLNet - Large |
95.1/89.7 |
90.6/87.9 |
90.8/- |
97.0 |
94.9 |
69.0 |
85.9 |
90.8/- |
92.3/- |
92.5/- |
[DeBERTa - Large](https://huggingface.co/microsoft/deberta - large)1 |
95.5/90.1 |
90.7/88.0 |
91.3/91.1 |
96.5 |
95.3 |
69.5 |
91.0 |
92.6/94.6 |
92.3/- |
92.8/92.5 |
[DeBERTa - XLarge](https://huggingface.co/microsoft/deberta - xlarge)1 |
-/- |
-/- |
91.5/91.2 |
97.0 |
- |
- |
93.1 |
92.1/94.3 |
- |
92.9/92.7 |
[DeBERTa - V2 - XLarge](https://huggingface.co/microsoft/deberta - v2 - xlarge)1 |
95.8/90.8 |
91.4/88.9 |
91.7/91.6 |
97.5 |
95.8 |
71.1 |
93.9 |
92.0/94.2 |
92.3/89.8 |
92.9/92.9 |
[DeBERTa - V2 - XXLarge](https://huggingface.co/microsoft/deberta - v2 - xxlarge)1,2 |
96.1/91.4 |
92.2/89.7 |
91.7/91.9 |
97.2 |
96.0 |
72.0 |
93.5 |
93.1/94.9 |
92.7/90.3 |
93.2/93.1 |
注意事项
- 1 遵循RoBERTa的做法,对于RTE、MRPC、STS - B任务,我们基于[DeBERTa - Large - MNLI](https://huggingface.co/microsoft/deberta - large - mnli)、[DeBERTa - XLarge - MNLI](https://huggingface.co/microsoft/deberta - xlarge - mnli)、[DeBERTa - V2 - XLarge - MNLI](https://huggingface.co/microsoft/deberta - v2 - xlarge - mnli)、[DeBERTa - V2 - XXLarge - MNLI](https://huggingface.co/microsoft/deberta - v2 - xxlarge - mnli)对这些任务进行微调。从MNLI微调模型开始时,SST - 2/QQP/QNLI/SQuADv2的结果也会略有提升,但我们仅报告从预训练基础模型微调得到的结果。
- 2 要使用**HF transformers尝试XXLarge模型,你需要指定--sharded_ddp**。
cd transformers/examples/text - classification/
export TASK_NAME=mrpc
python -m torch.distributed.launch --nproc_per_node=8 run_glue.py --model_name_or_path microsoft/deberta - v2 - xxlarge \
--task_name $TASK_NAME --do_train --do_eval --max_seq_length 128 --per_device_train_batch_size 4 \
--learning_rate 3e - 6 --num_train_epochs 3 --output_dir /tmp/$TASK_NAME/ --overwrite_output_dir --sharded_ddp --fp16
引用
如果你发现DeBERTa对你的工作有帮助,请引用以下论文:
@inproceedings{
he2021deberta,
title={DEBERTA: DECODING - ENHANCED BERT WITH DISENTANGLED ATTENTION},
author={Pengcheng He and Xiaodong Liu and Jianfeng Gao and Weizhu Chen},
booktitle={International Conference on Learning Representations},
year={2021},
url={https://openreview.net/forum?id=XPZIaotutsD}
}
📄 许可证
本项目采用MIT许可证。