目录
写在前面
前两天我正在微信上刷着消息,猛然间关注的几个学习号刷屏,又一个超强预训练语言模型问世——XLNet,它由卡耐基梅隆大学与谷歌大脑的研究者提出,在 SQuAD、GLUE、RACE 等 20 个任务上全面超越 BERT。我想不少人和我一样,还没来得及完全消化BERT,如今大脑里的NLP知识就又要被XLNet刷新。这个场景,像极了去年还在看ELMo的我遇上BERT(苦笑)。写这篇博客主要是为了总结一些Transformer和Transformer-XL的特点。如有不正确的地方,欢迎大家指正,我将及时修改。
1. Transformer
2018年,谷歌BERT在朋友圈刷屏,各大公众号争相发布BERT的最新消息。这个号称“最强NLP预训练模型”刷新了NLP领域中11个任务。而Transformer,正是BERT中最核心的部分。同时我也认为,这是将是一种取替RNN或LSTM的模型。
1.1 从哪里来?
2017年,谷歌大脑(是的没错,还是他们)发表了文章《Attention Is All You Need》。正是在这篇文章里,谷歌团队提出了全新的模型Transformer。该模型可被应用于阅读理解、机器翻译等各项Seq2Seq任务中(Seq2Seq,即从序列到序列,通俗来说,就是输入一段文本,再输出一段文本)。文中提到,Transformer是第一个完全依靠自注意力机制来计算其输入和输出表示的转换模型,而不使用序列对齐的RNN或卷积。
To the best of our knowledge, however, the Transformer is the first transduction model relying entirely on self-attention to compute representations of its input and output without using sequence aligned RNNs or convolution.
这句话似乎信息量很大,我们该如何理解?首先,我们可以从中总结出:以往都是用别的方法解决问题的。结合上文可知,这个任务正是如机器翻译这样的Seq2Seq任务,而Transformer的表现更为出色。因此,Transformer针对的任务或者说应用场景已经清晰。其次,这句话提到,Transformer方法完全依靠自注意力机制就能计算序列的表示。换句话说&