2020-02-17 21:10:32

作者:Xu LIANG

编译:ronghuaiyang

导读

介绍最基本的XLNet的原理,理解XLNet和BERT的直觉上的不同点。

在发布后不到一周,我周围的NLP领域的每个人似乎都在谈论XLNet。

是的,“在20个任务上比BERT做得更好”确实吸引了我们的眼球。但更重要的是理解它是如何工作的,以及为什么它比BERT表现得更好。所以我写了这个博客来分享我读了这篇文章后的想法。

内容结构如下。

  • 什么是XLNet?
  • XLNet和BERT有什么不同?
  • XLNet是如何工作的?

什么是XLNet?

首先,XLNet是一个类似于bert的模型,而不是一个完全不同的模型。但它是一个非常有前途和潜力的。总之,XLNet是一种广义的自回归预训练方法

那么,什么是自回归(AR)语言模型

AR语言模型是利用上下文单词预测下一个单词的一种模型。但是在这里,上下文单词被限制在两个方向,要么向前,要么向后。

GPT和GPT-2都是AR语言模型。

AR语言模型的优点是擅长NLP生成任务。因为在生成上下文时,通常是正向的。AR语言模型在这类NLP任务中很自然地工作得很好。

但是AR语言模型有一些缺点,它只能使用前向上下文或后向上下文,这意味着它不能同时使用前向上下文和后向上下文

XLNet 和BERT的区别是什么?

与AR语言模型不同,BERT被归类为自动编码器(AE)语言模型

AE语言模型的目的是从损坏的输入中重建原始数据

损坏的输入意味着我们使用在训练前阶段将原始tokeninto替换为 [MASK] 。我们的目标是预测into来得到原来的句子。

AE语言模型的优点是它可以在向前和向后两个方向上看到上下文。

但是AE语言模型也有其不足之处。它在预训练中使用了[MASK],但是这种人为的符号在finetune的时候在实际数据中时没有的,导致了预训练 — finetune的不一致。[MASK]的另一个缺点是它假设所预测的(mask掉的)token是相互独立的,给出的是未掩码的tokens。例如,我们有一句话“It shows that the housing crisis was turned into a banking crisis”。我们盖住了“banking”和“crisis”。注意这里,我们知道,盖住的“banking”与“crisis”之间隐含着相互关联。但AE模型是利用那些没有盖住的tokens试图预测“banking”,并独立利用那些没有盖住的tokens预测“crisis”。它忽视了“banking”与“crisis”之间的关系。换句话说,它假设预测的(屏蔽的)tokens是相互独立的。但是我们知道模型应该学习(屏蔽的)tokens之间的这种相关性来预测其中的一个token。

作者想要强调的是,XLNet提出了一种新的方法,让AR语言模型从双向的上下文中学习,避免了AE语言模型中mask方法带来的弊端。

XLNet如何工作?

AR语言模型只能使用前向或后向的上下文,如何让它学习双向上下文呢?语言模型由预训练阶段和调优阶段两个阶段组成。XLNet专注于预训练阶段。在预训练阶段,它提出了一个新的目标,称为重排列语言建模。我们可以从这个名字知道基本的思想,它使用重排列。

这里我们用一个例子来解释。序列顺序是[x1, x2, x3, x4]。该序列的所有排列如下。

对于这4个tokens (N)的句子,有24个(N!)个排列。假设我们想要预测x3。24个排列中有4种模式,x3在第1位,第2位,第3位,第4位。

[x3, xx, xx, xx][xx, x3, xx, xx][xx, xx, x3, xx][xx, xx, xx, x3]

4种模式

在这里,我们将x3的位置设为第t位,它前面的t-1个tokens用来预测x3。

x3之前的单词包含序列中所有可能的单词和长度。直观地,模型将学习从两边的所有位置收集信息。

具体实现要比上面的解释复杂得多,这里就不讨论了。但是你应该对XLNet有最基本和最重要的了解。

来自XLNet的灵感

与BERT将mask方法公布于众一样,XLNet表明重排列法是一种很好的语言模型目标选择。可以预见,未来在语言模型目标方面的探索工作将会越来越多。

英文原文:https://towardsdatascience.com/what-is-xlnet-and-why-it-outperforms-bert-8d8fce710335

什么是XLNet,它为什么比BERT效果好?相关推荐

  1. XLNet团队:赢BERT靠的并不是数据集更大,公平对决也碾压对手

    晓查 发自 凹非寺 量子位 出品 | 公众号 QbitAI 几周前,谷歌发布了新的NLP模型XLNet,它在20项基准测试中均优于BERT. 但是与BERT相比,XLNet模型的训练数据比BERT大1 ...

  2. 【NLP】XLnet:GPT和BERT的合体,博采众长,所以更强

    前面介绍过BERT,作为一种非常成功的预训练模型,取得了非常不错的成绩,那么,他还有改进的空间吗? 本文介绍BERT的改进版,XLnet.看看它用了什么方法,改进了BERT的哪些弱点. 作者& ...

  3. 百度ERNIE 2.0发布!16项中英文任务表现超越BERT和XLNet

    整理 | 夕颜出品 | AI科技大本营(ID:rgznai100) 导读:2019 年 3 月,百度正式发布 NLP 模型 ERNIE,其在中文任务中全面超越 BERT 一度引发业界广泛关注和探讨.今 ...

  4. XLNet:公平PK,BERT你已经被超过!

    作者 | XLNet Team 译者 | 孙薇 责编 | Jane 出品 | AI科技大本营(ID: rgznai100) [导语]几周前,XLNet 团队发布了新型预训练语言模型 XLNet,这个新 ...

  5. 碾压Bert?“屠榜”的XLnet对NLP任务意味着什么

    作者张俊林,中国中文信息学会理事,中科院软件所博士.目前担任新浪微博机器学习团队 AI Lab 负责人.在此之前,张俊林曾经在阿里巴巴任资深技术专家并负责新技术团队,以及在百度和用友担任技术经理及技术 ...

  6. 谷歌更强 NLP 模型 XLNet 开源:20 项任务全面碾压 BERT!

    谷歌更强 NLP 模型 XLNet 开源:20 项任务全面碾压 BERT! 11 月份,谷歌研究团队在 GitHub 上发布了万众期待的 BERT,它不仅在 11 项 NLP 测试中刷新了最高成绩,甚 ...

  7. Bert albert xlnet gtp

    <GPT,GPT2,Bert,Transformer-XL,XLNet论文阅读速递> Bert缺点 Bert的自编码语言模型也有对应的缺点,就是XLNet在文中指出的,第一个预训练阶段因为 ...

  8. 20 项任务全面碾压 BERT,CMU 全新 XLNet 模型屠榜,代码已开源!

    BERT 带来的影响还未平复,CMU 与谷歌大脑提出的 XLNet 在 20 个任务上超过了 BERT 的表现,并在 18 个任务上取得了当前最佳效果.令人激动的是,目前 XLNet 已经开放了训练代 ...

  9. 20项任务全面碾压BERT,全新XLNet预训练模型

    这是继BERT发布以来又一个令广大NLPer兴奋的消息, CMU 与谷歌大脑提出的 XLNet 在 20 个任务上超过了 BERT 的表现,并在 18 个任务上取得了当前最佳效果. 而真正令人激动的是 ...

最新文章

  1. 动态链接库的编写与调用
  2. JAVA学习(七)__Spring的@Autowired注入规则
  3. 移动互联时代:儿童教育重在内容和应用
  4. D. 关灯问题(规律或二分)
  5. 防止System.exit调用
  6. vue子组件向父组件传递数据
  7. python中执行shell命令的几个方法
  8. 【BZOJ】【3671】【NOI2014】随机数生成器
  9. Tri-training regression, 协同训练回归
  10. hihocoder-Week195-奖券兑换
  11. java 腾讯微博模拟登陆_腾讯微博模拟登录
  12. 一篇文章教你从入门到精通 Google 指纹验证功能
  13. UE4面试基础知识(一)
  14. 图像单通道和4通道转3通道
  15. TensorFlow笔记(7) 多神经元分类
  16. 大型电商架构亿级流量电商详情页系统实战-缓存架构+高可用服务架构+微服务架构(七)
  17. 一个用于银联手机支付的GEM介绍
  18. Spring AOP官网学习
  19. 制作自己的docker镜像
  20. python3 base64.b64decode Base64解码报错: Incorrect padding

热门文章

  1. ## 应用Python爬虫、Flask框架、Echarts、WordCloud等技术实现豆瓣Top250数据分析
  2. transforms.normalize()函数
  3. java连接Excel数据库读取,写入,操纵Excel表格
  4. php怎么删除多条,php 用checkbox一次性删除多条记录的方法
  5. 智源发布 | 大规模并行训练效率提升神器 TDS
  6. UIUC翟成祥教授:用文本透镜拓展人类智能
  7. 新书上市 | 为什么你的英语总是学不好?
  8. 万字干货 | 一文揭秘Presto在腾讯资讯业务中的应用
  9. 软件项目管理面面观之“玩的就是心跳”
  10. 经典图书《重构:改善既有代码的设计》图灵再版出版倒计时