作者 | XLNet Team

译者 | 孙薇

责编 | Jane

出品 | AI科技大本营(ID: rgznai100)

【导语】几周前,XLNet 团队发布了新型预训练语言模型 XLNet,这个新模型在各项基准测试中都优于谷歌之前发布的BERT模型,其中模型 XLNet-Large 的数据量更是 BERT 模型的 10 倍左右。那 XLnet 和 BERT 到底要选谁?

这次 XLnet 团队进行了一次对比实验,为了确保对比的公正性,在对比实验中作者采用相同的环境和配置,相同的训练数据,并确保在 BERT 和 XLNet 两个模型的训练方法中,几乎每个超参数(hyperparameter)都是相同的,这些超参数都是由 BERT作者发布,并在BERT中使用的。即是说,这些超参数是为BERT模型设计选择的,很可能是针对BERT最优化的,而非XLNet。具体超参数设置如下(两个模型的超参数完全相同):

  • Batch-size: 256

  • 训练步数:1M

  • 优化器:Adam,学习率 1e-4,warmup 1万,线性衰减

  • 训练语料库:Wikipedia + BooksCorpus,在处理Wikipedia时使用了与BERT repo相同的工具,但出于某种原因,我们的Wiki语料库仅有20亿单词,BERT使用了25亿单词,因此XLNet的训练数据略少于BERT。

  • 模型结构参数:24层,1024个隐层,16 heads

  • 微调(finetuning)超参数搜索空间

此外,作者还修改了一些数据相关的实现细节,以便与BERT模型进行一对一的比较。

  • 在之前的实验中,预训练环节,未被mask的token无法看到分类token CLS和分隔token SEP,而现阶段的实现中可以看到了,与BERT模型保持一致。

  • 在微调环节,与BERT一样,用“BERT格式”取代了普通的 XLNet格式,即使用[CLS, A, SEP, B, SEP] 取代了 [A, SEP, B, SEP, CLS]。

另外,我们考虑了BERT模型的三种变体,并报告了各个单独任务的最佳微调结果。三种变体如下:

  • 模型1(Model-I):BERT 作者发布的原始BERT模型

  • 模型2(Model-II):同样来自作者的中文全词覆盖模型

  • 模型3(Model-III):由于考虑到下句预测(NSP)可能会影响表现,我们使用BERT已发布的代码针对没有NSP loss的新模型进行了预训练

注意:由于通过不同变体可以获得各个任务的最佳表现,以上设置也许会让BERT模型更占优势。

GLUE 和 SQuAD上的开发设置结果,及 RACE 上的测试设置结果如下(并未使用数据增强、集成或多任务学习):

不同模型对比。XLNet-Large (as in paper)所使用的训练数据更多一些,batch size也稍大。BERT模型,针对每个数据集我们只报告3个变体中微调最优的结果。

表格中有些观测结果非常有趣:

  1. 使用相同的数据,以及几乎完全相同的训练方法来训练时,针对所有数据集,XLNet都以相当的优势胜过了BERT模型。

  2. 投入10倍多数据(对比XLNet-Large-wikibooks与XLNet-Large)的性能提升,要小于在11个基准测试中将其中8个从BERT模型换成XLNet模型的性能提升。

  3. 在某些基准测试(比如CoLA和MRPC)中,使用较少数据训练的模型,其表现要优于使用较多数据训练的模型。

我们相信,从以上结果中我们也许可以得到一些结果了。

XLNet的性能提高了:观测结果1与我们早期基于基础模型的对比实验结果一致,证明在指定相同的训练条件时,XLNet模型要优于BERT模型。

XLNet-Large可以优化到更佳:观测结果2与观测结果3似乎表明,我们之前发布的XLNet-Large(使用更多数据训练)并没有充分利用数据规模。因此,我们会继续研究相关方法,正确扩展使用XLNet模型进行语言预训练的规模。根据目前有限的观测结果,我们推测以下训练细节可能发挥着重要作用:

  • 数据相关:数据规模、数据来源、数据清洗、数据编码、数据格式化

  • 优化相关:学习率(以及计划)、batch size、训练步骤数、优化器

  • 重要的是:这些超参数可能彼此有高阶交互效果。

Facebook AI近期 GLUE 排行榜,可能也说明了训练细节的重要性。

总之,本实验将算法/模型的影响,与类似训练细节、大型计算及大数据这样的其他因素明确分离开来。根据以上结果,XLNet 团队认为:算法与模型至少是与其他因素同等重要的,它们很可能都是实现自然语言理解最终目标所必需的条件。

原文链接:

https://medium.com/@xlnet.team/a-fair-comparison-study-of-xlnet-and-bert-with-large-models-5a4257f59dc0

(*本文为 AI科技大本营编译文章,转载请联系微信 1092722531)

精彩推荐

“只讲技术,拒绝空谈!”2019 AI开发者大会将于9月6日-7日在北京举行,这一届AI开发者大会有哪些亮点?一线公司的大牛们都在关注什么?AI行业的风向是什么?2019 AI开发者大会,倾听大牛分享,聚焦技术实践,和万千开发者共成长。目前,大会早鸟票抢购中~扫码购票,领先一步!

推荐阅读

  • 阿里达摩院做AI这两年

  • 如何用爬虫技术帮助孩子秒到心仪的幼儿园(基础篇)

  • Python三十年技术演变史

  • 知识体系、算法题、教程、面经,这是一份超赞的AI资源列表

  • GitHub 第一!这位 60 后程序员火了!

  • 特朗普要解禁华为?美七家科技公司联合要求恢复供货

  • Erlang 二十年,如何在编程语言中占据一席之地?

  • 如今区块链在企业级应用中的尴尬, 只因没看懂这4大主链2大场景……

  • 云计算将会让数据中心消失?

你点的每个“在看”,我都认真当成了喜欢

XLNet:公平PK,BERT你已经被超过!相关推荐

  1. DNF公平PK场规则介绍

    1.什么是公平PK场? 公平PK场是一种新的PvP模式,可以让玩家使用新的公平平衡系统与其他各种等级和职业的玩家进行竞技比赛. 2.进入公平PK场 -角色必须等级大于18才能进入. -屏幕右上角会出现 ...

  2. XLNet再次超越BERT,技术发展太快,如何才能跟得上节奏?

    在过去的2-3天时间里,Google的XLNet又刷爆了朋友圈.在面对技术的快速迭代更新,我们也在第一时间把XLNet纳入到了训练营体系里,在模型发布的第三天就完成了所有教研的工作.2019年贪心学院 ...

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

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

  4. 深度学习进阶篇-预训练模型[3]:XLNet、BERT、GPT,ELMO的区别优缺点,模型框架、一些Trick、Transformer Encoder等原理详细讲解

    [深度学习入门到进阶]必看系列,含激活函数.优化策略.损失函数.模型调优.归一化算法.卷积模型.序列模型.预训练模型.对抗神经网络等 专栏详细介绍:[深度学习入门到进阶]必看系列,含激活函数.优化策略 ...

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

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

  6. BERT重夺多项测试第一名,改进之后性能追上XLNet,现已开源预训练模型

    晓查 发自 凹非寺 量子位 出品 | 公众号 QbitAI NLP领域今年的竞争真可谓激烈.短短一个多月的时间,BERT又重新杀回GLUE测试排行榜第一名. 今年6月,谷歌和CMU提出的NLP模型XL ...

  7. 20项任务横扫BERT!CMU谷歌发布XLNet,NLP再迎屠榜时刻

    问耕 发自 凹非寺 量子位 出品 | 公众号 QbitAI 这世界变化快. 去年10月,Google团队发布BERT模型横扫一切,在11种不同NLP测试中创出最佳成绩.现在,轮到BERT被碾压了. C ...

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

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

  9. 最火的几个全网络预训练模型梳理整合(BERT、ALBERT、XLNet详解)

    前言 过去两年可谓是NLP领域的高光年,自从18年BERT提出,狂刷了11项下游任务的记录之后,全网络预训练模型开启了NLP嵌入表示的新时代,真正意义上实现了自然语言处理的迁移学习. 作为一个刚入坑没 ...

最新文章

  1. 高性能asp服务器,服务器中让人头疼的防火墙-ASP教程,性能优化
  2. Redis存储总用String?你大概错过了更优的使用方法
  3. json-lib的字符串自动转换坑
  4. html中列表导航怎么和图片对齐_HTML实战篇:html仿百度首页
  5. 要打造一款稳定顺滑、火遍全球的游戏?云将成为你的坚实后盾
  6. vc2010 mysql5.7_VC2010利用MySQL++访问mysql. 及连接池示例
  7. 2017.6.27 跟开涛学spring3--spring概述
  8. sm2算法c 语言实现,移远通信集成国密安全解决方案的C-V2X AP模组商用落地
  9. ci php redis,一次基于CI的Redis性能问题定位
  10. 杭电 2176 取(m堆)石子游戏(博弈)
  11. 开源的长列表渲染库-Clusterize.js
  12. (一)PC 机与单片机通信(RS232 协议)【800个电子设计大赛资料合集】
  13. php word转html
  14. Android 手机实现网络嗅探发现周围设备(类似悟空遥控器)
  15. 什么是App分发?有哪些分发平台可以选择?
  16. python爬虫详解(三)——爬取世界常用密码并保存到字典内
  17. 专升本英语——语法知识——基础语法——第三节 形容词、副词及其比较级【学习笔记】
  18. Java面向对象(OOP)--面向过程 面向对象 OOP详解
  19. GPG在PHP中的使用
  20. 2020上海高校程序设计竞赛暨第18届上海大学程序设计联赛夏季赛(同步赛)整理合集

热门文章

  1. 字符串多模式精确匹配(脏字/敏感词汇/关键字过滤算法)——TTMP算法 之实战F模式...
  2. LibreOffice使用笔记
  3. 虚拟机ubuntu14.04系统设置静态ip
  4. js去除数组中重复值
  5. TP-link 设置MAC地址过滤
  6. 秦州:西瓜书 + 南瓜书 吃瓜系列 13. 降维与度量学习(上)
  7. 中国电子学会青少年编程能力等级测试图形化四级编程题:排序
  8. 【C#串口编程计划】C#串口协议解析 -- 文本数据
  9. Matlab数据的可视化 -- 图形格式的设置
  10. 什么是离散的Hopfield网络?