论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation

论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation_第1张图片
任@燕山大学

论文来源
代码地址

前言

预训练语言模型提高了NLP任务的技术水平。
对不同类型的语言模型进行预训练时,使用了不同的预测任务和训练目标,如下表所示。
论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation_第2张图片

ELMo:学习两个单向LM,正向LM从左到右读取文本,反向LM从右到左编码文本。
GPT:使用从左到右的Transformer逐字预测文本序列。
BERT:采用双向Transformer编码器,结合左右上下文来预测掩码。

BERT显著提高了许多NLP任务的性能,但由于其双向性,注重于对文档的理解,却难以应用于自然语言生成任务。

论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation_第3张图片
针对上表三种无监督语言建模目标,该文提出了统一语言模型UniLM(Unified pre-trained Language Model),基于Transformer,可同时应用于自然语言理解(NLU)和自然语言生成(NLG)任务。

模型结构

论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation_第4张图片
UniLM的模型结构与BERT相同,主要在MASK上下功夫,所有的语言模型,本质都是在训练时能获取到什么信息,在实现层面其实就是如何对输入进行MASK。生成式任务是一个seq2seq问题,通过MASK将seq2seq整合进BERT中。

输入表示

输入x是一个单词序列,它要么是单向LM的文本段,要么是打包在一起用于双向LM和序列到序列LM的一对片段。
在输入的开始添加一个[SOS]标记,在每个分段的结束添加一个[EOS]标记。[EOS]不仅在NLU任务中标记句子边界,还用于模型学习在NLG任务中何时终止解码过程。输入表示如下图,与BERT相同。
论文笔记|Unified Language Model Pre-training for Natural Language Understanding and Generation_第5张图片

文本由WordPiece标记为子词单位。对于每个输入标记,其向量表示由相应的标记嵌入、位置嵌入和段嵌入相加。UniLM使用多个LM任务进行训练,分段嵌入也起到了LM标识符的作用,因为不同的LM目标使用了不同的分段嵌入。

训练目标

  • Unbidirectional LM:使用从左到右和从右到左的LM目标。以从左到右的LM为例。每个标记的表示形式只对左上下文标记及其本身进行编码。例如,要预测“ x 1 x 2 x_1x_2 x

你可能感兴趣的:(自然语言处理,笔记)