開源羊駝大模型 LLaMA 上下文追平 GPT-4,隻需要一個簡單改動!
Meta AI 這篇剛剛提交的論文表示,LLaMA 上下文窗口從 2k 擴展到 32k 後隻需要小于 1000 步的微調。
與預訓練相比,成本忽略不計。
擴展上下文窗口,就意味着 AI 的" 工作記憶 "容量增加,具體來說可以:
支持更多輪對話,減少遺忘現象,如更穩定的角色扮演
輸入更多資料完成更複雜的任務,如一次處理更長文檔或多篇文檔
更重要的意義在于,所有基于 LLaMA 的羊駝大模型家族豈不是可以低成本采用此方法,集體進化?
羊駝是目前綜合能力最強的開源基礎模型,已經衍生出不少完全開源可商用大模型和垂直行業模型。
論文通信作者田淵棟也激動地在朋友圈分享這一新進展。
基于 RoPE 的大模型都能用
新方法名爲位置插值(Position Interpolation),對使用RoPE(旋轉位置編碼)的大模型都适用。
RoPE 早在 2021 年就由追一科技團隊提出,到現在已成爲大模型最常見的位置編碼方法之一。
但在此架構下直接使用外推法(Extrapolation)擴展上下文窗口,會完全破壞自注意力機制。
具體來說,超出預訓練上下文長度之外的部分,會使模型困惑度(perplexity)飙升至和未經訓練的模型相當。
新方法改成線性地縮小位置索引,擴展前後位置索引和相對距離的範圍對齊。
用圖表現二者的區别更加直觀。
實驗結果顯示,新方法對從 7B 到 65B 的 LLaMA 大模型都有效。
在長序列語言建模(Long Sequence Language Modeling)、密鑰檢索(Passkey Retrieval)、長文檔摘要(Long Document Summarization)中性能都沒有明顯下降。
除了實驗之外,論文附錄中也給出了對新方法的詳細證明。
Three More Thing
上下文窗口曾經是開源大模型與商業大模型之間一個重要差距。
比如 OpenAI 的 GPT-3.5 最高支持 16k,GPT-4 支持 32k,AnthropicAI 的 Claude 更是高達 100k。
與此同時許多開源大模型如 LLaMA 和 Falcon 還停留在 2k。
現在,Meta AI 的新成果直接把這一差距抹平了。
擴展上下文窗口也是近期大模型研究的焦點之一,除了位置插值方法之外,還有很多嘗試引起業界關注。
1、開發者 kaiokendev 在一篇技術博客中探索了一種将 LLaMa 上下文窗口擴展到 8k 的方法。
2、數據安全公司 Soveren 機器學習負責人 Galina Alperovich 在一篇文章中總結了擴展上下文窗口的 6 個技巧。
3、來自 Mila、IBM 等機構的團隊還在一篇論文中嘗試了在 Transformer 中完全去掉位置編碼的方法。
有需要的小夥伴可以點擊下方鏈接查看~
Meta 論文:
https://arxiv.org/abs/2306.15595
Extending Context is Hard … but not Impossible
https://kaiokendev.github.io/context
The Secret Sauce behind 100K context window in LLMs
https://blog.gopenai.com/how-to-speed-up-llms-and-use-100k-context-window-all-tricks-in-one-place-ffd40577b4c
無位置編碼論文
https://arxiv.org/abs/2305.19466