作者:Rani Horev
编译:ronghuaiyang
对bert的解析,很简单,也很清楚,重要的是很好理解,让你一下子抓住重点。
BERT是最近由研究人员在谷歌AI语言上发表的论文。它通过在各种NLP任务(包括问答(SQuAD v1.1)、自然语言推理(MNLI)等)中展示最先进的结果,在机器学习社区中引起了轰动。
BERT的关键技术创新是将目前流行的注意力模型Transformer的双向训练应用到语言模型中。这与之前的研究形成了对比,之前的研究着眼于从左到右的文本序列,或者结合从左到右和从右到左的训练。研究结果表明,双向训练的语言模型比单向训练的语言模型具有更强的语言语境感。在这篇论文中,研究人员详细介绍了一种新技术Masked LM (MLM),它允许在模型中进行双向训练,这在以前是不可能的。
背景
在计算机视觉领域,研究人员已经反复展示了迁移学习的价值——在已知任务(例如ImageNet)上预先训练一个神经网络模型,然后进行微调——使用训练过的神经网络作为新的特定目标模型的基础。近年来,研究人员已经证明,类似的技术可以在许多自然语言任务中发挥作用。
另一种方法是基于特征的训练,这种方法在NLP任务中也很流行,最近的ELMo论文中对此进行了说明。在这种方法中,一个预训练的神经网络产生单词嵌入,然后作为NLP模型的特征。
BERT工作原理
BERT使用了Transformer,这是一种注意力机制,可以学习文本中单词(或子单词)之间的上下文关系。Transformer的基本形式包括两种独立的机制——读取文本输入的编码器和为任务生成预测的解码器。由于BERT的目标是生成语言模型,因此只需要编码器机制。谷歌在一篇论文中描述了Transformer的详细工作原理。
与按顺序读取文本输入(从左到右或从右到左)的方向模型相反,Transformer编码器一次读取整个单词序列。因此它被认为是双向的,尽管更准确地说它是无方向性的。这个特性允许模型基于一个单词的所有环境(单词的左、右)来学习该单词的上下文。
下图是Transformer编码器的高级描述。输入是一组token序列,这些token首先嵌入到向量中,然后在神经网络中进行处理。输出是大小为H的向量序列,其中每个向量对应一个具有相同索引的输入token。
当训练语言模型时,定义一个预测目标是一个挑战。许多模型预测下一个单词的顺序(例如“the child came home from”),这是一种方向性的方法,从本质上限制了上下文学习。为了克服这个挑战,BERT使用了两种训练策略:
Masked LM (MLM)
在将单词序列输入BERT之前,每个序列中15%的单词被替换为[MASK]令牌。然后,该模型试图根据序列中其他非屏蔽词提供的上下文来预测屏蔽词的原始值。在技术方面,预测产出单词需要:
BERT损失函数只考虑掩码值的预测,而忽略了非掩码词的预测。因此,模型收敛速度比方向模型慢,这一特性被其增强的上下文感知所抵消。
注意:在实践中,BERT实现稍微复杂一些,并没有替换所有15%的屏蔽词。
预测下一个句子
在BERT训练过程中,模型接收成对的句子作为输入,并学习预测这对句子中的第二句是否为原文档中的第二句。在训练过程中,50%的输入是一对输入,其中第二句是原文档中的第二句,而在另50%的输入中,从语料库中随机抽取一个句子作为第二句。假设随机的句子将与第一个句子断开。
为了帮助模型在训练中区分这两句话,在输入模型之前,对输入进行如下处理:
为了预测第二句话是否确实与第一句相连,执行以下步骤:
在训练BERT模型时,将Masked LM和 Next Sentence Prediction同时训练,目标是使两种策略的组合损失函数最小。
如何使用BERT(Fine-tuning)
将BERT用于特定的任务相对简单:
BERT可以用于各种各样的语言任务,而只在核心模型中添加一个小层:
在finetune训练中,大部分超参数与BERT训练保持一致,本文对需要调整的超参数给出了具体的指导(第3.5节)。BERT团队已经使用这种技术在各种具有挑战性的自然语言任务上取得了最先进的成果,详细内容见文章的第4部分。
注意:BERT的预训练模型也可以用于生成文本嵌入,类似于许多其他基于特征的模型,比如doc2vec和ELMo。通过将编码器的最后四层串联起来,可以得到最佳的嵌入效果。
要点
计算配置(训练和部署)
总结
BERT无疑是机器学习用于自然语言处理方面的一个突破。事实上,它是可用的,并允许快速微调,并且可能应用在未来广泛的实际应用中。在本摘要中,我们试图描述本文的主要思想,同时又不沉溺于过多的技术细节。对于那些希望深入研究的人,我们强烈建议阅读全文和其中引用的辅助文章。另一个有用的参考资料是BERT源代码和模型,它们涵盖103种语言,并且由研究团队慷慨地作为开放源码发布。
英文原文:https://www.lyrn.ai/2018/11/07/explained-bert-state-of-the-art-language-model-for-nlp/
请长按或扫描二维码关注本公众号