" 預測下一個 token"被認爲是大模型的基本範式,一次預測多個 tokens又會怎樣?
Meta AI 法國團隊推出 " 基于多 token 預測的更快 & 更好大模型 "。
多 token 預測模型,在編程類任務上表現尤其突出。
與單 token 預測相比,13B 參數模型在 HumanEval 上多解決了 12% 的問題,在 MBPP 上多解決了 17%。
小型算法推理任務上,多 token 預測也在分布外泛化方面帶來了令人印象深刻的收益。
不過在自然語言任務上,多 token 預測方法并不能顯著提高 7B 模型在數學選擇題上的表現了。
另外一個好處是,即使 batch size 較大,使用 4-token 預測訓練的模型,推理速度也可提高 3 倍。
具體來說,團隊設計了一種新的多 token 預測架構,通過 n 個獨立的輸出頭并行預測 n 個未來 token。
使用大量文本數據進行模型訓練,包括代碼和自然語言數據集。
再通過實驗比較多 token 預測和單 token 預測在多個下遊任務上的性能。
爲啥多 token 預測在編程任務和小型算法推理任務上提升更明顯?
團隊猜測可能有兩個原因 :
第一,編程語言的邏輯結構更嚴謹,知識的内在聯系更緊密。一個關鍵節點可能影響到後續整個代碼塊的走向。多 Token 預測能更好捕捉這種長距離依賴。
第二,相比自然語言,編程語言的詞彙量更小。因此即便每次預測多個 Token,難度也沒那麽大。反而能迫使模型從局部細節中抽身,着眼全局優化。
除了在 token 層面的實驗,團隊還在更細粒度的字節級模型上做了嘗試。
他們發現,用 8 字節預測替代下一個字節預測後,模型在 MBPP 上的 Pass@1 指标暴增 67%,在 HumanEval 上也提升了 20%。
而且推理速度還能再快 6 倍,簡直不要太香。
對于背後原理,團隊認爲多 token 預測緩解了訓練時 Teacher Forcing 和推理時自回歸生成之間的分布差異。
也就是說,在訓練的時候,模型看到的都是标準答案,生成的時候卻得靠自己。好比人類在家做練習冊時有答案,考試時卻啥也沒有,就會不适應。
而多 token 預測相當于訓練時就逼着模型多想幾步,這樣到了考場上,才能應對自如。
從信息論的角度,團隊還給出了一個更精确的論證。
傳統的下一個 Token 預測,目标是最小化當前位置的信息熵。而 2-Token 預測實際上最小化的是當前和下一位置的信息熵之和。
數學推導表明,後者其實隐含了更大的互信息權重,也就是更看重當前 Token 和未來 Token 的相關性。這就是爲什麽多 Token 預測更 " 有遠見 "。
不過在這篇論文中,還有幾個未解決的問題。
比如沒有探讨如何自動選擇最佳的預測 token 數量 n,作者提出,未來可以研究使用損失權重調整或動态調整 n 來解決最佳 n 的選擇問題。
此外最佳的詞表大小也可能與單 token 預測時不同。
總之,看過這篇論文之後,大家都更期待 Llama-4 了。
論文地址:
https://arxiv.org/abs/2404.19737
— 完 —
點這裏關注我,記得标星哦~
一鍵三連「分享」、「點贊」和「在看」
科技前沿進展日日相見 ~