微軟LongRoPE v2:幾乎無損的上下文擴展!
論文筆記,LongRoPE2: Near-Lossless LLM Context Window Scaling, https://arxiv.org/pdf/2502.20082。 longrope v1的升級工作,應對長度外推的。
longrope v1簡單回顧,核心思想是非均勻插值+漸進式微調(diào):
- 對比 NTK、YaRN 之類的插值方式,LongROPE 的每個頻率都有自己的縮放因子。所以先進行基于困惑度的進化搜索,得到每個 rope 維度的最佳縮放因子。
- 在應用當前階段的 Rescaled RoPE 后,對模型進行 微調(diào),讓模型權(quán)重適應新的上下文窗口大小和位置編碼方式。
- 4k -> 256k -> 2048k,上一階段微調(diào)后的模型作為下一階段的 起始模型,重復這個過程。
v2 覺著 v1版本,忽略了對高維度位置編碼的重點訓練,傳統(tǒng)的困惑度,是對整個文檔的所有 token 計算平均值,這存在兩個問題:
- 噪音干擾: 長文檔通常包含大量不重要或低依賴的 token,這些 token 的困惑度對評估長上下文能力貢獻不大,反而會干擾對關(guān)鍵 token 的評估。
- 無法有效捕捉長上下文能力: 平均困惑度無法有效區(qū)分模型是否真正理解了長上下文,并提取了關(guān)鍵信息。
所以v2提出了,“針驅(qū)動” 的 困惑度,更聚焦于聚焦于長文檔中需要深度上下文理解的關(guān)鍵 “針” (Needle) token,只計算這些 “針” token 的困惑度。從而更精準地評估模型的長上下文能力。
最后,為了解決 LongRoPE v1 中存在的短上下文性能下降問題,LongRoPE2 引入了 混合上下文窗口訓練 方法。。
- 短上下文窗口:用于訓練模型在原始短上下文下的性能,使用原始 RoPE 編碼,通過注意力掩碼防止跨文檔的注意力。
- 長上下文窗口:用于訓練模型適應 rescaled RoPE 和長上下文,使用 LongRoPE2 搜索到的最佳縮放因子。
最后LongRoPE2 是第一個能夠 在擴展上下文窗口到 128k 的同時,仍然保持超過 97% 原始短上下文性能 的 RoPE rescaling 方法。
且只需 10B tokens 的微調(diào)數(shù)據(jù) 即可將 LLaMA3-8B 的上下文窗口擴展到 128k,而 Meta 的 LLaMA3.1 擴展到 128k 需要 800B tokens 的訓練。
本文轉(zhuǎn)載自??NLP前沿??,作者:NLP前沿
贊
收藏
回復
分享
微博
QQ
微信
舉報

回復
相關(guān)推薦