注意力的誕生:從 Bahdanau 到 Pointer Networks

2014 年,一位蒙特婁大學博士生發明了注意力機制,讓翻譯模型學會「回頭看」。這個概念在三年內演化出 Pointer Networks、端到端語音辨識等變體,最終催生了 Transformer。Sutskever 閱讀清單上的這四篇論文,記錄了 AI 最重要發明之一從萌芽到成熟的過程。

注意力的誕生:從 Bahdanau 到 Pointer Networks

本文為「Ilya Sutskever 推薦讀什麼」系列第六篇。這份傳奇閱讀清單只有 27 項,卻是一位頂尖 AI 科學家眼中「90% 重要的東西」。本篇探討清單中四篇與注意力機制相關的論文,它們如何為 Transformer 鋪平道路。

一個「還不夠好」的翻譯

如果你讀了上一篇關於 RNN 的介紹,你已經知道循環神經網路有多厲害:Karpathy 用它生成莎士比亞風格的文字,Olah 用漂亮的圖解讓所有人理解了 LSTM 的門控機制。但 2014 年,機器翻譯領域正面對一個很實際的瓶頸。當時最先進的翻譯系統叫 Sequence-to-Sequence(序列到序列),由 Sutskever 本人與 Google Brain 研究員 Oriol Vinyals、Quoc Le 在同年提出。運作方式分兩步:先用一個 RNN 讀完整句原文,把所有資訊壓縮成一個固定長度的向量。再用另一個 RNN 從這個向量生成譯文。短句子翻得漂亮,可一旦句子超過二三十個字,品質就急速下滑。原因很直覺:你能把一整部電影的情節壓縮成一條推文嗎?也許可以,但一定會丟掉大量重要細節。那個固定長度的向量就是推文,而長句子就是電影。

找到解法的人叫巴赫丹瑙(Dzmitry Bahdanau),當時是蒙特婁大學的博士生,指導教授是深度學習三巨頭之一的約書亞·班吉歐(Yoshua Bengio)。Bahdanau 提出的解法後來被全世界稱為「注意力機制」(attention mechanism),成為 AI 史上最重要的發明之一,直接通往三年後的 Transformer。而這篇論文,正是 Sutskever 閱讀清單上的第 15 項。

Bahdanau 注意力:讓模型學會「回頭看」

Bahdanau 的注意力論文和 Sutskever 的 Seq2Seq 論文幾乎同時出現在 2014 年的 arXiv 上,兩者回應的是同一個問題,卻走了不同的路。Seq2Seq 用固定長度向量來壓縮整句話,在多個翻譯基準上拿到當時最好的成績。Bahdanau 則認為這個壓縮方式本身就是瓶頸,提出了完全不同的解法。Sutskever 後來把 Bahdanau 的論文放進閱讀清單,等於承認自己的架構有一個根本問題,而另一個人找到了更好的路。這種知識上的坦誠,或許正是 Sutskever 之所以是 Sutskever 的原因。

Bahdanau 的核心洞察可以用一句話說完:翻譯每個字的時候,別只看那個壓縮向量,讓解碼器「回頭看」原文的每一個位置,自己決定現在應該注意哪裡。具體來說,解碼器在生成每個譯文字時,都會計算一組注意力權重,代表原文中每個位置跟當前翻譯步驟的相關程度。如果你正在翻譯出現在句子後半段的專有名詞,模型可以直接把注意力集中到原文中那個名詞出現的位置,而不必期待壓縮向量還記得二十個字之前的資訊。

效果立竿見影。在英法翻譯任務上,Bahdanau 的注意力模型在長句子上大幅超越標準 Seq2Seq,隨著句子變長,優勢越發明顯。但真正讓研究者興奮的,是注意力權重可以視覺化。你畫一張熱力圖,就能清楚看到模型翻譯法文 "l'accord" 時確實把注意力放在英文 "agreement" 上,翻譯 "économique" 時注意力轉移到 "economic"。研究者第一次能用肉眼「看到」模型在做什麼,不再只是面對一個黑盒子吐出的數字。對 Sutskever 這樣一個強調理解而非蠻力的科學家來說,光是這一點就夠讓他把這篇放進清單了。

回到 Sutskever「壓縮即智慧」的信念。Bahdanau 做了一件看似微小但影響深遠的事:他改變了壓縮的方式。Seq2Seq 是「先壓縮,再使用」,把所有資訊一次性塞進固定向量。注意力機制是「邊使用,邊選擇」,在每一步都動態決定現在需要提取什麼。這不是放棄壓縮,而是更聰明的壓縮。Seq2Seq 像是把所有水果打成一杯綜合果汁,喝的時候只剩一種混合味道。注意力機制像是一個水果吧台,每一口都能選擇想嚐的風味,重要的細節不會被淹沒。

Pointer Networks:當注意力變成手指

如果 Bahdanau 的注意力是讓模型「看」輸入的每個位置,那 Oriol Vinyals 做的事更激進:他讓模型直接用手指「指向」輸入的某個元素,把它當成輸出。Vinyals 是 Seq2Seq 的共同作者之一,在 Google Brain 工作(後來轉到 DeepMind),對序列模型的潛力和限制有第一手的理解。他注意到一個根本問題:傳統 Seq2Seq 的輸出字典是固定的,比如英法翻譯的輸出就是所有法文單字。但有些問題的「答案」就在輸入本身,而且字典大小會隨輸入變化。給你十個平面上的點,請找出凸包(convex hull),也就是能包住所有點的最小多邊形,答案是輸入點的一個子集,你沒辦法事先決定輸出字典有多大。

Pointer Networks 的解法優雅得讓人拍案:直接把注意力機制當成輸出機制。每一步解碼時,模型不從固定字典裡選字,而是計算一組注意力分數指向輸入序列中的各個位置,分數最高的那個位置就成為這一步的輸出。注意力從「幫助模型理解的工具」一躍成為「直接產生答案的手段」。這個概念跳躍看起來不大,但後續效應超乎預期。後來的文件摘要系統用同樣思路讓模型直接從原文「複製」重要片段。程式碼生成系統用它指向已經定義過的變數名稱,不必從字典裡猜拼寫。問答系統用它標記答案在原文中的起點和終點。Sutskever 把 Pointer Networks 排在清單第 7 項,位置非常靠前,很可能正因為它展示了注意力的延伸潛力遠不止機器翻譯。

Order Matters:順序不該重要,但它就是重要

Vinyals 同年還發表了一篇讓人皺眉的研究:〈Order Matters: Sequence to Sequence for Sets〉。問題是這樣的:如果你用 Seq2Seq 模型處理一個「集合」,比如一堆數字,理論上結果不該受輸入順序影響。{1, 3, 5} 和 {5, 1, 3} 是同一個集合,模型理應給出一樣的結果。但實驗發現事實相反,某些排列方式的效果就是比其他好很多。這揭露了 Seq2Seq 的一個隱藏假設:不管你餵進什麼資料,它都把輸入當成「序列」(有先後順序),而不是「集合」(無順序之分)。模型把一個本不存在的結構強加在資料上,然後讓這個人為結構影響了自己的判斷。

Vinyals 提出了一個叫 Read-Process-and-Write 的架構來緩解這個問題,核心思路是讓模型用注意力機制反覆讀取整個輸入,逐步建構出一個不依賴順序的內部表示。這篇論文在清單 27 項中排第 9,乍看不如 Bahdanau 注意力那麼「重要」,但 Sutskever 選它可能有更深的考量。如果模型對輸入順序很敏感,而你要解決的問題本質上是無序的,那模型就帶有不必要的歸納偏差(inductive bias),等於把「序列順序」這個雜訊也壓縮進了表示裡。消除這種偏差,就是讓壓縮更忠於資料的真實結構。兩年後,Transformer 用自注意力讓每個位置同時看到所有其他位置,某種程度上正在回應 Vinyals 提出的這個問題:模型如何擺脫順序的束縛?

Deep Speech 2:語音辨識裡藏著的人物彩蛋

清單第 22 項是一篇語音辨識論文,跟前面三篇的「注意力」主題看起來搭不上。但翻開作者名單第一行,你會看到一個今天在 AI 產業如雷貫耳的名字:Dario Amodei。2015 年的 Dario Amodei 還不是 Anthropic 執行長,而是百度矽谷 AI 實驗室(Baidu Research Silicon Valley AI Lab)的研究員。Deep Speech 2 是一個端到端語音辨識系統,用深層 RNN 搭配批次正規化(Batch Normalization)和 CTC(Connectionist Temporal Classification),直接把聲音波形轉成文字。傳統語音辨識管線中那些手工設計的特徵提取器、聲學模型、語言模型,全部跳過。在英語和中文上,系統都達到了接近人類的辨識水準。

「端到端」是這裡的關鍵詞。傳統語音辨識是一條精心打造的流水線,每個環節都需要領域專家花數年時間調校。Deep Speech 2 的做法是把整條流水線換成一個大型神經網路,用大量資料直接訓練,讓網路自己學會所有中間步驟。這跟 Bahdanau 在機器翻譯上做的事異曲同工,也跟後來整個深度學習的大趨勢一致:用通用的學習能力取代手工設計的專用系統。論文列了 51 位作者,在 2015 年算是相當龐大的研究規模,反映了百度當時在語音 AI 領域的大手筆投入。

Sutskever 選這篇進清單,理由恐怕不只是技術。Deep Speech 2 展示了規模化的威力:團隊用大量 GPU 加速訓練,證明隨著資料量和模型規模的增加,表現會持續提升。這個觀察後來被正式化為 Scaling Laws,成為整個 AI 產業投入數百億美元的理論基礎。更耐人尋味的是人物線索。Dario Amodei 離開百度後加入了 OpenAI,成為 Sutskever 的同事。2021 年,他帶著一群研究者從 OpenAI 出走,創辦了 Anthropic,如今已是 AI 產業最重要的安全研究公司之一。Sutskever 在 2020 年前後整理這份閱讀清單時,他和 Amodei 還坐在同一間辦公室裡,而出走即將發生。這份清單裡的人物關係網,比表面看起來複雜得多。

四篇論文,一條通往 Transformer 的路

把這四篇放在一起看,可以辨認出兩條交織的線索。第一條是注意力機制本身的演化:Bahdanau 在 2014 年讓模型學會「回頭看」,Vinyals 在 2015 年用 Pointer Networks 把注意力從輔助工具升級成輸出機制,同年他的 Order Matters 揭露了序列模型在處理無序資料時的根本缺陷。第二條是端到端加規模化的路線:Dario Amodei 領銜的 Deep Speech 2 用的不是注意力機制,而是深層 RNN 加大量 GPU,從語音領域證明了端到端深度學習只要規模夠大,就能在全新任務上匹敵人類。兩條線索共同指向一個結論:AI 不需要人類手工設計的複雜管線,通用的學習架構加上正確的機制,就能解決問題。

2017 年,Google 的八位研究者寫出了那篇改變一切的〈Attention Is All You Need〉,把 RNN 完全拿掉,只留下注意力。Transformer 之所以能誕生,是因為地基已經打好了。Bahdanau 證明了注意力機制本身的威力,Vinyals 展示了它可以承擔遠超輔助角色的功能,而整個領域正在往端到端、通用、可規模化的方向急速前進。Sutskever 把這四篇擺在清單中 Transformer 之前的位置,就是在告訴讀者:Transformer 不是憑空冒出來的天才靈感,而是一連串漸進式洞察堆疊而成的必然結果。

如果壓縮即智慧,那注意力機制在這整段故事裡做的事情就是:讓壓縮變得有選擇性。RNN 的壓縮是盲目的,每讀一個字就混進固定的隱藏狀態裡,不分輕重緩急。注意力的壓縮帶有方向性,模型在每一步都能判斷「現在什麼資訊最重要」,然後把資源集中在那裡。想像兩種做法:一種是用錄音機把整場三小時的演講全部錄下來,另一種是派一個資深記者去現場,即時判斷哪些話值得寫進報導。後者記錄的總量少很多,但留下的都是精華。下一篇,我們將正式迎接 Sutskever 清單上的終極武器:Transformer。


← 上一篇:RNN 的魅力與極限 → 下一篇:Attention Is All You Need 📋 回到系列目錄:那份消失的 Email