適配各種backbone模型架構和各種大小
原標題:標點符號成大模型訓練神器!KV緩存狂減一半,可處理400萬Tokens長序列,來自華為港大等 | 開源
文章來源:量子位
內容字數:5812字
SepLLM:利用標點符號加速大模型訓練與推理
來自華為、港大、KAUST和馬普所的研究者提出了一種新穎的自然語言建模方法——SepLLM,通過巧妙利用標點符號(如逗號、句號等)來顯著加速大型語言模型的訓練和推理過程。該方法的核心在于發現標點符號在注意力得分中占據了不成比例的重要地位,這暗示著它們可以有效地壓縮其前后文本片段的信息。
1. SepLLM的核心思想
SepLLM的核心思想是將文本信息壓縮到標點符號中。研究者觀察到,注意力機制可視化結果顯示,標點符號周圍的注意力得分往往較高。因此,SepLLM將一段文本劃分成由標點符號分割的語義片段,并將其信息壓縮進相應的標點符號中,而其他tokens則被丟棄。這種方法基于以下幾個關鍵點:
- 初始tokens保留: 保留初始tokens,以避免生成tokens的困惑度(ppl)顯著增加。
- 分隔符tokens作為信息載體: 利用標點符號(分隔符tokens)壓縮其分割的文本片段信息,實現免訓練場景下的高效推理。
- 相鄰tokens考慮: 考慮到語言任務的局部依賴性,保留相鄰tokens以維持上下文連貫性。
這種基于標點符號的建模方法,充分利用了自然語言固有的稀疏性,避免了人為定義稀疏性的局限性,使其成為一種更自然的、高效的建模方式。
2. SepLLM的效率提升
SepLLM在訓練和推理效率方面都取得了顯著提升:
- KV緩存減少: 基于Llama-3-8B模型,SepLLM在GSM8K和MMLU基準測試中減少了超過50%的KV緩存,同時保持了相當的性能表現。
- 流式處理能力增強: SepLLM能夠有效處理高達400萬甚至更多tokens的超長流式序列生成。
- 推理速度加快: SepLLM優化了推理過程,生成速度更快,困惑度更低,平均KV Cache使用量也減少。
- 訓練效率提升: 訓練過程FLOPs消耗更低,速度和吞吐率更高,預訓練時間縮短1.26倍,訓練吞吐率和加速比達到1.53倍。
3. SepLLM的適用性和優勢
SepLLM具有廣泛的適用性,可以適配各種backbone模型架構(Llama、Pythia、GPTNeoX、GPT2、Falcon等)和不同大小的模型,在各種場景下(免訓練、預訓練、后訓練)均能實現更高的效率和精度。與其他稀疏注意力方法相比,SepLLM根據原生語義動態劃分token數,在免訓練場景下取得了更好的準確率。
4. 項目信息
SepLLM的代碼庫已公開,支持高效的多節點分布式訓練,并采用了加速注意力機制的模塊Sep-Attention。項目地址:https://sepllm.github.io/ 論文地址:https://arxiv.org/abs/2412.12094 代碼:https://github.com/HKUDS/SepLLM
聯系作者
文章來源:量子位
作者微信:
作者簡介:追蹤人工智能新趨勢,關注科技行業新突破