这篇文章源于和实验室同学吃饭时的一次聊天,当时就觉得很有意思,就顺便写下来了——

自然语言处理的历史源远流长,不过这篇文章要讲的故事得从机器翻译说起

众所周知,谷歌的机器翻译一直是业内标杆,追求者众,但是谷歌显然欲求不满

于是在2016年上线了全新版本的神经网络翻译系统,而这个系统就是基于RNN全家桶的,毕竟RNN的优势就在于能处理变长序列并且自带序列位置信息

然而刚到2017年,Facebook的FAIR(Facebook AI Research)实验室发了篇论文,名叫《Convolutional Sequence to Sequence Learning》,这篇论文上来就说:

恕我直言,RNN无法并行处理,训练速度慢,绝非正道,而我这个基于CNN的端到端训练的新模型,完全舍弃了RNN,速度快,效果好:

谷歌看完这篇论文寻思着不对劲啊,机器翻译啥时候轮到你这个小老弟来说话了?

于是立马就在2017年6月份在arxiv上发表了一篇非常标题党的论文,叫《Attention is All you Need》,这么狂拽炫酷的论文标题吸引了无数吃瓜群众,可谓是赚足了眼球,大家下下来一看,原来谷歌提出了一个叫Transformer的新模型,傲娇的谷歌在这篇论文里表示:

哼,就算RNN不好,我也不用你家的CNN,我有新模型啦!

这个模型长这样:

简单来说,就是用了自注意力(self-attention)+多头注意力(multi-head attention),同时由于失去了RNN的位置信息,特地加上了位置嵌入(positional encoding)

实际上谷歌和Facebook这两篇论文都用了注意力机制(attention mechanism),而他们也不是最早提出这个机制的,只不过谷歌用这个爆炸性的标题,彻底带火了注意力机制

话说回Transformer,像这样独立于RNN和CNN的主流模型之外的妖艳贱货 新品种,就注定会给NLP带来腥风血雨深刻的变革。而谷歌在多年之后也绝不会想到,这个曾经在和Facebook的较量之中提出的模型,会把战火蔓延到NLP的各个领域…

时间来到2018年,最初,OpenAI发表了一篇名为《Improving Language Understanding by Generative Pre-Training》的论文,这篇论文提出的模型叫GPT,用了Transformer提取特征,跑了12项NLP任务,在9个任务中都达到了最佳:

结果8月份AllenAI在NAACL发表了一篇论文,名为《Deep contextualized word representations》,这篇论文喜提NAACL最佳论文奖,提出的模型名为ELMo,ELMo表示:

GPT用的是单向语言模型,不如我这个双向LSTM语言模型,并且我在6个NLP任务中都达到了最佳效果

然而人家ELMo还没笑够,10月份的时候谷歌就又发了一篇论文,名为《Pre-training of Deep Bidirectional Transformers for Language Understanding》,这篇论文跳出来说:

ELMo其实是浅层的双向LSTM语言模型,提取特征的能力不行,不如我这个用Transformer来提取特征的模型BERT,顺带证明了双向模型比单向的更好。BERT的效果很好,好到刷新了11项NLP任务的记录,被称为史上最强の模型



本来呢,AllenAI提出ELMo大家也没觉得有啥,结果谷歌非得碰瓷,把新模型叫BERT,为啥说碰瓷呢,因为ELMo和BERT是美国一部家喻户晓的动画《芝麻街》里的人物(我小时候好像还看过):

而BERT前脚刚落地,百度立马就带着自己的模型ERNIE跟上来了,这个模型以为单位在海量数据上进行训练,解决了中文里很多单独的字没有语义的问题,因此在中文数据集上表现优越,有的甚至比BERT还好。

这个模型全称叫“Enhanced Representation through Knowledge Integration”,大伙还在困惑这特么是怎么缩写成ERNIE的呢,这时八卦星人一语道破:

ERNIE是上图那个头发炸毛的圆脸憨蛋,也是《芝麻街》里的人物。。。

wtf,又是一个碰瓷的。
芝麻街:

(论取名的重要性)

BERT一出,可怜的ELMo立马被埋没了,但是前面被他俩混合双打的OpenAI不服啊,到2019年2月份就提出了GPT2.0,这次的2.0版本模型更深,训练数据更多,参数高达15亿,尽管BERT说双向模型更好,但是死傲娇GPT2.0说不听不听我不听,仍然坚持用单向语言模型,而且在9项NLP任务上都刷新了前面的记录,GPT2.0表示:

前面说单向模型不好的出来挨打,我偏要用单向模型,我堆参数上去照样比你们好




(上图出自李宏毅对上述几个模型的讲解视频,OpenAI没有开源GPT2.0,暗示GPT2.0是NLPers得不到的女人:D)

言归正传,眼见各路神仙打架,在一旁吃瓜的微软微微一笑,默默掏出了手中的模型MASS(Masked Sequence to Sequence Pre-training),不仅超过了BERT和GPT,而且还是在机器翻译领域效果显著:

谷歌那个气啊,6月份立马放出新模型XLNet,这个新模型好到在20项NLP任务上都达到了最优,这次公众号小编们终于明白了一个道理:

没有最强,只有更强…


吃瓜群众们心想,他们这么刷记录,总有一天会刷到天花板的吧,Facebook听到后表示:

没错,天花板是有的,but, not today

然后转身告诉谷歌,我们帮你重新训练了下BERT,效果更好了…

于是吃瓜群众发现2019年7月26日这天,arxiv上多了一篇论文《RoBERTa: A Robustly Optimized BERT Pretraining Approach》,BERT再入神坛,FB事了拂衣去,深藏功与名


真的是相爱相杀。。。

总结

最后谈下个人看法吧,从18年以来,NLP真的是光速发展,整个领域可以说是日新月异,看了一些大佬的文章,觉得未来Transformer会比RNN和CNN有更广泛的应用前景,毕竟RNN不能并行训练是个硬伤。
另一方面,个人觉得现在的NLP领域是点歪技能树了。。。最新的NLP模型都在朝通用、大一统的模型发展,然后用通用的语言模型去做各种各样的NLP任务,这个趋势没问题,但是现在的新模型都在堆更深的网络、用更大的训练数据(高达数十亿),也导致了更多的参数量(也有十几二十亿)和更长的训练时间。氪金玩家(大误) 大公司们这么玩也没问题,毕竟无脑堆TPU集群增加算力就能缩短时间,但是平民玩家 我们普通人真的是肝不动啊。。。
但愿以后能有小而精的模型出现,并且能有自己特定的应用场景,现在光是活着就已经竭尽全力了啊。。。

从Transformer、BERT到GPT2和XLNet:高端玩家如何用论文互怼相关推荐

  1. $mona$要成为高端玩家

    \(mona\)要成为高端玩家! 好在撑过了联赛,接下来要向高端玩家冲击啦! 新时期当然要有新的学习规划啦! 最近的更新(有什么就在这里说啦) 随便更更. \(FFT\)刷着打算先看看生成函数. 感觉 ...

  2. 计算机系学霸情书,拿最高得分写最动人的话,学霸才是情书界高端玩家!

    文丨超人妈妈 很多网友说在现在的网络时代,千兆时代,爱情也被加了千兆.万兆的速度,那种车马很慢,一生只够爱一个人的情感,对当代人来说就像是乌托邦一般的存在. 对于很多大学生而言,在对异性表达感情是还是 ...

  3. 梦幻模拟战手游最新服务器,《梦幻模拟战手游》新手开服必读,五分钟教你成为高端玩家...

    大家好,8月16日<梦幻模拟战>将迎来一波全平台公测,我相信许多玩家都已经期待已久了.小修要跟你们说一句:"指挥官,你们久等了."今天,小修给大家带来干货中的干货,如何 ...

  4. ivona tts语音合成引擎_高端玩家!树莓派 + Node.js 实现语音机器人

    volute 是什么? volute(蜗壳)是一个使用 Raspberry Pi+Node.js 制作的语音机器人. 什么是树莓派? 树莓派(英语:Raspberry Pi)是基于 Linux 的单片 ...

  5. 一个API调用27个NLP预训练模型:BERT、GPT-2全囊括,像导入NumPy一样容易

    鱼羊 发自 凹非寺  量子位 报道 | 公众号 QbitAI 只需一个API,就能调用BERT.XLM等多种语言模型,逆天的GPT-2也一样轻松到碗里来,这样的模型库你是否期待? 现在,真的有人完成了 ...

  6. 关于「梦幻手游」过于重度和高端缺少乐趣的问题

    「梦幻手游」过于重度的问题在自己的小文"<梦幻手游>分析报告"(http://www.cnblogs.com/freedom-wangyb/p/5526685.html ...

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

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

  8. 深入理解深度学习——GPT(Generative Pre-Trained Transformer):GPT-2与Zero-shot Learning

    分类目录:<深入理解深度学习>总目录 相关文章: · GPT(Generative Pre-Trained Transformer):基础知识 · GPT(Generative Pre-T ...

  9. BERT, ELMo, GPT-2: 这些上下文相关的表示到底有多上下文化?

    2020-02-15 11:19:49 作者:Kawin Ethayarajh 编译:ronghuaiyang 导读 具有上下文信息的词表示到底有多大程度的上下文化?这里给出了定量的分析. 将上下文信 ...

  10. BERT, ELMo, GPT-2: 这些上下文相关的表示到底有多上下文化?

    作者:Kawin Ethayarajh      编译:ronghuaiyang 导读 具有上下文信息的词表示到底有多大程度的上下文化?这里给出了定量的分析. 将上下文信息放到词嵌入中 - 就像BER ...

最新文章

  1. [学习]GridView 学习集合 -- GridView中使用超链接的技巧
  2. CentOS下的Autoconf和AutoMake(实践篇) 2
  3. 在Docker启动Cloudera并开始体验
  4. 【模拟】Codeforces 710C Magic Odd Square
  5. Eclipse快捷键生成语句
  6. Oracle查询表结果添加到另一张表中
  7. 8.3实例程序:平面阴影
  8. java 列表对话框
  9. [禅悟人生]鹰和蜗牛都能登上金字塔尖
  10. springboot连接redis进行CRUD
  11. 使用人人开源遇到的bug
  12. Revit二次开发——依据两条平曲线创建一条三维曲线
  13. JS小图切换大图轮播代码
  14. Ubuntu Budgie 22.04 设置中文语言并安装拼音输入法
  15. ios9遇到 App Transport Security has blocked a cleartext HTTP(http://) resource load 错误
  16. 3.16 使用历史纪录画笔工具 [原创Ps教程]
  17. 将BMP图片转换成ICON图标
  18. [已解决]“TypeError: Cannot read property ‘xxx‘ of undefined“报错情况分析
  19. Ftp连接-200 Switching to ASCII mode,227 Entering Passive Mode
  20. python 教程之如何使用python中的四分位距统计数据查找数据中的异常值

热门文章

  1. 车载电子瞬态浪涌保护用瞬态抑制TVS二极管,如何正确选型?
  2. am355x armlinux 移植openssh
  3. c语言叠阵题目怎么做,选出下列词语书写全正确的一组[]A、贪婪点辍忍军不禁玲珑剔透B、辜负骚扰擎天旱地多姿多采C、小憩茁壮怡然自得头昏目眩D、玷污糟蹋蜂围叠阵明察秋豪...
  4. IP协议的详细知识总结
  5. 几种服务器监控系统,几种服务器监控系统
  6. 夏普打印机SHARP MX-2018UC 发生错误,错误代码:H3-00 解决办法
  7. 微信设置字体后微信浏览器页面字体也会跟着改变的解决办法
  8. 误删除数据恢复 plsql
  9. 发出警报声的c语言程序,1、编写一个函数能够发出警报声并打印HelloWorld!;
  10. 无法安装visual studio code,snap vscode has install-snap change in process