出品 | 51CTO技術(shù)棧(微信號:blog51cto)
一項逆天的大模型優(yōu)化技術(shù)來了!
東京初創(chuàng)公司Sakana AI的研究人員開發(fā)了一種新技術(shù),讓大模型能夠更有效地使用內(nèi)存,不僅最多節(jié)省75%的內(nèi)存占用,還甚至性能也有所提升!
這種名為“通用Transformer內(nèi)存”的技術(shù)使用特殊的神經(jīng)網(wǎng)絡(luò)優(yōu)化LLM,保留重要的信息并丟棄冗余的細節(jié)。
這項技術(shù)旨在幫助企業(yè)降低基于大模型和其他基于Transformer的模型構(gòu)建應(yīng)用程序的成本。
這項技術(shù)在Hacker News上也被廣泛討論,一位網(wǎng)友說:會不會在經(jīng)過三四年的性能優(yōu)化,我們會發(fā)現(xiàn)根本不需要建核電站?
圖片
1.Transformer內(nèi)存技術(shù):神經(jīng)網(wǎng)絡(luò)決定是否記憶存儲的Tokens
目前的模型支持非常長的上下文窗口,可以容納數(shù)十萬甚至數(shù)百萬個Tokens。
這使得用戶能夠在提示中塞入更多信息。然而,較長的提示可能導(dǎo)致更高的計算成本和較慢的性能。
當(dāng)前的提示優(yōu)化技術(shù)需要大量資源,或者要求用戶手動測試不同配置以減少提示的大小。
Sakana AI的研究人員,所開發(fā)的通用Transformer內(nèi)存技術(shù),通過神經(jīng)注意力記憶模型(NAMMs)優(yōu)化提示。NAMMs是簡單的神經(jīng)網(wǎng)絡(luò),決定是否“記住”或“忘記”LLM內(nèi)存中存儲的每個Token。
“這一新功能使Transformer能夠丟棄不重要或冗余的細節(jié),專注于最關(guān)鍵的信息,我們認為這對于需要長上下文推理的任務(wù)至關(guān)重要,”研究人員寫道。
圖片
NAMMs與LLM是分開訓(xùn)練的,并在推理時與預(yù)訓(xùn)練模型結(jié)合,這使得它們具有靈活性,易于部署。然而,它們需要訪問模型的內(nèi)部激活,因此只能應(yīng)用于開源模型。
與Sakana AI開發(fā)的其他技術(shù)一樣,NAMMs是通過進化算法而非基于梯度的優(yōu)化方法進行訓(xùn)練的。通過反復(fù)變異和選擇表現(xiàn)最佳的模型,進化算法優(yōu)化NAMMs的效率和性能。這尤其重要,因為NAMMs試圖實現(xiàn)一個不可微分的目標:保留或丟棄標記。
NAMMs作用于LLM的注意力層,這是Transformer架構(gòu)的關(guān)鍵組件,決定了模型上下文窗口中每個標記的關(guān)系和重要性。基于注意力值,NAMMs決定應(yīng)保留哪些標記,哪些可以從LLM的上下文窗口中丟棄。這種基于注意力的機制使得訓(xùn)練好的NAMM可以在不同模型上使用而無需進一步修改。例如,訓(xùn)練在文本數(shù)據(jù)上的NAMM可以應(yīng)用于視覺或多模態(tài)模型,而無需額外訓(xùn)練。
2.通用內(nèi)存技術(shù)的應(yīng)用:最高節(jié)省75%內(nèi)存
為了測試通用Transformer內(nèi)存的實際效果,研究人員在開源的Meta Llama 3-8B模型上訓(xùn)練了一個NAMM。他們的實驗顯示,使用NAMMs后,基于Transformer的模型在非常長的序列上處理自然語言和編碼問題時表現(xiàn)更好。同時,通過丟棄不必要的標記,NAMM使LLM模型在執(zhí)行任務(wù)時節(jié)省了高達75%的緩存內(nèi)存。
“在我們的基準測試中,NAMMs顯著提高了Llama 3-8B Transformer的性能,”研究人員寫道。“此外,我們的內(nèi)存系統(tǒng)還帶來了顯著的附加好處,減少了每層的上下文大小,同時從未專門優(yōu)化過內(nèi)存效率。”
他們還在70B版本的Llama模型以及針對其他模態(tài)和任務(wù)設(shè)計的Transformer模型上進行了測試,如Llava(計算機視覺)和Decision Transformer(強化學(xué)習(xí))。
“即使在這些分布外的設(shè)置中,NAMMs通過丟棄冗余的視頻幀和不理想的行動,仍然保持其優(yōu)勢,使其新的基礎(chǔ)模型能夠?qū)W⒂谧钕嚓P(guān)的信息,從而提高性能,”研究人員寫道。
圖片
上圖:神經(jīng)注意力記憶模型 (NAMM) 會檢查注意力層,以確定哪些標記應(yīng)從上下文窗口中保留或丟棄
3.新發(fā)現(xiàn):神經(jīng)網(wǎng)絡(luò)能根據(jù)任務(wù)調(diào)整其行為
另一個有趣的發(fā)現(xiàn)是,NAMMs會根據(jù)任務(wù)自動調(diào)整其行為。
例如,在編碼任務(wù)中,模型丟棄與代碼執(zhí)行無關(guān)的連續(xù)標記塊,如注釋和空白字符。
另一方面,在自然語言任務(wù)中,模型丟棄表示語法冗余且不影響序列意義的標記。
研究人員發(fā)布了創(chuàng)建自己NAMM的代碼。像通用Transformer內(nèi)存這樣的技術(shù)對于處理數(shù)百萬個標記的企業(yè)應(yīng)用程序非常有用,能夠提升速度并降低成本。經(jīng)過訓(xùn)練的NAMM的可重用性也使其成為跨不同應(yīng)用程序使用的多功能工具。
未來,研究人員建議采用更先進的技術(shù),例如在訓(xùn)練LLM時使用NAMMs,以進一步擴展其內(nèi)存能力。
“這項工作僅僅開始挖掘我們這一新型內(nèi)存模型的潛力,我們預(yù)期它可能為推動未來幾代Transformer的發(fā)展提供許多新機會,”研究人員寫道。
參考鏈接:https://venturebeat.com/ai/new-llm-optimization-technique-slashes-memory-costs-up-to-75/