Andrej Karpathy 首次公開私人郵件:揭秘Transformer 注意力機制真相
近年來,Transformer 成為深度學習領域的絕對主角,而支撐其核心的“注意力”機制更是掀起了一場革命。但這項改變 AI 格局的技術究竟是如何誕生的?Andrej Karpathy 分享了與“注意力”機制最初開發者 Dzmitry Bahdanau 的私人郵件,首次披露了這段被誤解和簡化的歷史。這不僅是一段關于科學發現的個人回憶,更是一次回歸真相的旅程
郵件揭示了 Bahdanau 如何在 Yoshua Bengio 的實驗室里,從實踐中找到靈感,最終提出了開創性的“RNNSearch”,為后來 Transformer 的成功鋪平了道路。本文將帶你回顧“注意力”的發展歷程,還原那些被時間和流言掩蓋的細節,見證 AI 進化的關鍵時刻,揭秘注意力的起源與其背后的故事
這是關于創新、合作與機緣巧合的真實故事,它不僅屬于學術界,也屬于推動技術邊界的每一個人
注意力的誕生:從困惑到靈感
在人工智能的發展歷程中,“注意力”機制無疑是一個革命性的突破。雖然現在大多數人提到注意力,第一時間想到的可能是 2017 年的論文《Attention is All You Need》和 Transformer,但實際上,注意力的概念早在三年前就已經出現了
故事開始于 2014 年,當時 Dzmitry Bahdanau(簡稱 Dima)作為實習生加入 Yoshua Bengio(加拿大計算機科學家,圖靈獎得主) 的實驗室。他參與了一個機器翻譯項目,主要任務是優化序列到序列的神經網絡模型。然而,Dima 一開始對這項工作并不樂觀——“將一整段文本壓縮成一個向量,再進行翻譯?這怎么可能有效?”
為了克服編碼器和解碼器之間的瓶頸,他開始嘗試一些新思路。最初的設計靈感來自“兩個光標”的概念,即通過動態規劃,讓兩個光標分別移動在源序列和目標序列中。然而,這種方法太復雜且實現困難。于是,他退而求其次,嘗試了一種“硬編碼的對角線注意力”,盡管結果尚可,但仍顯笨拙
真正的突破發生在他的一次靈感閃現中——為什么不讓解碼器自主學習關注源序列中的相關部分?這一想法源自 Dima 中學時的英語翻譯練習:翻譯時,眼睛會在源句和目標句之間反復移動,他將這種軟搜索設計為 softmax 操作,結合雙向 RNN 的狀態進行加權平均。結果,一試即成功!
這種機制被命名為“RNNSearch”,并迅速發表了論文《Neural Machine Translation by Jointly Learning to Align and Translate》
“Attention”的命名與后續發展
最初,RNNSearch 并不叫“注意力”,這個名字是 Yoshua Bengio 在論文的最后階段才加上去的。這個術語靈感來源于人類的認知過程:在翻譯時,人們的注意力會在源語言和目標語言之間來回切換
注意力的提出并非孤立存在,同期還有其他研究者在探索類似機制。例如,Alex Graves 的“神經圖靈機”和 Jason Weston 的“記憶網絡”都包含軟搜索或加權操作的概念。這些研究的出現并非偶然,而是當時學術界對神經網絡和符號 AI 融合的一次集體努力
RNNSearch 的提出迅速引發了業界的關注,但當時還沒有人預見到這個機制的潛力。直到 2017 年,Transformer 的橫空出世——一個幾乎完全依賴注意力機制的架構。這篇論文不僅簡化了模型設計,還引入了位置編碼、多頭注意力等新概念,使得模型在結構上更加簡單統一,也為并行計算打開了大門。自此,Transformer 成為深度學習領域的核心工具,直到今天,其設計仍基本未變
注意力的本質與未來啟示
注意力機制的本質是一種“數據依賴的加權平均”,是一種靈活、高效的全局池化操作。它的提出不僅是技術上的突破,也反映了人類認知的深刻影響。正如 Andrej Karpathy 所評價的:“注意力是一種重大解鎖,是神經網絡架構設計的一次飛躍。”
如今,Transformer 及其變種已經成為自然語言處理、計算機視覺等領域的核心技術。Dima 在回顧這一歷程時指出,注意力機制的誕生得益于多個因素的結合——個人創造力、團隊協作,以及當時 GPU 性能的提升。這種多維度的推動,正是技術進步的關鍵所在
寫在最后:科學進步的本質
從 Bahdanau 的 RNNSearch,到 Transformer 的席卷全球,注意力的進化史展現了科學探索的獨特魅力。它提醒我們,突破性的想法往往來自那些在實踐中尋求解決問題的創新者,而非空想理論家。正如 Dima 所說:“一個好的研發項目,比我們常認為的‘真正的 AI 研究’能為技術進步做出更多貢獻。”
這,就是“注意力”的故事
附:Dzmitry Bahdanau 給 Andrej 的完整郵件內容
Hi,Andrej:
很高興和你分享這段8年前的故事!
我在完成雅各布大學(Jacobs University)與Herbert Jaeger合作完成的碩士第一年后,作為實習生加入了Yoshua的實驗室
我告訴Yoshua我愿意做任何工作。他安排我參與機器翻譯項目,與Kyunghyun Cho和團隊一起工作。一開始,我對將一串單詞壓縮成一個向量的想法非常懷疑。但我也非常渴望能拿到博士生的錄取,所以我卷起袖子,開始做我擅長的事——寫代碼、修復錯誤等。后來,隨著我對項目理解的深入,Yoshua邀請我攻讀博士學位(在2014年,這已經足夠了——那是好時候啊!)。我非常高興,覺得是時候放手去創新了
于是,我開始思考如何避免編碼器和解碼器RNN之間的瓶頸問題。我的第一個想法是設計一個有兩個“光標”的模型,一個遍歷由BiRNN編碼的源序列,另一個遍歷目標序列。這些光標軌跡可以通過動態規劃來邊緣化。Kyunghyun Cho認為這類似于Alex Graves的RNN轉錄器模型。隨后,我也可能讀了Graves的手寫識別論文。然而,這種方法看起來并不適合機器翻譯
這個“光標”方法在實習剩下的5周內太難實現。所以我嘗試了更簡單的方法——兩個光標同時同步移動(本質上是硬編碼的對角注意力)。這種方法有些效果,但缺乏優雅
有一天,我突然想到,如果讓解碼器RNN學會在源序列中搜索光標位置會如何?這個想法部分受到我中學學英語翻譯練習的啟發。翻譯時,視線會在源序列和目標序列之間來回切換。我用softmax表達了這種軟搜索,并通過加權平均BiRNN狀態實現。這種方法第一次試驗就效果很好,讓我非常興奮。我把這種架構稱為RNNSearch,我們趕緊發布了ArXiV論文,因為我們知道Ilya和Google團隊在用8個GPU訓練他們的LSTM模型(RNN Search仍然只用1個GPU)
后來發現,這個名字不夠好。最終,Yoshua在論文最后一輪修改時將“attention”加到了結論部分
1.5個月后,我們看到了Alex Graves的NMT論文。確實是完全相同的想法,但他是從完全不同的動機出發的。在我們的情況下,發明是需求的產物。而對他來說,可能是為了彌合神經與符號AI之間的差距?Jason Weston團隊的Memory Networks論文也采用了類似的機制
我當時沒有預見到attention可以用于更低級別,作為表示學習的核心操作。但當我看到Transformer論文時,我立即對實驗室同事說:“RNN完蛋了。”
回到你的問題:在蒙特利爾Yoshua實驗室中“可微分和數據驅動的加權平均”的發明是獨立于Neural Turing Machines、Memory Networks以及一些來自90年代甚至70年代的相關認知科學論文的(我可以提供任何鏈接)。它是Yoshua鼓勵實驗室追求雄心壯志、Kyunghyun Cho成功領導機器翻譯項目、以及我多年來通過競賽編程磨練的創造力和編碼能力共同促成的。我并不認為這個想法會等待太久才被發現。即使沒有我、Alex Graves和故事中的其他人,attention也是深度學習中實現靈活空間連接的自然方法。它是顯而易見的,只等著GPU足夠快,使人們有動力認真對待深度學習研究。一旦我意識到這一點,我的AI宏愿便是啟動更多像機器翻譯項目那樣的驚人應用項目。優秀的研發工作對基礎技術的進步貢獻遠勝過那些我們常認為是“真正”AI研究的復雜理論
就這些!很想聽聽更多關于你教育AI項目的消息(聽Harm de Vries提起過一些傳聞;))。
祝好, Dima