14

RealFormer:Real 简单,Real 有效

 3 years ago
source link: https://mp.weixin.qq.com/s?__biz=MjM5ODkzMzMwMQ%3D%3D&%3Bmid=2650419457&%3Bidx=1&%3Bsn=a52cc5bd4babf0a2d4d8b743f23a5703
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

E7BvM3U.jpg!mobile

来自 Google Research 一篇关于 Transformer 改进的论文,提出方法 real 简单,论文也写得 real 简洁,可以说是最近读得最没难度的论文了。但虽然方法简单,效果却很好。

RealFromer 中的 Real 表示 Re sidual A ttention L ayer,这三个词其实已经介绍完了这篇论文的方法。所以如果只介绍方法的话,那写到这里就可以结束了。

zEjA32i.jpg!mobile

真的很简单,论文里都能看到作者们努力凑页数的辛苦。

为了不辜负这份辛苦,还是看看吧。

Residual Attention Layer:嗯,就改一行代码

First,将上面 Residual Attention Layer 展开讲一下,如字面意思,相比原来的 Transformer 模型,RealFormer 模型只是 在相邻 Attention 模块间加入了残差连接 。所以需要改的代码可能都才一两行。

模型示例图如下

3QbIfqz.jpg!mobile

只是在每层 Attention Score 计算时,加上前一层的 Attention Score.

用方程表示的话,先写出原 Transformer 注意力计算方程

viANBzq.jpg!mobile

而 RealFormer 只是在过 Softmax 前,加上前一层的 Attention Score

2EvyymF.jpg!mobile

注意这里加的是 Attention Score ,而不是过 softmax 后的 Attention.

至于第一层,当然没 Prev.

Benchmark 对比:Real 好哇

可能为了增加实(cou)验(ye)量(shu),所以对比的 Transformer 模型再分成 Post-LN 和 Pre-LN 模型,就是 Layer Normalization 放 Attention 前还是后的区别,前者是最原始的,应用也比较广,而后者则在 GPT,Megatron 这样的单向语言模型应用比较多。

两者区别如下

FZrIZvV.jpg!mobile

Pre-LN 的话相当于在各层 Token Embedding 直接打了条通道。

主要在 预训练模型 BERT 上进行实验,分别在预训练和精调实验上进行了对比,首先预训练实验

nuaiM3U.jpg!mobile

发现 RealFormer 表现都最好,有稳定提升,特别是最大的 xLarge 提升最大。

之后在 GLUE 上精调对比,用的 Large 模型

myqUzuV.jpg!mobile

发现 RealFormer 的整体分最好的,大部分任务优于其他两个,而凑数的 Pre-LN 当然也是垫底。

接着在 SQuAD 问答数据集上进行精调,因为该任务的复杂性,SQuAD 能比较好反应预训练模型的整体性能,也是在 Large 模型进行的精调。

rQVvU3i.jpg!mobile

可以看出 RealFormer 仍然是优于其他两个。

因为真的很简单,Reddit 上的热心网友也马上改了行代码后,在 CIFAR-10 图像识别上做了实验

I3QZvub.jpg!mobile

发现 RealFormer 比 Transformer 确实有比较好的提升。

所以整体来说, RealFormer 是 Real 有效

细节分析:零零碎碎

首先,RealFormer 的 算力利用有效性

3aaIfi.jpg!mobile

和 Post-LN 模型对比,只用一半训练步数就能在 GLUE 上取得相近表现。

然后,之前有发现,Pre-LN 模型对大学习率会有收益,那 RealFormer 怎么样

NVZRbuN.jpg!mobile

实验发现 RealFormer 也有类似性质, 对大学习率有较大收益

最后,作者还对各个头的输出分布进行了分析,包括各个头内部,以及跨层之间同一个头,这里画了两幅超大的图,直接占了差不多两页的篇幅。

而得出的结论是,相比起 Post-LN 和 Pre-LN, RealFormer 获得的 Attention 会更稀疏 ,特别是后几层。而且中间几层之间的 JS-散度比较低,说明可能 RealFormer 有效的原因是提供了一定的 Regularityzation(嗯,万物都可正则)。

结语

这篇论文感觉内容可能就一篇 short paper 吧,但还蛮有意思的,提出一个很简单的方法,然后规规矩矩地进行了实验分析。看完之后拍自己脑袋,咋没想这样试过呢。

但不足之处也很明显,只是提出了这个方法,对方法为什么有效的分析还是有点少,只是单纯做实验然后陈述结果。

所以看完后还是挺疑惑,为什么给 Attention Score 加个残差连接就有效呢,还是不懂。分析发现可以让 Attention 更稀疏,那为什么稀疏带来的提升更好呢,感觉这一块再多做些理论分析会更好些。

由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。 星标具体步骤为:

(1)点击页面 最上方"AINLP" ,进入公众号主页。

(2)点击 右上角的小点点 ,在弹出页面点击“ 设为星标 ”,就可以啦。

感谢支持,比心

欢迎加入AINLP技术交流群

进群请添加AINLP小助手微信 AINLPer(id: ainlper),备注 NLP技术交流 yi6vEbV.jpg!mobile

推荐阅读

这个NLP工具,玩得根本停不下来

征稿启示| 200元稿费+5000DBC(价值20个小时GPU算力)

完结撒花!李宏毅老师深度学习与人类语言处理课程视频及课件(附下载)

从数据到模型,你可能需要1篇详实的pytorch踩坑指南

如何让Bert在finetune小数据集时更“稳”一点

模型压缩实践系列之——bert-of-theseus,一个非常亲民的bert压缩方法

文本自动摘要任务的“不完全”心得总结番外篇——submodular函数优化

Node2Vec 论文+代码笔记

模型压缩实践收尾篇——模型蒸馏以及其他一些技巧实践小结

中文命名实体识别工具(NER)哪家强?

学自然语言处理,其实更应该学好英语

斯坦福大学NLP组Python深度学习自然语言处理工具Stanza试用

关于AINLP

AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。

yamaeu.jpg!mobile

阅读至此了,分享、点赞、在看三选一吧:pray:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK