序列知識 #850:RNN 的意外迴歸
Transformer 雖主導序列建模,但其 O(N²) 的鍵值緩存導致長上下文推理成本高昂。新型 RNN 通過更大狀態、數據依賴門控和 LLM 訓練技術,以 O(1) 推理成本匹配 Transformer 的困惑度,正迎來複興。
💡 AI 概念每日一題:RNN 的意外迴歸
如果你在 2015 年左右構建序列模型,你的世界觀完全由循環神經網絡(RNN)塑造。它們具有一種深層次的架構優雅:你向網絡輸入一個詞元,它更新一個固定大小的隱藏狀態,然後丟棄這個詞元。在推理過程中,內存佔用是恆定的——這是一個 O(1) 的操作,幾乎可以在任何硬件上高效運行。
然後 2017 年到來了。《注意力就是一切》這篇論文發表,整個 AI 領域發生了轉向。我們用 Transformer 的蠻力並行化換取了 RNN 的優雅。Transformer 在硬件上勝出,因為它允許我們將整個序列映射到 GPU 網格上並一次性訓練。但我們做了一筆魔鬼交易:鍵值(KV)緩存。
在 Transformer 中,模型必須顯式地將每個先前詞元的高維表示保存在內存中才能生成下一個詞元。這是一個 O(N²) 的操作。隨着我們將模型推向 10 萬、100 萬甚至數百萬詞元的上下文窗口,計算圖變得數學上令人厭惡。我們只是在進行內存讀取,卻燃燒着大量的高帶寬內存。
這就是為什麼,如果你密切關注 arXiv 上的最新動態,你會發現一種巨大的氛圍轉變。我們正在見證 RNN 的迴歸。但這並不是對 2010 年代經典長短期記憶(LSTM)網絡的懷舊迴歸。新一代的 RNN 具有更大的狀態、數據依賴的門控和 LLM 時代的訓練方法。它們在規模上匹配 Transformer 的困惑度,但保持了那甜美的 O(1) 推理成本。
以下是推動循環復興的一些架構。
深入閲讀