展會信息港展會大全

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起
來源:互聯(lián)網(wǎng)   發(fā)布日期:2025-03-02 22:39:16   瀏覽:223次  

導(dǎo)讀:o1、R1 等推理模型的出現(xiàn),給了長文本新課題。嘉賓丨肖朝軍、傅天予整理丨程曼祺上周,DeepSeek、Kimi 都放出了新的大模型架構(gòu)改進(jìn)和優(yōu)化成果,分別是 NSA、MoBA。二者都聚焦對大模型中 “注意力機(jī)制” 的改進(jìn)。注意力機(jī)制是當(dāng)前大語言模型(LLM)的核心機(jī)制。2017 年 6 月那篇開啟大語言模型革命的 Transformer 八子論文,標(biāo)題就是:Attention Is All You Need(注意力就是你 ......

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

o1、R1 等推理模型的出現(xiàn),給了長文本新課題。

嘉賓丨肖朝軍、傅天予整理丨程曼祺

上周,DeepSeek、Kimi 都放出了新的大模型架構(gòu)改進(jìn)和優(yōu)化成果,分別是 NSA、MoBA。二者都聚焦對大模型中 “注意力機(jī)制” 的改進(jìn)。

注意力機(jī)制是當(dāng)前大語言模型(LLM)的核心機(jī)制。2017 年 6 月那篇開啟大語言模型革命的 Transformer 八子論文,標(biāo)題就是:Attention Is All You Need(注意力就是你所需要的一切)。

而優(yōu)化 Attention 的計(jì)算效率和效果,又能幫助解決 AI 學(xué)界和業(yè)界都非常關(guān)心的一個(gè)問題,就是長文本(long context)。

不管是要一次輸入一整本書,讓模型能幫我們提煉、理解;還是在生成現(xiàn)在 o1、R1 這類模型需要的長思維鏈;又或者是希望模型未來能有越來越長的 “記憶”,這都需要長文本能力的支持。

這期節(jié)目我們邀請了兩位做過 Attention 機(jī)制改進(jìn)的 AI 研究者做嘉賓。

一位是清華計(jì)算機(jī)系自然語言處理實(shí)驗(yàn)室的博士生肖朝軍,他是 InfLLM 注意力機(jī)制改進(jìn)的一作,導(dǎo)師是清華計(jì)算機(jī)系副教授劉知遠(yuǎn)。

另一位是清華大學(xué) NICS-EFC 實(shí)驗(yàn)室的博士生傅天予,他是 MoA 注意力機(jī)制改進(jìn)的共同一作,導(dǎo)師是清華電子工程系主任汪玉。這個(gè)實(shí)驗(yàn)室也做了很多與硬件層結(jié)合的優(yōu)化工作。

兩位有一些相互補(bǔ)充的視角,他們之前做的注意力機(jī)制改進(jìn)也都和 NSA、MoBA 一樣,屬于 “稀疏注意力” 范疇。

傅天予分享了一個(gè)他的導(dǎo)師汪玉,對大模型優(yōu)化目標(biāo)的簡潔描述:

神經(jīng)網(wǎng)絡(luò)就是 y=f(x)。x 是輸入,y 是輸出,f 是這個(gè)網(wǎng)絡(luò)。

現(xiàn)在的趨勢是,x 越變越長,這是多模態(tài)等帶來的;y 也越變越長,這是思維鏈帶來的。f 要做的事就是,當(dāng) x 和 y 都變得這么長時(shí),怎么能算得快,同時(shí)又能正確地輸入 x,并正確地輸出想要的 y。這就是大家努力的總體目標(biāo)。

f 要怎么做到這兩點(diǎn),改進(jìn)注意力機(jī)制就是方法之一。

以下是本期播客的實(shí)錄,文字有精簡。

Attention 的提出就是為了長文本,只是當(dāng)時(shí)的 “長” 不是現(xiàn)在的 “長長長”

晚點(diǎn):兩位可以先自我介紹一下,以及講講你們過去和注意力機(jī)制改進(jìn)相關(guān)的研究。

肖朝軍:我是來自清華大學(xué)計(jì)算機(jī)系的博士生肖朝軍,一直專注于大模型高效架構(gòu)層面的研究。2024 年,我們發(fā)布了 InfLLM,也是做大模型注意力機(jī)制的改進(jìn)。

一年多前,開源模型最多也就處理 8K 就是 8000 token 左右的文本長度。我們就想,能不能在無需訓(xùn)練的情況下,在推理階段(可以理解為大模型的使用階段)用稀疏注意力機(jī)制處理更長的 128K 甚至 1000K 的文本。這個(gè)注意力機(jī)制的思路和現(xiàn)在的 DeepSeek NSA 類似。而 NSA 是進(jìn)一步把稀疏注意力做到了預(yù)訓(xùn)練階段,寫了非常豐富的算子,做了很精細(xì)的設(shè)計(jì),是一個(gè)很大的進(jìn)步。

(注:大模型里,稀疏指僅部分連接,效率更高;對應(yīng)的稠密,也就是 dense,指數(shù)據(jù) / 計(jì)算全連接。)

傅天予:我是來自清華大學(xué)電子系的博士生傅天予,我們也一直關(guān)注神經(jīng)網(wǎng)絡(luò)模型的高效性優(yōu)化。

也是在 24 年,我們發(fā)布了一篇和今天要聊的 MoBA 標(biāo)題很像的論文,叫 MoAMixture of Sparse Attention(混合稀疏注意力機(jī)制),而 MoBA 是 Mixture of Block Attention(混合分塊注意力機(jī)制)。我們發(fā)現(xiàn),之前的一些稀疏注意力機(jī)制,雖然能使模型流暢地輸出內(nèi)容,但模型其實(shí)沒有有效利用遠(yuǎn)距離的上下文信息,我們就希望能分析不同注意力頭的各自特性,找到究竟其中哪些對模型能真正利用長上下文很關(guān)鍵,然后更多保留這部分注意力頭。

晚點(diǎn):我們可以先聊關(guān)于 Attention 的一些基礎(chǔ)問題。2017 年提出目前大語言模型主流架構(gòu) Transformer 的那篇論文,標(biāo)題就是 Attention Is All You Need。簡單來說,Attention 作為大模型的核心模塊,它是用來做什么的?

傅天予:要解釋這個(gè),我們要先知道一個(gè)大模型的輸入和輸出是什么,它的輸入就是一系列 Token,也就是 “詞元”,簡單理解就是一個(gè)詞。每個(gè)詞本身有一個(gè)含義,但也有必須聯(lián)系上下文才能表達(dá)的含義,比如代詞 “it”,要放到上下文里才知道指什么。所以 Attention 機(jī)制的核心思想就是希望能知道輸入的每一個(gè)詞和之前的詞的關(guān)系。

在標(biāo)準(zhǔn) Attention 里,每新輸入一個(gè)詞都要和前面輸入的所有詞去計(jì)算相關(guān)性,它是一個(gè)關(guān)系強(qiáng)弱加權(quán)。這樣不僅能幫大模型理解這個(gè)詞本身,還能理解它的語境

肖朝軍:補(bǔ)充一下,大家也可能需要了解,再往前,神經(jīng)網(wǎng)絡(luò)是怎么處理序列(輸入模型的一系列 Token 整體上是一個(gè)序列)的。

之前的主流方法是循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)。循環(huán)是什么意思呢?就是一個(gè)詞、一個(gè)詞地去理解,去動態(tài)維護(hù)一個(gè) “記憶”。

比如當(dāng) RNN 來處理 “我是肖朝軍” 這句話時(shí),會先處理 “我”,再是 “是”,再是 “肖”,每處理一步,就把之前所有輸入都變成 “記憶”,也就是系統(tǒng)里的一堆矩陣。在 “我是肖朝軍” 的例子里,RNN 處理到 “肖” 時(shí),已經(jīng)把 “我” 和 “是” 轉(zhuǎn)化成了一個(gè) “記憶”。

RNN 里的 “記憶” 的存儲大小是不變的,但這會使它 “遺忘” 很久以前的詞元。當(dāng)只是一句話時(shí),這個(gè)問題不嚴(yán)重。但如果像我們今天這樣錄 2 個(gè)小時(shí)的播客,我最開始說完我是誰后,之后只會說 “我”,這樣到后面,模型就會忘掉 “我” 和 “肖朝軍” 的關(guān)系。這是 RNN 的缺陷。

而 Transformer,它所使用的 Attention 機(jī)制,就是把過往所有詞都以一個(gè)個(gè)向量的形式存儲下來。這樣在 2 小時(shí)的聊天里,我每次提到 “我”,它都會去和過往所有詞做一次相關(guān)性計(jì)算,就能知道 “我” 和 “肖朝軍” 高度相關(guān)。

這也導(dǎo)致,Attention 的 “記憶” 不是固定的存儲大小,而是把 “記憶” 擴(kuò)展為過往全部詞元,這就能改進(jìn) RNN 長序列的遺忘問題。

晚點(diǎn):所以當(dāng)年從 RNN 到 Transformer 提出 Attention,本身就是為了解決長文本問題。

肖朝軍:對,不過當(dāng)時(shí)的長,也沒多長,就是幾百 Token。

在 Attention 之后,很快就提出了稀疏 Attention,最開始是為了 BERT(注:Google 最早的 Transformer 架構(gòu)的大語言模型,但它的優(yōu)化目標(biāo)和同為 Transformer 架構(gòu)的 OpenAI 的 GPT 系列模型略微不同,BERT 一度是比 GPT 更主流的大模型),它只能處理 512 Token。

然后稀疏 Attention 出來后,讓模型能處理 4K token 了,這是 18、19 年的事,那時(shí)大家認(rèn)為這已經(jīng)非常長了。

而到了現(xiàn)在,動輒是 128k 甚至 1M(100 萬)的長度,發(fā)展非?。所以 Transformer 確實(shí)是為了長文本,只是這個(gè)長和現(xiàn)在的長還不太一樣。

原初 Attention 兩大瓶頸:“顯存開銷” 和 “計(jì)算復(fù)雜度”

晚點(diǎn):從長文本到了長長長長長文本。后來原初 Transfomer 里標(biāo)準(zhǔn)的 Full Attention 又遇到了什么瓶頸,為什么不夠用呢?

肖朝軍:首先就是存儲問題,其實(shí)就是剛才講的,它的 “記憶” 大小是不固定的,序列越長,記憶就越大。比如有幾百萬個(gè)詞,那存下來要好幾百 G,現(xiàn)在 GPU 的顯存(顯存是 GPU 的 “專屬內(nèi)存”,最初主要存儲圖像信息,在大語言模型里,它用來存儲模型參數(shù)和訓(xùn)練數(shù)據(jù))就幾十 G,存儲遠(yuǎn)遠(yuǎn)不夠。

第二是計(jì)算復(fù)雜度的問題,因?yàn)?Full Attention,是每處理一個(gè) Token 時(shí),都需要和前面所有 Token 做一遍相關(guān)性計(jì)算,如果序列長度是 N,它的計(jì)算復(fù)雜度就是 N 的平方,當(dāng)長度越長,計(jì)算時(shí)間就會越來越高。

傅天予:我補(bǔ)充一點(diǎn)關(guān)于訓(xùn)練和推理階段的 Attention 的區(qū)別。之前很多稀疏注意力工作都是一個(gè)稠密訓(xùn)練的 Attention,但在推理階段把它變成稀疏的。這是因?yàn)槲覀儼l(fā)現(xiàn) Attention 本身含有稀疏性。

這可能有幾個(gè)主要原因:一是 Attention 里有 Softmax(軟最大值)機(jī)制。簡單理解,它是一個(gè) “更軟” 版本的取最大值的過程。一般取最大值時(shí),會把最大的數(shù)取為 1,其他全部取 0。而 Softmax 是把最大的那個(gè)取為 0.9,第二大的可能是 0.09,第三大的是 0.009……這導(dǎo)致在這么多相關(guān)性數(shù)值里,我們一般叫 Attention Score 或 Attention Weights,本來就只有很少的數(shù)很大,這就為稀疏性提供了一個(gè)潛在的數(shù)學(xué)保證。

(注:如前文所說,Transfomer 里的 Attention 是每輸入一個(gè)新 Token,要計(jì)算它與前面所有 Token 的相關(guān)性,所以會得到一組值。常規(guī)在一組值里取最大值時(shí),是將最大的設(shè)為 1,其他都設(shè)為 0;而 Softmax 是對所有值進(jìn)行一種函數(shù)處理,使它們都分布在 0 到 1 之間,且總和為 1,最大值會得到最高的權(quán)重。這些權(quán)重之間的數(shù)值懸殊很大,是 “稀疏” 的,一些很小的值,后續(xù)處理時(shí)可能被舍棄。)

二是從語言學(xué)的角度,比如我們今天播客可能有 2 小時(shí),但在 “朝軍” 和 “我” 之間產(chǎn)生的關(guān)聯(lián)非常稀疏,就是這 2 小時(shí)里,前面有幾萬個(gè) Token,但和 “朝軍” 有強(qiáng)相關(guān)性的只有 “我” 這個(gè)詞,關(guān)聯(lián)本身就很稀疏。

最后是從人腦角度,也不是所有神經(jīng)元都和所有神經(jīng)元連接,它的連接也非常稀疏,并且隨著年齡增大,會越來越稀疏。

所以無論從數(shù)學(xué)上,還是語言學(xué)上,還是神經(jīng)科學(xué)上的啟發(fā),大家就覺得稀疏 Attention 本來就存在,并且是可以被利用起來提高效率。

晚點(diǎn):總結(jié)而言,在 Full Attention 的基礎(chǔ)上,后來有哪些改進(jìn)思路?

肖朝軍:我認(rèn)為主流分類就是稀疏注意力和剛才提到的 RNN(循環(huán)神經(jīng)網(wǎng)絡(luò)),它又復(fù)活了,比如 Mamba 這類模型,RNN 計(jì)算很高效,但有遺忘機(jī)制。

(注:Mamaba 是由卡內(nèi)基梅隆大學(xué)在 2023 年提出的基于狀態(tài)空間模型的高效長序列建模架構(gòu),主要作者是 Tri Dao 和 Albert Gu 等,后文提及的 FlashAttention 的作者也是 Tri Dao。)

傅天予:不過現(xiàn)在大家好像不喜歡說自己是 RNN,會說是線性注意力。我覺得線性注意力里的一些工作確實(shí)還是以循環(huán)的方式在進(jìn)行,但也會有少部分工作,雖然也是把很長的序列壓縮到一個(gè) “記憶” 里,但不像傳統(tǒng) RNN 是逐詞迭代進(jìn)行的。

晚點(diǎn):哪種更主流呢?最近的 NSA 和 MoBA 都是稀疏注意力方向的改進(jìn)。

肖朝軍:在 Mamba 之前,稀疏更主流。但 Mamba 之后,線性注意力機(jī)制的改進(jìn)也非常多。

傅天予:稀疏注意力整體對原本注意力的改動沒那么激進(jìn),與現(xiàn)有很多方法能直接搭上。而線性注意力可能描繪了一個(gè)更美好的藍(lán)圖。

因?yàn)樗拇鎯Υ笮∈枪潭ǖ模ㄗⅲ壕性注意力可理解為 RNN,前文有提及 RNN 的存儲大小是固定的),計(jì)算復(fù)雜度隨序列變長,不是平方增長,而是線性增長(這和它的計(jì)算方式有關(guān))。

所以從 Scaling Laws 角度看,當(dāng)輸入比較短時(shí),線性注意力的提效可能不如稀疏注意力,但輸入特別長時(shí),線性注意力的效率優(yōu)勢會上來。

不過目前大家更多嘗試稀疏注意力,因?yàn)楹芏鄬W(xué)界探索表明,純線性注意力的效果(效率衡量的是速度和計(jì)算資源消耗,效果衡量的是模型 “聰明” 程度)欠佳,還需要混合其它注意力機(jī)制。

晚點(diǎn):Attention 的提出和后來的改進(jìn)都是為了處理長文本。除了改進(jìn) Attention 機(jī)制本身,還有哪些努力能幫助處理長文本?

傅天予:優(yōu)化一個(gè)大模型,會有 3 個(gè)層次:算法、系統(tǒng)和硬件。硬件層很好理解,你用更快的 GPU,當(dāng)然可以變快。

系統(tǒng)層稍難理解,比如 FlashAttention 就是一個(gè)系統(tǒng)層改進(jìn)。雖然 GPU 的峰值算力和峰值顯存是固定的,但代碼寫得好不好,決定了你能用到百分之多少。系統(tǒng)層的工作就是追求提高這個(gè)百分比,充分利用帶寬、顯存、算力。FlashAttention 讓 Attention 的計(jì)算效率提升了一個(gè)臺階,顯存則至少降了一個(gè)量級。

再上面是算法層,細(xì)分又有模型層和更普遍意義的算法。稀疏注意力、MoE(混合專家系統(tǒng))都是對模型層的改進(jìn)。而改變生成范式比如從一個(gè)、一個(gè)詞往外蹦,變成兩個(gè)詞、兩個(gè)詞往外蹦,則是更普遍的算法改進(jìn)。

(注:MoE 現(xiàn)在是一個(gè)主流的大模型架構(gòu),比如 DeepSeek-V3 就是一個(gè) MoE 模型,它也是 DeepSeek-R1 的基座模型。V3 也有生成方式上的改進(jìn),使用了 Meta 提出的 Multi-token Prediction,一次生成兩個(gè)詞。)

肖朝軍:算法層有很多改進(jìn),因?yàn)殚L文本的問題很多,不僅僅是計(jì)算復(fù)雜度和顯存。那針對不同場景,就有不同的優(yōu)化方向。

比如 DeepSeek 在 DeepSeek-V2 里提出的 MLA 也是一個(gè)算法改進(jìn),它解決什么問題呢?就是剛才提到的,Transformer 需要把所有詞元都存下來,存儲量很大,這樣每次去訪問它的時(shí)間會很長,要一個(gè)一個(gè)讀出來。所以 DeepSeek 就想把這個(gè)維度壓低、存儲變小,就做了這方面的一個(gè)改進(jìn)。

(注:MLA 是 Multi-head Latent Attention,多頭潛在注意力。它通過一種聯(lián)合壓縮技術(shù),把算注意力分?jǐn)?shù)時(shí)的顯存占用減少了超 90%,同時(shí)保持了模型性能。)

解決長思維鏈生成,是 o1/R1 的 RL(強(qiáng)化學(xué)習(xí))方法繼續(xù)發(fā)展的關(guān)鍵

晚點(diǎn):接下來,我們來看 NSA 和 MoBA 的一些具體改進(jìn)。整體上,兩位看到的 NSA 和 MoBA 的最大亮點(diǎn)是什么?

傅天予:我認(rèn)為最有意思的是,他們都在預(yù)訓(xùn)練階段就引入了稀疏注意力,而此前多數(shù)工作是做稠密訓(xùn)練,在推理時(shí)才稀疏。訓(xùn)練與推理的不一致難免會引入誤差。

所以業(yè)界和學(xué)界都很好奇:如果在預(yù)訓(xùn)練階段就引入稀疏性,對模型最終效果是什么影響?

這兩個(gè)成果,解答了這個(gè)大家關(guān)心的問題:就是稀疏注意力經(jīng)過充分訓(xùn)練,性能上可以比肩稠密注意力,甚至某些情況下還能超越。

這給稀疏注意力領(lǐng)域打了一劑強(qiáng)心針,之前很多審稿人會質(zhì)疑,稀疏雖然讓模型變快了很多,但變笨了一點(diǎn),這能否接受?而這些新成果就是告訴大家,你可以快的同時(shí)也很聰明。

肖朝軍:補(bǔ)充一下,從推理階段的稀疏到預(yù)訓(xùn)練階段的稀疏,gap 其實(shí)挺大的。因?yàn)橛布,GPU 本身不太適合稀疏計(jì)算,而適合稠密計(jì)算。把稀疏機(jī)制引入預(yù)訓(xùn)練,怎么實(shí)現(xiàn)加速是一個(gè)難點(diǎn)。

晚點(diǎn):為什么是在這個(gè)時(shí)間點(diǎn),DeepSeek、Kimi 等公司不約而同地要把稀疏從推理階段引入預(yù)訓(xùn)練?

肖朝軍:其實(shí)這和 o1/R1 密切相關(guān),這類推理模型會用 RL(強(qiáng)化學(xué)習(xí))在訓(xùn)練中生成很長的思維鏈(CoT),這是讓模型變聰明的必然趨勢。

所以 “輸出很長” 變得更重要了,之前大家更關(guān)注 “輸入很長”,比如 Kimi 產(chǎn)品早期的特性就是輸入很長。但當(dāng)前 DeepSeek 可能更關(guān)注輸出很長時(shí)的加速。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

NSA 論文中的效果(左表)和效率(右表)提升。肖朝軍關(guān)注的輸出很長時(shí)的加速,體現(xiàn)在右表中的第一欄,Decode,即解碼、生成過程的加速;NSA 相比 Full Attention 加速了 11.6 倍。

其實(shí)我之前也想過把稀疏注意力引入訓(xùn)練階段,但當(dāng)時(shí)我沒有現(xiàn)在的認(rèn)知,只是想提升訓(xùn)練階段的效率。

現(xiàn)在的新認(rèn)知是,解決長 CoT 才是未來繼續(xù) RL Scaling 的關(guān)鍵點(diǎn)。DeepSeek-R1 報(bào)告里有一張圖:隨著 RL 的訓(xùn)練步數(shù)增加,整個(gè)輸出會越來越長?梢灶A(yù)想,訓(xùn)練步數(shù)還會繼續(xù)增加,輸出長度也會繼續(xù)突破。這時(shí)把稀疏注意力引入預(yù)訓(xùn)練階段,尤其是 RL 的訓(xùn)練但這件事(把稀疏引入 RL 訓(xùn)練)NSA 論文里還沒體現(xiàn)它一定是個(gè)未來趨勢。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

DeepSeek-R1 技術(shù)報(bào)告中展示隨訓(xùn)練步數(shù)增長(橫軸),輸出長度(縱軸)持續(xù)增長。

所以我特別關(guān)注 NSA 和 MoBA 的理論加速比能不能落到實(shí)際,從論文看,他們都做得比較好。我們之前的 InfLLM 就是理論加速比高,但實(shí)際加速比不夠好。

晚點(diǎn):為什么之前加速比很難落下去?

肖朝軍:我一直在搞算法,不是很懂底層系統(tǒng),當(dāng)時(shí)我也和別人討論過,就覺得稀疏天然不適合 GPU,就做罷了。

但看到 NSA 之后,我覺得還是自己的認(rèn)知有局限,就是我不懂硬件,沒有在算子層做優(yōu)化。而 DeepSeek 真能把這個(gè)想法推下去,這是 NSA 給我的最大沖擊。

改進(jìn)稀疏注意力的思路已比較成熟,但 DeepSeek 和 Kimi 真的把加速落到了真實(shí)系統(tǒng)

晚點(diǎn):這次 NSA 也特別強(qiáng)調(diào)了它是 hardware-aligned(硬件協(xié)同)的,就是結(jié)合硬件層做了優(yōu)化,這個(gè)可以解釋一下嗎?

傅天予:這需要理解 GPU 到底在怎么做計(jì)算。GPU 的一個(gè)特性就是 “single instruction, multiple data”(單指令、多數(shù)據(jù)流),即給出一條相同指令,對不同數(shù)據(jù)做同樣的操作。

比如只計(jì)算一個(gè)矩陣時(shí),GPU 比較慢,但如果對 20 個(gè)矩陣做同樣操作,它就很高效。所以 GPU 是高度并行計(jì)算,并行度越高,對 GPU 越友好。這是計(jì)算方面。

在內(nèi)存方面,計(jì)算機(jī)的內(nèi)存是存一串連續(xù)數(shù)字。GPU 順序訪問連續(xù)數(shù)字的效率很高,但如果要訪問的數(shù)據(jù)比較碎片化,GPU 一次取一大塊數(shù),卻只有其中一小部分有用,效率就會很低,反之,如果取一大塊數(shù),這些數(shù)都有用,效率就很高。

理解這兩點(diǎn)后再來看 NSA,它做了一個(gè)對 GPU 很友好的操作,就是它是 Block(塊,可以簡單理解為是一組數(shù))的,這又進(jìn)到了 Kimi 的 MoBA 的標(biāo)題里了,MoBA 的 B 就指 Block。

所以 NSA 雖然是一個(gè)稀疏注意力,但它的粒度是到 “塊” 的,要么這一塊都有用,要么都沒用。這就滿足了剛才說的兩個(gè)期待:內(nèi)存上是連續(xù)訪問,計(jì)算上是對同一塊數(shù)據(jù)做相同計(jì)算。它對硬件層的主要優(yōu)化,就是提升 Block 的計(jì)算。

肖朝軍:對,打個(gè)廣告。我 24 年 2 月的 InfLLM 的核心觀點(diǎn)也是,稀疏注意力,就應(yīng)該在塊層級去做,才會對硬件更友好。

晚點(diǎn):其實(shí)我也問過 R1,NSA 和 MoBA 的異同,它說:“MoBA 更側(cè)重 Block 級別的調(diào)控,而 NSA 更側(cè)重 Token 級別的精細(xì)化操作和硬件優(yōu)化! 實(shí)際上二者都是 Block 級別的嗎?

肖朝軍:NSA 也是在 Block level 做的,但文章里沒特別強(qiáng)調(diào)。因?yàn)榧词故?Block,真要做到非常好的硬件優(yōu)化,還是需要很多操作,所以它后面更多強(qiáng)調(diào)了它的硬件優(yōu)化。

晚點(diǎn):硬件優(yōu)化靠什么具體方法實(shí)現(xiàn)呢?就是前面提到的寫算子?

肖朝軍:對,就是寫一些系統(tǒng)層的算子(注:算子是神經(jīng)網(wǎng)絡(luò)中執(zhí)行具體數(shù)學(xué)運(yùn)算的模塊、它在模型較底層,直接與芯片硬件交互)。DeepSeek 在 NSA 上寫算子時(shí)用的是 Triton,這是 OpenAI 開源的、在英偉達(dá)的 CUDA 上再抽象了一層的接口。

傅天予:我想補(bǔ)充一個(gè)非常有意思的事,因?yàn)?Triton 是 GPT 3 那會兒出來的(注:Triton 開源于 2021 年,GPT-3 發(fā)布于 2020 年 6 月)。一個(gè)不靠譜的坊間傳聞是,GPT 曾嘗試用稀疏注意力來訓(xùn)練,所以去做了系統(tǒng)適配,這就有了 Triton。

不管傳聞?wù)婕,Triton 確實(shí)非常適合做塊狀稀疏計(jì)算。雖然 OpenAI 最后自己可能沒有用 Triton,但它已經(jīng)成為學(xué)界要做塊狀稀疏計(jì)算的很好的工具。

晚點(diǎn):所以這是 OpenAI 還 open 的時(shí)候,給社區(qū)帶來的一些貢獻(xiàn)。

肖朝軍:補(bǔ)充一下,我覺得 DeepSeek 未來可能會繼續(xù)深入到 CUDA 層(CUDA 是英偉達(dá)自己提供的,可以幫開發(fā)者更好使用 GPU 的一套軟件平臺)去寫優(yōu)化。因?yàn)?Triton 是對編碼友好,CUDA 可以做更深。

還想補(bǔ)充一點(diǎn), OpenAI 有沒有做稀疏注意力我不知道,但它一定在長文本上做了新的工作。最近它發(fā)了 DeepResearch,可以想象,長文本能力一定很強(qiáng),只不過它自己沒有強(qiáng)調(diào)。

晚點(diǎn):具體到 MoBA 和 NSA 的注意力機(jī)制的設(shè)計(jì),它們的異同是什么呢?

傅天予:我覺得共同點(diǎn)主要有三點(diǎn)。一是,它們都是先從更高層次選一塊需要關(guān)注的上下文,這個(gè)所謂的 “一塊” 就是 “Block Level”,具體選法,二者有細(xì)微差別,但總之要先選一塊,把這一塊內(nèi)容拿進(jìn)來,再去關(guān)注塊內(nèi)部的細(xì)節(jié)。

二是,它們選詞時(shí),都傾向關(guān)注離當(dāng)前這個(gè)詞最近的詞,這也非常自然,因?yàn)榧词故浅砻茏⒁饬,天然也會表現(xiàn)出對臨近的詞更關(guān)注。這從語言學(xué)上也能理解。

三是,二者都是對于每一個(gè)輸入的詞(更具體的說是詞的查詢向量),它選的 Block 是不一樣的,就是它會針對當(dāng)前在 decode(解碼,這里指生成過程)的詞,選不同的上下文塊。

肖朝軍:所以整體思路其實(shí)挺相似,除了怎么選塊的差別,還有對塊的表示可能有細(xì)微差別。

還是我剛才提到的那個(gè)點(diǎn),現(xiàn)在改進(jìn)注意力的思想已經(jīng)比較一致了,但他們能把加速比落到真實(shí)的系統(tǒng)里,這件事很關(guān)鍵。

晚點(diǎn):除了你們提到的,NSA 和 MoBA 都是在塊級別上做計(jì)算,它們也提到自己都是動態(tài)稀疏注意力。這里的 “動態(tài)” 是什么意思,那么相對應(yīng)的靜態(tài)呢?

傅天予:其實(shí) NSA 和 MoBA 都是既有動態(tài),也有靜態(tài)。

解釋這個(gè)問題,還是要回到大模型怎么處理文本。文本進(jìn)入一個(gè)模型時(shí),其實(shí)是進(jìn)來了兩個(gè)東西,一是每個(gè)詞說了什么,二是這些詞的位置,而位置就是靜態(tài)的。

所以,如果一種注意力機(jī)制和位置強(qiáng)綁定,比如總是關(guān)注句子開頭的幾個(gè)詞,就偏靜態(tài);如果是更多關(guān)注詞的內(nèi)容,就是動態(tài)。

在 MoBA 里,它會先固定選擇某個(gè) Token 所在的 Block,其實(shí)就是在選擇臨近的位置的 Token,它也有靜態(tài)的部分在。

肖朝軍:NSA 里用到的滑動窗口也是一種靜態(tài)稀疏注意力。因?yàn)樗呀?jīng)預(yù)設(shè)了這個(gè)詞要和哪些窗口里的一組詞做相關(guān),而不是動態(tài)地決定和哪些詞相關(guān)。

那它的問題也可以想象,比如 “我是肖朝軍” 這個(gè)例子,在很長的文本里,就需要動態(tài)地去關(guān)聯(lián) “朝軍” 和 “我”,靜態(tài)可能就滑不到那么前面的 “我” 了。

傅天予:一般而言,靜態(tài)效率高,但效果稍差。動態(tài)效果更好,因?yàn)樗瑫r(shí)關(guān)注位置和內(nèi)容信息,但這導(dǎo)致在輸入具體內(nèi)容前,不知道具體要看哪里,這種計(jì)算對 GPU 不是很友好,就會比較慢。所以二者是一種權(quán)衡。

訓(xùn)練曲線揭曉懸念:稀疏注意力一定更快,但它也能更好嗎?

晚點(diǎn):NSA 和 MoBA 都做了一系列測試來驗(yàn)證自己的效果和效率提升的有效性,在這些測試與實(shí)驗(yàn)成果中,你們看到的亮點(diǎn)是什么?

傅天予:我個(gè)人更關(guān)注他們的 Training Curve(訓(xùn)練曲線)的下降情況。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

NSA 展示了 270 億參數(shù)大小模型上的訓(xùn)練損失曲線(Training Loss Curve)。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

MoBA 展示的訓(xùn)練損失曲線。左圖的常用預(yù)測損失包含所有詞元,即也包含大量段前位置的詞元(相當(dāng)于短文本);而右圖則展示了 32K 輸入長度下,最后 1K 詞元的預(yù)測損失,這種長文本末尾的預(yù)測損失,更能突出表現(xiàn)模型在上下文變長后的預(yù)測性能。

因?yàn)槲覀冴P(guān)注一個(gè)改進(jìn)是否在帕累托前沿上,即同等速度下模型是否最聰明,同等聰明時(shí)模型是否最快。

稀疏注意力一定比稠密注意力更快,而訓(xùn)練曲線會揭示,在投入足夠多的資源時(shí),稀疏注意力能否和稠密注意力一樣好?這件事我們之前不知道。這兩份工作都給了一個(gè)比較積極的答案,就是稀疏和稠密的效果大概率會趨于一致,甚至稀疏會更好。

肖朝軍:我個(gè)人最關(guān)注的是在預(yù)訓(xùn)練階段引入洗漱注意力后,模型在長推理、數(shù)學(xué)題上的效果。就還是長思維鏈的表現(xiàn)。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

NSA 在主要 Benchmark 上與 Full Attention 的對比。涉及通用知識、推理和編程;在 4 項(xiàng)推理 Benchmark 中,NSA 的效果都好于 Full Attention。

除了 MMLU(是涉及幾十個(gè)學(xué)科的通用知識測試)和 MBPP(測試模型從自然語言合成簡短 Python 的能力)兩個(gè)指標(biāo),NSA 的表現(xiàn)都好于 Full Attention。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

這張表中,NSA 則對比了 H2O、InfLLM 等過往稀疏注意力改進(jìn)和 Full Attention 在測試長文本能力的 LongBench 上的表現(xiàn),并展示了 MQA(多文檔問答)、Code(代碼)等細(xì)分任務(wù)上的得分。

大模型“注意力簡史”:與兩位AI研究者從DeepSeek、Kimi最新改進(jìn)聊起

MoBA 與 Full Attention 的效果對比。MoBA 與 NSA 的基準(zhǔn)選擇有重合,也有區(qū)別。比如二者都測了衡量推理能力的 BBH、GSM8K,和與編程任務(wù)有關(guān)的 MBPP,也都測了綜合衡量長文本能力的 LongBench。

晚點(diǎn):這部分最后想補(bǔ)充問一下,之前很多工作,包括兩位自己的工作,都沒有把稀疏注意力引入預(yù)訓(xùn)練階段,除了前面提到的認(rèn)知問題,是不是也和學(xué)界的算力資源比較少有關(guān)?

肖朝軍:這有兩方面,一是學(xué)界要去搞預(yù)訓(xùn)練,確實(shí)開銷很大,但我覺得這是很小的一方面。更多還是我之前說的認(rèn)知問題,我不太會做底層優(yōu)化,而且 InfLLM 是 2023 年就開始做的,當(dāng)時(shí)也不知道生成長思維鏈對 RL 很重要。

傅天予:學(xué)界還有一個(gè)問題是缺數(shù)據(jù)。如果我們要把稀疏引入預(yù)訓(xùn)練,并且想證明它好用,就需要讓它變得和稠密模型一樣強(qiáng)。但稠密模型那么強(qiáng),所用的數(shù)據(jù)、和一些訓(xùn)練上的技巧,學(xué)界可能沒有或不知道。

你當(dāng)然可以用一樣的方法、一樣的數(shù)據(jù)去訓(xùn)練稀疏注意力和稠密注意力的兩個(gè)模型,如果稀疏的稍微聰明一點(diǎn),好像也能證明問題。但工業(yè)界其實(shí)不會太認(rèn)可。并且驗(yàn)證成本也很高。

所以我們當(dāng)時(shí)做 MoA 時(shí),最大出發(fā)點(diǎn)就是不要訓(xùn)練,我一定不要訓(xùn)練。預(yù)訓(xùn)練可能算力不夠,但微調(diào)(后訓(xùn)練)還是做得起的。但我們就不要微調(diào),因?yàn)槲覀兿M?MoA 能即插即用,任何人訓(xùn)練一個(gè)稠密注意力的模型后,都能直接用。

我們也不希望我們的方法改變原來模型的偏好。你一旦訓(xùn)練,可能會讓一個(gè)本來禮貌的模型,突然變得機(jī)靈,我們不想這樣。所以當(dāng)時(shí)是故意拿掉了訓(xùn)練部分。

肖朝軍:對對對,我 InfLLM 論文的標(biāo)題里就寫了 Training-Free,就是不要訓(xùn)練。

大模型訓(xùn)練分預(yù)訓(xùn)練、微調(diào)兩個(gè)階段。2023 年時(shí),第一個(gè)階段還是短的輸入和輸出,第二階段才會用比較少量的數(shù)據(jù)把它訓(xùn)長。所以當(dāng)時(shí)還是想在訓(xùn)練之后的階段把效率打上去。而現(xiàn)在看,從預(yù)訓(xùn)練階段就引入稀疏,一是效果會更好,二是因?yàn)殚L CoT,現(xiàn)在也真的需要這么做。

多模態(tài)疊加長思維鏈,文本還會更長長長

晚點(diǎn):再往下,你們認(rèn)為注意力機(jī)制有哪些探索方向?剛才也講到了一些,如長思維鏈生成的相關(guān)優(yōu)化。還有呢?

肖朝軍:還有一點(diǎn)是,隨著長文本變得更長,稀疏注意力遲早會面臨存儲問題,因?yàn)樗拇鎯?fù)雜度其實(shí)沒變,還是得存前面的全部內(nèi)容。

存儲改進(jìn)的極致是 RNN,也可以說是線性注意力,它的存儲大小是固定的,但性能可能有上限。在這兩個(gè)存儲的極端之間,有沒有一個(gè)中和?

晚點(diǎn):想請?zhí)煊柩a(bǔ)充一下,存儲這件事,它能如何從硬件上優(yōu)化嗎?

傅天予:這很難。對比計(jì)算和存儲,計(jì)算發(fā)展得非常快,但片上存儲,例如顯存發(fā)展很慢。最近 4 年,英偉達(dá)芯片的算力翻了幾十倍,存儲連兩倍都沒到。(英偉達(dá) 2025 年發(fā)布的 B200 的算力是 2021 年 A100 的 64 倍,顯存則是 1.2 倍)。

這是因?yàn)榭焖俅鎯Ψ浅U夹酒娣e。而芯片面積再增大,良率會快速衰減,成本就會高得不可接受。

肖朝軍:當(dāng)然存儲相對便宜,不一定用顯存,也可以用計(jì)算機(jī)內(nèi)存,或直接掛硬盤,但這又帶來數(shù)據(jù)傳輸?shù)乃俣葐栴}。

其實(shí)人腦就不需要那么多存儲。有沒有可能再進(jìn)一步向人的機(jī)制靠近?就是能動態(tài)決策,什么時(shí)候、什么東西該存,什么不該存,這可能是下一步要探索的。

晚點(diǎn):長文本,目前階段看還是以語言為主,未來多模態(tài)的注意力要怎么優(yōu)化?

傅天予:我手頭正在探索多模態(tài)注意力的特點(diǎn)。一是模態(tài)變多時(shí),上下文會有非常大的增長。對標(biāo)人類,人 1 小時(shí)能讀 18K 的文本,但聽 1 小時(shí)音頻轉(zhuǎn)化成模型輸入是 90K,看 1 小時(shí)視頻,即使每秒只看 1 幀(正常視頻至少每秒 24 幀),輸入到模型也是 100 萬(具體數(shù)值和分辨率有關(guān))。100 萬 token 什么概念?差不多能放下 3 冊《哈利波特》。

二是,不同模態(tài)也會改變注意力的稀疏模式。文本中常見的稀疏模式是關(guān)注臨近的詞。而對視頻而言,可能需關(guān)注不同幀的相同位置比如在觀察球的運(yùn)動軌跡時(shí),那些和當(dāng)前 Token 最相關(guān)的 Token 并非總是鄰近的,而是會跳躍,比如每隔 220 個(gè) Token 看一下。所以不同模態(tài)對注意力設(shè)計(jì)也有不同要求。

我們最近剛開源了一個(gè)工作 FrameFusion,它雖然不是處理注意力問題,但也是希望解決長序列下的視頻理解問題。這個(gè)工作發(fā)現(xiàn),現(xiàn)在我們在文本里選擇舍棄哪部分注意力的值時(shí),更多是從重要性考慮;而視頻里,有些東西雖然很重要,但它每幀都出現(xiàn),就不需要重復(fù)看。所以我們會更多從冗余性出發(fā),只保留重要且獨(dú)特的部分。

晚點(diǎn):你們覺得,我們現(xiàn)在已經(jīng)看到的 NSA、MoBA 這些注意力機(jī)制,離我們理想中的注意力,總體還有多大差距?

肖朝軍:還是要從能力出發(fā)去思考這個(gè)問題,就是如何探索長文本的記憶能力。注意力機(jī)制本身能改的、大的東西也不多了。而獲得更長的 “記憶” 可能需要新的架構(gòu)改進(jìn)。

傅天予:汪玉老師特別喜歡說一個(gè)例子:神經(jīng)網(wǎng)絡(luò)就是 y=f(x)。x 是輸入,y 是輸出,f 是這個(gè)網(wǎng)絡(luò)。

現(xiàn)在的趨勢是,x 越變越長,這是多模態(tài)等帶來的;y 也越變越長,這是思維鏈帶來的。f 要做的事就是,當(dāng) x 和 y 都變得這么長時(shí),我怎么能算得快,同時(shí)又能正確地輸入 x,并正確地輸出想要的 y。這就是大家努力的總體目標(biāo)。

至于 f 怎么做到這兩點(diǎn),注意力改進(jìn)是方法之一。但也有其他方法能服務(wù)這個(gè)目標(biāo)。

用 AGI 解決可控核聚變,然后供能 AGI?

晚點(diǎn):我們又回到了長文本。未來更長的文本,可以用來做什么呢?

肖朝軍:按 OpenAI 的規(guī)劃,下一步就是做創(chuàng)新。比如我們博士生做科研,從選題到做實(shí)驗(yàn),到最后寫 paper,整個(gè)過程會歷時(shí)幾個(gè)月甚至一、兩年,這幾個(gè)月時(shí)間里的思考如果都存下來,現(xiàn)在的存儲肯定不夠。

(注:OpenAI 去年 7 月定義了 AGI 路線圖的 5 個(gè)階段:聊天者、推理者、智能體、創(chuàng)新者、組織者)。

而我覺得,AGI 的實(shí)現(xiàn),未來一定要做科研。

晚點(diǎn):為什么你認(rèn)為科研這個(gè)場景這么重要?

肖朝軍:因?yàn)榭蒲行枰浅>C合的能力。能做科研,意味著 AI 要有思考能力、記憶能力、高效學(xué)習(xí)能力等等,所以科研是 AGI 發(fā)展到較高水平時(shí)的集中體現(xiàn)。

有了這種能力,AI 能拓展人類知識的邊界,提出新范式,探索新的宇宙奧秘。

晚點(diǎn):OpenAI 的路線圖里,創(chuàng)新者之后還有一個(gè)組織者。

肖朝軍:其實(shí)我不太認(rèn)同這個(gè)。組織可能先于創(chuàng)新發(fā)生,它不一定是高智能水平才能做到的事,螞蟻間也有組織。

這(創(chuàng)新和組織)可能是兩個(gè)方向:一是單體智能增強(qiáng),一是從單體向多體合作發(fā)展,誰先發(fā)展不一定。

大家以前會想,能不能讓大語言模型自己生成文本,再自己訓(xùn)練自己,越訓(xùn)越聰明,F(xiàn)在發(fā)現(xiàn),這樣訓(xùn)練完的大模型會直接崩掉。但如果 AI 真能做科研的話,其實(shí)有希望讓它自己迭代、自己升級,甚至有可能出現(xiàn)超越人類的智能。

晚點(diǎn):現(xiàn)在有看到任何這樣的苗頭嗎?

肖朝軍:現(xiàn)在還沒有,但我覺得未來 AGI 總會發(fā)現(xiàn)自己的缺陷,那就得改自己。

晚點(diǎn):它為什么會產(chǎn)生這個(gè)動機(jī)呢?

肖朝軍:這個(gè)就是 AGI 的未來了。它現(xiàn)在肯定沒有動機(jī)。

晚點(diǎn):對,現(xiàn)在只有人給它的學(xué)習(xí)目標(biāo),比如人給 GPT 設(shè)定的學(xué)習(xí)目標(biāo)是預(yù)測下一個(gè)詞,給 o1 的目標(biāo)是用長思維鏈來 “思考”。再往下會是什么呢?

肖朝軍:那就看人類怎么想了。也可以設(shè)計(jì)一個(gè)損失函數(shù)(Loss Function,它用來衡量模型預(yù)測值與真實(shí)值之間的誤差解釋,可為模型優(yōu)化提供指導(dǎo)),告訴它,目標(biāo)就是自我迭代,越來越聰明。

晚點(diǎn):那么什么叫聰明呢?好像還是得人來定義。

肖朝軍:當(dāng)然了,這個(gè)其實(shí)很難。人怎么定義自己的智能,又怎么定義人工智能,都有很多分歧。比如這個(gè)話筒,它能錄我的聲音,這是智能嗎?

晚點(diǎn):好像不是一般人理解的智能。

肖朝軍:但是大家肯定認(rèn)為人臉識別是智能,它也和話筒一樣,只能做一個(gè)任務(wù)。為什么話筒不是智能,人臉識別是智能?

人類對智能的定義現(xiàn)在還不完善。也許未來我們給 AGI 創(chuàng)造足夠多的能力后,它的目標(biāo)不是人定的,而是它自己定的。

晚點(diǎn):這個(gè)目標(biāo)會是人類想要的嗎?

肖朝軍:這很難想象。我傾向認(rèn)為未來 AGI 可能是自組織形式,一個(gè) AI 可以帶著一堆 AI 工作,也會和人類一樣有分工,老板負(fù)責(zé) “畫餅”、定目標(biāo),只是這個(gè)目標(biāo)是否服務(wù)人類社會,這是未知的。

傅天予:人類總覺得自己的智能好像高人一等,大腦奧秘真是難以捉摸。但人類智能在機(jī)理上是不是就比其他智能高級呢?或者說什么機(jī)理最合適、最好呢?智能也不一定是越像人越好。

晚點(diǎn):其實(shí)一開始聊稀疏注意力時(shí),天予就提到,神經(jīng)科學(xué)研究也發(fā)現(xiàn)神經(jīng)元之間的連接是稀疏的。好像大家下意識還是把 AI 和人類大腦做類比。

傅天予:我覺得人是提供了一個(gè)可行解,而且是較優(yōu)的解,但不能保證是最優(yōu)解。

當(dāng)大家都不相信一件事能行時(shí),提供一個(gè)可行解或較優(yōu)解,能幫助把事做成。但是去思考這件事怎么做到最好時(shí),只提供可行解是不夠的。

晚點(diǎn):人腦的效率遠(yuǎn)優(yōu)于現(xiàn)在 AI。

肖朝軍:對,因?yàn)槿说哪茉淳褪怯邢薜,每天只能吃這么多?刂颇芎氖巧镞M(jìn)化的一個(gè)關(guān)鍵限制。但對 AI,假如它的智能水平足夠高,我們就能給它提供足夠的算力。

晚點(diǎn):地球能源不也是有限的嗎?這是要實(shí)現(xiàn)可控核聚變呢?

肖朝軍:可以讓 AGI 去研究這個(gè),然后再給自己供能。所以還是回到剛才說的,我認(rèn)為科研會是 AGI 最重要的一個(gè)問題。

*附文中提到的主要工作的 GitHub 或 arxiv 鏈接:

NSA:

https://arxiv.org/abs/2502.11089

MoBA:

https://github.com/MoonshotAI/MoBA

InfLLM:

https://arxiv.org/abs/2402.04617

MoA:

https://github.com/thu-nics/MoA

FlashAttention:

https://github.com/Dao-AILab/flash-attention

題圖來源:《社交網(wǎng)絡(luò)》

贊助本站

相關(guān)熱詞: DeepSeek kimi 肖朝軍 傅天予

相關(guān)內(nèi)容
AiLab云推薦
推薦內(nèi)容
展開

熱門欄目HotCates

Copyright © 2010-2025 AiLab Team. 人工智能實(shí)驗(yàn)室 版權(quán)所有    關(guān)于我們 | 聯(lián)系我們 | 廣告服務(wù) | 公司動態(tài) | 免責(zé)聲明 | 隱私條款 | 工作機(jī)會 | 展會港