夢晨 發(fā)自 凹非寺
量子位 | 公眾號(hào) QbitAI
大模型的核心組件注意力機(jī)制,究竟如何誕生的?
可能已經(jīng)有人知道,它并非2017年Transformer開山論文《Attention is all you need》首創(chuàng),而是來自2014年Bengio實(shí)驗(yàn)室的另一篇論文。
現(xiàn)在,這項(xiàng)研究背后更多細(xì)節(jié)被公開了!來自Karpathy與真正作者兩年前的郵件往來,引起了很多討論。

到現(xiàn)在已有整10年歷史。

一作Dzmitry Bahdanau,當(dāng)時(shí)是Bengio實(shí)驗(yàn)室的一位實(shí)習(xí)生,在實(shí)習(xí)只剩5周時(shí)靈光一現(xiàn)提出了一個(gè)簡化方案,相當(dāng)于實(shí)現(xiàn)了對(duì)角注意力。
Pytorch等經(jīng)典代碼中,正是把注意力稱為Bahdanau Attention,還保留著他貢獻(xiàn)的痕跡。

Karpathy之所以現(xiàn)在提起這段往事,是因?yàn)樽罱鐓^(qū)中流傳著一些誤解,認(rèn)為Transformer作者受到科幻電影《降臨》中外星人交流方式的啟發(fā)。
但其實(shí)Transformer作者中的Illia Polosukhin只是很久以后接受采訪時(shí)用《降臨》來類比。

真正2014年Attention機(jī)制的靈感,其實(shí)來自人類翻譯文字過程中來回看材料的行為。
除了澄清這一點(diǎn)之外,這段真實(shí)故事中還有更多亮點(diǎn),對(duì)今天的研究仍有很多啟發(fā)。
2014年的Attention,與同期Alex Graves論文Neural Turing Machines,和Jason Weston論文Memory Networks有類似之處,但這些研究出發(fā)點(diǎn)和動(dòng)機(jī)不同。
說明在技術(shù)積累的臨界點(diǎn)上,不同研究者常會(huì)獨(dú)立地提出相似的創(chuàng)新。
原本的名字“RNNSearch”不夠直觀,后來在Yoshua Bengio的建議下改為“注意力”,更能抓住核心概念。
原來起個(gè)好名字,真的可以提升技術(shù)的傳播和影響力。
有網(wǎng)友看過這個(gè)故事之后,感嘆這封郵件“應(yīng)該放在計(jì)算機(jī)科學(xué)博物館”。
給這些改變世界的發(fā)現(xiàn)幾乎總是從實(shí)驗(yàn)開始的,而且沒有人真正提前知道它們的結(jié)局。

以下為Dzmitry Bahdanau發(fā)給Karpathy的原始郵件全文翻譯,郵件寫于2022年。
10年前,Attention真正的誕生
嗨,Andrej。
很高興為您講述8年前發(fā)生的故事!
我在Jakobs University(德國雅各布大學(xué))跟隨Herbert Jaeger完成了碩士一年級(jí)的學(xué)業(yè)后,來到Y(jié)oshua(圖靈獎(jiǎng)得主Yoshua Bengio)的實(shí)驗(yàn)室實(shí)習(xí)。
我向Yoshua表示我愿意從事任何工作,他便讓我參與機(jī)器翻譯項(xiàng)目,與Kyunghyun Cho及團(tuán)隊(duì)展開合作。
我對(duì)將一系列單詞塞進(jìn)向量的想法非常懷疑,但我也真的很想要一個(gè)博士學(xué)位的offer,所以我卷起袖子,開始做我擅長的事情——編寫代碼、修復(fù)Bug等等。
在某個(gè)時(shí)候,我對(duì)團(tuán)隊(duì)正在進(jìn)行的工作有了足夠的了解,Yoshua邀請我攻讀博士學(xué)位。2014年是個(gè)好時(shí)代,只需這些工作就足以讓我讀博了——美好的舊時(shí)光!
我很高興,我覺得是時(shí)候享受樂趣并發(fā)揮創(chuàng)造力了。
于是我開始思考如何避免Encoder-Decoder RNN之間的信息瓶頸。
我的第一個(gè)想法是建立一個(gè)帶有兩個(gè)“光標(biāo)”的模型:一個(gè)在源序列中移動(dòng),由BiRNN編碼;另一個(gè)在目標(biāo)序列中移動(dòng)。光標(biāo)軌跡將使用動(dòng)態(tài)規(guī)劃邊際化。
Kyunghyun Cho認(rèn)為這相當(dāng)于Alex Graves的RNN Transducer模型。之后,我可能也讀了Graves的手寫識(shí)別論文,但這種方法對(duì)于機(jī)器翻譯來說似乎不太合適。
上述帶有光標(biāo)的方法在我實(shí)習(xí)的剩余5周內(nèi)很難實(shí)現(xiàn),所以我嘗試了更簡單的方法——兩個(gè)光標(biāo)同時(shí)同步移動(dòng),實(shí)際上相當(dāng)于硬編碼的對(duì)角注意力。
這種方法有點(diǎn)效果,但缺乏優(yōu)雅。
所以有一天我有了新的想法,讓Decorder RNN學(xué)會(huì)在源序列中搜索放置光標(biāo)的位置。這在一定程度上受到了我中學(xué)英語學(xué)習(xí)中翻譯練習(xí)的啟發(fā)。
在翻譯時(shí),你的目光會(huì)在源序列和目標(biāo)序列之間來回移動(dòng),我將軟搜索表示為softmax,然后對(duì)BiRNN 狀態(tài)進(jìn)行加權(quán)平均。從第一次嘗試就效果很好,我非常興奮。
我將這個(gè)架構(gòu)稱為RNNSearch,在1個(gè)GPU上運(yùn)行。由于我們知道谷歌的Ilya(OpenAI前首席科學(xué)家Ilya Sutskever)團(tuán)隊(duì)使用8個(gè)GPU的LSTM模型在某些方面領(lǐng)先于我們,所以我們趕緊在ArXiV上發(fā)表了一篇論文。
后來發(fā)現(xiàn),這個(gè)名字并不好。更好的名字(注意力)是Yoshua在最后的一次修改中添加到結(jié)論中的。
直觀地說,這在解碼器中實(shí)現(xiàn)了一種注意力機(jī)制,解碼器決定源語句的哪些部分需要關(guān)注。通過讓解碼器具有注意力機(jī)制,我們減輕了編碼器將源語句中的所有信息編碼為固定長度向量的負(fù)擔(dān)。通過這種新方法,信息可以分布在整個(gè)注釋序列中,解碼器可以相應(yīng)地有選擇地檢索。

一個(gè)半月后,我們看到了Alex Graves的論文。確實(shí)是完全相同的想法,盡管他的動(dòng)機(jī)完全不同。

在我們這邊,發(fā)明新算法是需求驅(qū)動(dòng)的。我猜在他那邊,是連接神經(jīng)學(xué)派和符號(hào)學(xué)派的雄心?Jason Weston團(tuán)隊(duì)的Memory Networks論文也有類似的機(jī)制。

我沒有預(yù)見到注意力可以在更低的層次上使用,作為表示學(xué)習(xí)的核心算法。
但當(dāng)我看到Transformer論文時(shí),我立即向?qū)嶒?yàn)室的同事宣布:RNN已死。
回到您最初的問題:在蒙特利爾Yoshua的實(shí)驗(yàn)室中“可微且數(shù)據(jù)依賴的加權(quán)平均”的發(fā)明與神經(jīng)圖靈機(jī)、Memory Networks以及90年代(甚至 70 年代;但我無法提供鏈接)的一些相關(guān)認(rèn)知科學(xué)論文無關(guān)。
這是Yoshua推動(dòng)實(shí)驗(yàn)室追求雄心壯志的領(lǐng)導(dǎo)成果,Kyunghyun Cho在管理由初級(jí)博士生和實(shí)習(xí)生組成的大型機(jī)器翻譯項(xiàng)目方面的出色技能,以及我自己多年來在編程競賽中磨練出的創(chuàng)造力和編程技能的結(jié)果。
即使我自己、Alex Graves和這個(gè)故事中的其他角色當(dāng)時(shí)沒有從事深度學(xué)習(xí)工作,離這個(gè)想法出現(xiàn)也不會(huì)太遠(yuǎn)了。
注意力只是深度學(xué)習(xí)中實(shí)現(xiàn)靈活空間連接的自然方式,這幾乎是一個(gè)顯而易見的想法,一直在等待GPU足夠快,讓人們有動(dòng)力并認(rèn)真對(duì)待深度學(xué)習(xí)研究。
自從我意識(shí)到這一點(diǎn),我對(duì)AI的大志向就是啟動(dòng)像機(jī)器翻譯那樣令人驚嘆的應(yīng)用項(xiàng)目。
良好的研發(fā)工作可以為基礎(chǔ)技術(shù)的進(jìn)步做出更多貢獻(xiàn),而不是我們通常認(rèn)為“真正的”人工智能研究的所有花哨的理論。
就醬!非常好奇聽到更多關(guān)于您的AI教育項(xiàng)目的消息(我從 Harm de Vries 那里聽到了一些傳聞)。
干杯,
Dima
One More Thing
Karpathy感嘆,有點(diǎn)驚訝這篇真正的注意力起源論文沒有獲得足夠多的關(guān)注。
自從Attention is all you need一飛沖天之后,大家意識(shí)到給論文起一個(gè)好名字對(duì)技術(shù)傳播的影響,后面的論文標(biāo)題就放飛了。

除了扎堆模仿xx is all you need之外,最近甚至還出現(xiàn)了Taylor Unswift。
講的是把模型權(quán)重轉(zhuǎn)換成泰勒級(jí)數(shù)的參數(shù),來保護(hù)已發(fā)布模型的所有權(quán)并防止被濫用。

就,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
熱門跟貼