Transformer开山论文惊天「翻车」?图与代码不一致,神秘Bug看傻了

人工智能 新闻
图与代码不一致的论文,很「常见」,不过提出了Transformer的开山鼻祖论文,竟然也出现了同样的错误?

今天,AI圈被一个惊天「翻车」刷屏了。

谷歌大脑的NLP奠基之作、提出Transformer架构的开山鼻祖级论文 《Attention Is All Your Need》 中的图,被网友扒出与代码并不一致。

图片

论文地址:https://arxiv.org/abs/1706.03762

自2017年问世以来,Transformer已经成为AI领域的基石王者。就连大红大紫的ChatGPT真正的幕后大佬也是它。

2019年,谷歌还专门为它申请了专利。

图片

归宗溯源,现在各类层出不穷的GPT(Generative Pre-trained Transformer),都起源于这篇17年的论文。

据Google Scholar,截止目前,这篇奠基之作已有7万多次的引用。

图片

所以,ChatGPT的奠基石都不稳了?

作为「开山鼻祖」的论文,结构图竟是错的?

Lightning AI创始人、机器学习研究者Sebastian Raschka发现,这篇论文中Transformer的图是错误的。

图片

图中被圈出的地方,LayerNorms是在注意力和全连接层之后。在残差块之间放置层归一化,会导致输出层附近参数的预期梯度很大。

而且,这也与代码不一致。

图片

图片

代码地址:https://github.com/tensorflow/tensor2tensor/commit/f5c9b17e617ea9179b7d84d36b1e8162cb369f25#diff-76e2b94ef16871bdbf46bf04dfe7f1477bafb884748f08197c9cf1b10a4dd78e

不过有网友指出,Noam shazeer在几周后对代码进行了纠正。

图片

随后,Sebastian称,在论文Layer Normalization in the Transformer Architecture中,Pre-LN表现得更好,可以解决梯度问题。

图片

这是很多或者大多数架构在实践中所采用的,但它可能导致表征崩溃。

如果层归一化在注意力和全连接层之前被放置在残差连接之中,就会实现更好的梯度。

图片

Sebastian提出,虽然关于使用Post-LN或Pre-LN的讨论仍在进行中,但也有一篇新论文提议把二者结合起来。

图片

论文地址:https://arxiv.org/abs/2304.14802

在这种双残差Tranformer中,表征崩溃和梯度消失的问题都得到了解决。

图片

网友热议

针对论文中的疑点,有网友指出:中间不是已经有了PreLN和PostLN了吗?

Sebastian回答说,自己也觉得有点奇怪。或许2nd LN指的是最后一个输出层,而不是每个transformer块,但他对此也不确定。

图片

有网友表示:「我们经常遇到与代码或结果不匹配的论文。大多数就是出于错误,但有时也会让人很奇怪。而这篇论文已经流传甚久了,为什么这种问题此前从没被人提出过,这真的很奇怪。」

图片

Sebastian表示,公平地讲,最原始的代码是和图片一致的,但他们在2017年修改了代码版本,却没有更新图片。所以,这很令人困惑。

图片

有网友表示,已经有论文在NormFormer中展示了一个不太复杂的架构,而他的团队最近也证实了他们的结果。而ResiDual论文没有在任何地方提到NormFormer,这让人很惊讶。

图片

同时,评论区不断出现网友证实:Transformers中使用的LN,与CNN中使用的方式并不同。

图片

图片

所以,论文真的存在漏洞,还是乌龙事件?

让我们静观后续。

责任编辑:张燕妮 来源: 新智元
相关推荐

2023-05-09 17:18:35

代码AI

2018-07-15 08:18:44

缓存数据库数据

2024-05-11 07:37:43

数据Redis策略

2017-06-20 09:42:52

网络安全法数据隐私法网络安全

2020-04-26 21:57:46

etcd3元数据存储

2017-08-25 17:59:41

浮点运算C语言

2020-07-20 14:06:38

数据库主从同步服务

2018-07-08 07:38:28

数据库缓存数据

2022-03-18 10:53:49

数据系统架构

2010-06-02 10:53:28

MySQL版本

2024-04-07 09:00:00

MySQL

2021-05-27 18:06:30

MySQL编码数据

2021-12-26 14:32:11

缓存数据库数据

2013-12-13 14:46:55

OSPFMTU邻接关系

2013-03-29 11:16:17

2021-01-19 10:39:03

Redis缓存数据

2021-04-18 15:01:56

缓存系统数据

2022-03-16 15:54:52

MySQL数据format

2024-11-18 08:00:00

数据仓库通用语义层商业智能

2011-02-22 14:02:48

vsftpd
点赞
收藏

51CTO技术栈公众号