To Top
首页 > 自然语言处理 > 正文

XLNet

标签:xlnet


目录

20项任务全面碾压BERT,CMU全新XLNet预训练模型屠榜(已开源)

参考拆解XLNet模型设计,回顾语言表征学习的思想演进

他们创造了横扫NLP的XLNet:专访CMU博士杨植麟

XLNet: Generalized Autoregressive Pretraining for Language Understanding

预训练模型:https://github.com/zihangdai/xlnet

BERT 这样基于去噪自编码器的预训练模型可以很好地建模双向语境信息,性能优于基于自回归语言模型的预训练方法。然而,由于需要 mask 一部分输入,BERT 忽略了被 mask 位置之间的依赖关系,因此出现预训练和微调效果的差异(pretrain-finetune discrepancy)。

基于这些优缺点,该研究提出了一种泛化的自回归预训练模型XLNet。XLNet可以:

  • 通过最大化所有可能的因式分解顺序的对数似然,学习双向语境信息;
  • 用自回归本身的特点克服BERT的缺点。此外,XLNet 还融合了当前最优自回归模型 Transformer-XL 的思路。

来,看一下transformer-xl:https://daiwk.github.io/posts/nlp-transformer-xl.html.。。。原来transformer-xl也是这几个作者提出的。。。

XLNet 在 20 个任务上超过了 BERT 的表现,并在 18 个任务上取得了当前最佳效果(state-of-the-art),包括机器问答、自然语言推断、情感分析和文档排序。

introduction

作者从自回归(autoregressive, AR)和自编码(autoencoding, AE)两大范式分析了当前的预训练语言模型,并发现它们虽然各自都有优势,但也都有难以解决的困难。为此,研究者提出 XLNet,并希望结合大阵营的优秀属性。

AR主要的论文有这几篇:Semi-supervised sequence learningDeep contextualized word representationsImproving language understanding by generative pre-training。通过一个autoregressive的模型来估计文本语料库的概率分布。也就是给定一个文本序列\(\mathbf{x}=\left(x_{1}, \cdots, x_{T}\right)\),AR将likelihood因式分解(factorize)成一个前向的乘积\(p(\mathbf{x})=\prod_{t=1}^{T} p\left(x_{t} | \mathbf{x}_{<t}\right)\),或者是一个后向的乘积\(p(\mathbf{x})=\prod_{t=T}^{1} p\left(x_{t} | \mathbf{x}_{>t}\right)\)。由于 AR 语言模型仅被训练用于编码单向(uni-directional)语境(前向或后向),因而在深度双向语境建模中效果不佳。而下游语言理解任务通常需要双向语境信息。这导致 AR 语言建模无法实现有效预训练。

而AE相关的预训练模型不会进行明确的密度估计(explicit density estimation),而是从残缺的(corrupted)输入中重建原始数据。例如bert,使用一定比例的[MASK],然后预测被mask掉的是什么东西。由于目标并不是密度估计,所以在重建的时候,可以考虑双向的上下文信息。但存在如下两个问题:

  • finetune时的真实数据缺少预训练期间使用的[MASK]这些mask信息,这导致预训练和微调之间存在差异
  • 输入中要预测的token是被mask掉的,所以无法像AR那样使用乘积rule来建立联合概率分布。也就是说,给定未mask的 token,BERT假设预测的token之间彼此独立,这其实是对自然语言中普遍存在的高阶、长期依赖关系的一种过度简化

另外,在拆解XLNet模型设计,回顾语言表征学习的思想演进 中也提到了:

BERT 中 “MASK” 字符的加入,使得非目标词表征的建模都会依赖于人造的 “MASK” 字符,这会使模型学出虚假的依赖关系 (比如 “MASK” 可以作为不同词信息交换的桥梁) – 但 “MASK” 在下游任务中并不会出现。

同时除了位置编码的区别外,同一句话内所有目标词依赖的语境信息完全相同,这除了忽略被替换的词间的依赖关系外,随着网络层数的加深,作为输入的位置编码 的信息也可能被过多的计算操作抹去 (类似于上述循环神经网络难以建模长程依赖的原因)。

于是,本文有如下两个贡献:

  • xx
  • xxxx

原创文章,转载请注明出处!
本文链接:http://daiwk.github.io/posts/nlp-xlnet.html
上篇: multi-sample dropout
下篇: dlrm

comment here..