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

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

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

20230725183118e235e05993a12ba00bb63666d2deb0e88cfd6d353

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

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

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

20230725183118d94b63661abf697b12484239902d8c6f55017a205

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

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

202307251831185241d1f6974b1379e90698cb6517de7420d4cb115

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

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

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

2023072518312912e43f0359fb64f5c3f4463150fa5d3c596d05268

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

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

20230725183119e4c679049465be09c109381b7d18c63750d5a1756

20230725183120469890d921ae46b1a43813060e39815eb05b8c420

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

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

2023072518312032cd087093b28c983242435b91b540064993c3967

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

20230725183121c182e2d59c39f7ad0e279466ece1b8ed73eef8675

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

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

20230725183121875e81f58d01b06645169507aeee60a601df01163

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

2023072518312286f62938592412febba443a5898e27e61480a1308

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

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

202307251831222883f70327ad6df1012715e1a0a1c9497ba721497

网友热议

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

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

20230725183130586efa203042c7f0b7e02351dc3c9a6bc356e8508

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

202307251831237964f517047684776ed0947de7d4d7c9a5497b416

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

20230725183123530fee069a46c73fd048102209a7b98fd20fa2417

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

20230725183124190f850029a92b5a04b672ffdf2ce4e2bdff85188

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

20230725183124f74403106a944be8951293c78b86f81de9485f863

20230725183125b356224882361c2e60e546856be80558287e4d406

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

让我们静观后续。

© 版权声明

相关文章