Introduction
预训练的语言模型,在改进自然语言处理任务方面非常有效。包括句子级别的任务(自然语言推理和释义)也包括分词级别的任务(NER和问答)。
将预训练的语言表示应用于下游任务有两种现有策略:基于特征(feature-based)与微调(fine-tuning)。(这两种方法在预训练期间共享相同的目标函数,它们使用单向语言模型来学习通用语言表示。)
基于特征:例如 ELMo使用特定于任务的架构,其中包括预训练的表示作为附加特征。
微调:引入了最少的任务特定参数,并通过简单地微调所有预训练参数来对下游任务进行训练。
但是,当前的技术限制了预训练表示的能力,特别是对于微调方法。主要限制是标准语言模型是单向的,这限制了可在预训练期间使用的架构的选择。这样的限制对于句子级任务来说是次优的,并且在将基于微调的方法应用于令牌级任务(例如问答)时可能非常有害。(提出问题)
BERT
所有总结的bert的知识点都在这:http://t.csdn.cn/YsF9N
Experiment
我们展示了 11 个 NLP 任务的 BERT 微调结果。(属于4类)
第一类任务运行结果:
Ablation Studies(消融实验)
我们首先考察 NSP 任务带来的影响。在表 5 中,我们表明移除 NSP 会显着损害 QNLI、MNLI 和 SQuAD 1.1 的性能。接下来,我们通过比较“No NSP”与“LTR & No NSP”来评估训练双向表示的影响。 LTR 模型在所有任务上的表现都比 MLM 模型差,在 MRPC 和 SQuAD 上的下降幅度很大。
在本节中,我们探讨了模型大小对微调任务准确性的影响。我们训练了许多具有不同层数、隐藏单元和注意力头的 BERT 模型,同时使用与前面描述的相同的超参数和训练过程。选定 GLUE 任务的结果如表 6 所示。可以看到,更大的模型会导致所有四个数据集的准确度得到严格的提高。
最近由于使用语言模型进行迁移学习的经验改进表明,丰富的、无监督的预训练是许多语言理解系统不可或缺的一部分。特别是,这些结果使即使是低资源任务也能从深度单向架构中受益。我们的主要贡献是将这些发现进一步推广到深度双向架构,允许相同的预训练模型成功处理广泛的 NLP 任务。