【NLP】_12_XLNet

 


 

【一】 XLNet(简单介绍)

 

XLNet,来自卡内基梅隆大学,与谷歌大脑的研究者提出的新型预训练模型,在 20 个 NLP 任务上全面超越 BERT
 
论文地址:https://arxiv.org/pdf/1906.08237.pdf
 
预训练模型及代码地址:https://github.com/zihangdai/xlnet
 
感谢原文:https://www.jiqizhixin.com/articles/2019-06-20-9

 


 

【二】 Auto-RegressiveAuto-Encoding(两大阵营)

 

XLNet 论文中,作者从自回归(AR)和自编码(AE)两大范式分析了当前的预训练语言模型,各有优劣,XLNet 则希望整合两大阵营的优势

无监督表征学习 已经在自然语言处理领域取得了巨大的成功,在这种理念下,很多研究探索了不同的无监督预训练目标,其中,自回归AR)和 自编码AE)成为两个最成功的预训练目标

 

【2.1】 Auto-Regressive(自回归)

 

  • AR 语言建模旨在利用 自回归模型 估计文本语料库的 概率分布

  • 由于 AR 语言模型仅被训练用于编码 单向语境(前向或后向),因而在深度双向语境建模中效果不佳,而下游语言理解任务通常需要双向语境信息,这导致 AR 语言建模无法实现有效预训练

 

【2.2】 Auto-Encoding(自编码)

 

  • 相反,基于 AE 的预训练模型不会进行明确的 密度估计,而是从残缺的输入中重建原始数据,一个著名的例子就是 BERT

  • 给出输入 token 序列,BERT 将一部分 token 替换为特殊符号 [MASK],随后训练模型从残缺版本恢复原始的 token,由于密度估计不是目标的一部分,BERT 允许使用 双向语境 进行重建

  • 但是,模型 微调Fine-Tunning)时的真实数据缺少 BERT 在 预训练Pre-Train)期间使用的 [MASK] 等人工符号,这导致预训练和微调之间存在 差异

  • 此外,由于输入中预测的 token 被 mask,因此 BERT 无法像自回归语言建模那样使用 乘积法则(product rule)对 联合概率 进行建模,也就是说,给定未 mask 的 token,BERT 假设预测的 token 之间 彼此独立

 


 

【三】 XLNet 核心思路(BERT 优缺点思考)

 

  • BERT 优点】 作者表示,BERT这样基于 " 去噪自编码器(Auto-Encoding)" 的预训练模型可以很好地建模双向语境信息,性能优于基于 " 自回归语言模型(Auto-Regressive LM)" 的训练方法
     
  • BERT 缺点】 然而,由于需要 mask 一部分输入,BERT 忽略了被 mask 位置之间的依赖关系,因此出现预训练和微调效果的差异(pretrain-finetune discrepancy)
     
  • XLNet 核心】 通过最大化所有可能的 因式分解顺序Permutation LM)的期望对数似然函数,学习双向语境信息
     
  • XLNet 核心不依赖 残缺数据(mask),用 自回归Auto-Regressive)本身的特点克服 BERT 的缺点
     
  • XLNet 核心】 融合了当前最优自回归模型 Transformer-XL 的思路,将 分割循环机制segment recurrence mechanism)和 相对编码范式relative encoding)整合到预训练中,实验表明,这种做法提高了性能,尤其是在那些包含较长文本序列的任务中

 


 

【四】 Permutation Language Modeling(排列语言建模)

 

  • 研究者借鉴了无序 NADE 中的想法,提出了一种序列语言建模目标,它不仅可以保留 AR 模型的优点,同时也允许模型捕获双向语境
     
  • 具体来说,一个长度为 T 的序列 x 拥有 T ! 种不同的排序方式,可以执行有效的自回归因式分解。从直觉上来看,如果模型参数在所有因式分解顺序中 共享,那么预计模型将学习从两边的所有位置上收集信息
     
  • 为了提供一个完整的概览图,研究者展示了一个在给定相同输入序列 x(但因式分解顺序不同)时预测 token x_3 的示例,如下图所示

 


 

【五】 Two-stream Attention(双流自注意力)

 

简单地使用 Transformer(-XL) 架构进行 基于排列的(permutation-based)语言建模是不成功的,因为 因式分解 顺序是任意的、训练目标是模糊的

因此,研究人员提出,对 Transformer(-XL) 网络的 参数化 方式进行修改,移除模糊性

 

  • 对于 参数化,标准 Transformer 架构存在 两个互相矛盾 的要求:
  1. 预测 token X z t , g θ ( X z < t , z t ) \bm \red { X_{ z_{ t } }, g_\theta(X_{z<t}, z_t) } Xzt,gθ(Xz<t,zt) 应该仅使用位置 z t \bm \red { z_t } zt 而不是内容 X z < t \bm \red { X_{ z<t } } Xz<t,不然该 目标函数Permutation LM)就变得不重要了

  2. 为了预测另一个 token X z j \bm \red { X_{ z_j } } Xzj,其中 j > t \bm \red { j>t } j>t g θ ( X z < t , z t ) \bm \red { g_\theta(X_{ z<t }, z_t) } gθ(Xz<t,zt) 应该编码内容 X z < t \bm \red { X_{ z<t } } Xz<t,以提供完整的上下文信息

 

  • 为了解决这一矛盾,该研究提出使用两个隐藏表征的 合,即 内容表征 h z t \bm \red { h_{ z_t } } hzt(图 a)和 Query表征 g z t \bm \red { g_{z_t} } gzt(图 b)

  • 内容表征 与 Transforme 的隐藏状态类似,它将同时编码输入本身的内容及上下文信息

  • Query表征 仅能获取上下文信息及当前的位置,它并不能获取当前位置的内容

  • 由于目标函数适用于 AR 框架,研究者整合了当前最佳的 AR 语言模型——Transformer-XL 到预训练框架中,并将其体现在方法名字中。具体来说,他们借鉴了 Transformer-XL 中的两项重要技术 —— 相对位置编码范式分割循环机制

  • 现在,结合 双流注意力Transformer-XL 的改进,上面图(c)展示了最终的排列语言建模架构

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值