首页  >  文章  >  科技周边  >  Transformer开山论文惊天「翻车」?图与代码不一致,神秘bug看傻了

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

WBOY
WBOY转载
2023-05-11 12:46:131420浏览

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

网友热议

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

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

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

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

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

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

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

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

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

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

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

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

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

让我们静观后续。

以上是Transformer开山论文惊天「翻车」?图与代码不一致,神秘bug看傻了的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:51cto.com。如有侵权,请联系admin@php.cn删除