今天小編分享的科學經驗:揭秘注意力機制真正起源!10年前3項研究幾乎同時獨立提出,背後故事細節被Karpathy曬郵件公開了,歡迎閲讀。
大模型的核心組件注意力機制,究竟如何誕生的?
可能已經有人知道,它并非2017 年 Transformer 開山論文《Attention is all you need》首創,而是來自 2014 年 Bengio 實驗室的另一篇論文。
現在,這項研究背後更多細節被公開了!來自 Karpathy 與真正作者兩年前的郵件往來,引起了很多讨論。
到現在已有整 10 年歷史。
一作 Dzmitry Bahdanau,當時是 Bengio 實驗室的一位實習生,在實習只剩 5 周時靈光一現提出了一個簡化方案,相當于實現了對角注意力。
Pytorch 等經典代碼中,正是把注意力稱為 Bahdanau Attention,還保留着他貢獻的痕迹。
Karpathy 之所以現在提起這段往事,是因為最近社區中流傳着一些誤解,認為 Transformer 作者受到科幻電影《降臨》中外星人交流方式的啓發。
真正 2014 年 Attention 機制的靈感,其實來自人類翻譯文字過程中來回看材料的行為。
除了澄清這一點之外,這段真實故事中還有更多亮點,對今天的研究仍有很多啓發。
2014 年的 Attention,與同期Alex Graves 論文 Neural Turing Machines,和Jason Weston 論文 Memory Networks有類似之處,但這些研究出發點和動機不同。
説明在技術積累的臨界點上,不同研究者常會獨立地提出相似的創新。
原本的名字 "RNNSearch" 不夠直觀,後來在 Yoshua Bengio 的建議下改為 " 注意力 ",更能抓住核心概念。
原來起個好名字,真的可以提升技術的傳播和影響力。
有網友看過這個故事之後,感嘆這封郵件 " 應該放在計算機科學博物館 "。
給這些改變世界的發現幾乎總是從實驗開始的,而且沒有人真正提前知道它們的結局。
以下為 Dzmitry Bahdanau 發給 Karpathy 的原始郵件全文翻譯,郵件寫于 2022 年。
10 年前,Attention 真正的誕生
嗨,Andrej。
很高興為您講述 8 年前發生的故事!
我在 Jakobs University(德國雅各布大學)跟随 Herbert Jaeger 完成了碩士一年級的學業後,來到 Yoshua(圖靈獎得主 Yoshua Bengio)的實驗室實習。
我向 Yoshua 表示我願意從事任何工作,他便讓我參與機器翻譯項目,與 Kyunghyun Cho 及團隊展開合作。
我對将一系列單詞塞進向量的想法非常懷疑,但我也真的很想要一個博士學位的 offer,所以我卷起袖子,開始做我擅長的事情——編寫代碼、修復 Bug 等等。
在某個時候,我對團隊正在進行的工作有了足夠的了解,Yoshua 邀請我攻讀博士學位。2014 年是個好時代,只需這些工作就足以讓我讀博了——美好的舊時光!
我很高興,我覺得是時候享受樂趣并發揮創造力了。
于是我開始思考如何避免 Encoder-Decoder RNN 之間的信息瓶頸。
我的第一個想法是建立一個帶有兩個 " 遊標 " 的模型:一個在源序列中移動,由 BiRNN 編碼;另一個在目标序列中移動。遊標軌迹将使用動态規劃邊際化。
Kyunghyun Cho 認為這相當于 Alex Graves 的 RNN Transducer 模型。之後,我可能也讀了 Graves 的手寫識别論文,但這種方法對于機器翻譯來説似乎不太合适。
上述帶有遊標的方法在我實習的剩餘 5 周内很難實現,所以我嘗試了更簡單的方法——兩個遊標同時同步移動,實際上相當于硬編碼的對角注意力。
這種方法有點效果,但缺乏優雅。
所以有一天我有了新的想法,讓 Decorder RNN 學會在源序列中搜索放置遊標的位置。這在一定程度上受到了我中學英語學習中翻譯練習的啓發。
在翻譯時,你的目光會在源序列和目标序列之間來回移動,我将軟搜索表示為 softmax,然後對 BiRNN 狀态進行加權平均。從第一次嘗試就效果很好,我非常興奮。
我将這個架構稱為 RNNSearch,在 1 個 GPU 上運行。由于我們知道谷歌的 Ilya(OpenAI 前首席科學家 Ilya Sutskever)團隊使用 8 個 GPU 的 LSTM 模型在某些方面領先于我們,所以我們趕緊在 ArXiV 上發表了一篇論文。
後來發現,這個名字并不好。更好的名字(注意力)是 Yoshua 在最後的一次修改中添加到結論中的。
直觀地説,這在解碼器中實現了一種注意力機制,解碼器決定源語句的哪些部分需要關注。通過讓解碼器具有注意力機制,我們減輕了編碼器将源語句中的所有信息編碼為固定長度向量的負擔。通過這種新方法,信息可以分布在整個注釋序列中,解碼器可以相應地有選擇地檢索。
一個半月後,我們看到了 Alex Graves 的論文。确實是完全相同的想法,盡管他的動機完全不同。
在我們這邊,發明新算法是需求驅動的。我猜在他那邊,是連接神經學派和符号學派的雄心?Jason Weston 團隊的 Memory Networks 論文也有類似的機制。
我沒有預見到注意力可以在更低的層次上使用,作為表示學習的核心算法。
但當我看到 Transformer 論文時,我立即向實驗室的同事宣布:RNN 已死。
回到您最初的問題:在蒙特利爾 Yoshua 的實驗室中 " 可微且數據依賴的加權平均 " 的發明與神經圖靈機、Memory Networks 以及 90 年代(甚至 70 年代;但我無法提供鏈接)的一些相關認知科學論文無關。
這是 Yoshua 推動實驗室追求雄心壯志的領導成果,Kyunghyun Cho 在管理由初級博士生和實習生組成的大型機器翻譯項目方面的出色技能,以及我自己多年來在編程競賽中磨練出的創造力和編程技能的結果。
即使我自己、Alex Graves 和這個故事中的其他角色當時沒有從事深度學習工作,離這個想法出現也不會太遠了。
注意力只是深度學習中實現靈活空間連接的自然方式,這幾乎是一個顯而易見的想法,一直在等待 GPU 足夠快,讓人們有動力并認真對待深度學習研究。
自從我意識到這一點,我對 AI 的大志向就是啓動像機器翻譯那樣令人驚嘆的應用項目。
良好的研發工作可以為基礎技術的進步做出更多貢獻,而不是我們通常認為 " 真正的 " 人工智能研究的所有花哨的理論。
就醬!非常好奇聽到更多關于您的 AI 教育項目的消息(我從 Harm de Vries 那裏聽到了一些傳聞)。
幹杯,
Dima
One More Thing
Karpathy 感嘆,有點驚訝這篇真正的注意力起源論文沒有獲得足夠多的
自從 Attention is all you need 一飛衝天之後,大家意識到給論文起一個好名字對技術傳播的影響,後面的論文标題就放飛了。
除了扎堆模仿 xx is all you need 之外,最近甚至還出現了 Taylor Unswift。
講的是把模型權重轉換成泰勒級數的參數,來保護已發布模型的所有權并防止被濫用。
就,emmm ……
提到的論文:
Neural Machine Translation by Jointly Learning to Align and Translate
https://arxiv.org/abs/1409.0473
Attention is All You Need
https://arxiv.org/abs/1706.03762
Neural Turing Machines
https://arxiv.org/abs/1410.5401
Generating Sequences With Recurrent Neural Networks
https://arxiv.org/abs/1308.0850
Memory Networks
https://arxiv.org/abs/1410.3916
Sequence to Sequence Learning with Neural Networks
https://arxiv.org/abs/1409.3215
Taylor Unswift:
https://arxiv.org/abs/2410.05331
參考鏈接:
[ 1 ] https://x.com/karpathy/status/1864028921664319735