Memory Layers – Meta 開源不增加算力時增加大模型的參數(shù)方法
Memory Layers是Meta推出的一種創(chuàng)新技術,旨在通過可訓練的鍵值查找機制為模型增加額外的參數(shù),而無需增加浮點運算次數(shù)(FLOPs)。這種基于稀疏激活的機制能夠有效補充計算密集型的前饋層,以低成本存儲和檢索信息。Memory Layers在大規(guī)模語言模型中表現(xiàn)出卓越的實用性,尤其是在處理事實性任務時,顯著提升了模型的性能。
Memory Layers是什么
Memory Layers是Meta研發(fā)的技術,采用可訓練的鍵值查找機制來為模型擴展額外的參數(shù),同時不增加計算負擔(即不增加FLOPs)。這種技術通過稀疏激活機制補充計算密集的前饋層,提供了一種經(jīng)濟的方式來存儲和檢索信息。Memory Layers在大型語言模型中表現(xiàn)出顯著的優(yōu)勢,尤其在涉及事實性任務時,能夠有效提升模型的準確性和知識獲取能力。
Memory Layers的主要功能
- 參數(shù)擴展:允許在不增加計算負擔的前提下擴充模型參數(shù),提高模型的容量。
- 信息存儲與檢索:提供一種專門的機制來存儲和檢索信息。
- 補充密集層:與計算密集型前饋層相輔相成,基于稀疏激活模式提供專用的信息存儲和檢索能力。
- 提高事實準確性:在事實性任務中,顯著提升語言模型的準確性,使模型更有效地記憶和運用訓練數(shù)據(jù)中的事實。
- 性能提升:在計算和參數(shù)配置相匹配的情況下,使模型的性能超過傳統(tǒng)的密集模型和混合專家模型。
Memory Layers的技術原理
- 鍵值查找機制:基于簡單的鍵值查找機制運作,鍵和值都被編碼為嵌入向量。給定查詢向量q和一組鍵K及值V,輸出是根據(jù)q與相應鍵的相似度計算得出的值的軟組合。
- 稀疏激活:與傳統(tǒng)注意力機制不同,Memory Layers中使用的鍵和值是可訓練的參數(shù),而非激活值。由于鍵和值的數(shù)量通常較多,Memory Layers通過稀疏查找和更新機制,只有與查詢最相似的top-k鍵及其對應值參與輸出計算。
- 產(chǎn)品鍵查找:為了解決大規(guī)模記憶中查詢-鍵檢索的瓶頸,Memory Layers采用產(chǎn)品量化鍵(product-quantized keys),用兩組較小的鍵有效進行全鍵集的top-k查找。
- 并行化實現(xiàn):Memory Layers對內(nèi)存的需求較大,在多個GPU上并行化嵌入查找和聚合,支持大規(guī)模擴展。
- 共享記憶參數(shù):通過共享的記憶參數(shù)池,基于多個記憶層提升性能,而不增加參數(shù)數(shù)量。
Memory Layers的項目地址
- 項目官網(wǎng):https://ai.meta.com/research/publications/memory-layers-at-scale/
- GitHub倉庫:https://github.com/facebookresearch/memory
- arXiv技術論文:https://arxiv.org/pdf/2412.09764
Memory Layers的應用場景
- 問答系統(tǒng):在問答系統(tǒng)中,幫助模型記住和檢索大量事實信息,提供準確的回答。
- 語言模型:在自然語言處理領域,增強語言模型的記憶能力,使其在處理長文本和復雜對話時更加高效。
- 推薦系統(tǒng):在推薦系統(tǒng)中存儲用戶的歷史行為及偏好,以提供更個性化的推薦。
- 知識圖譜:在知識圖譜的應用中,存儲和檢索實體之間的關系,支持復雜的查詢和推理。
- 對話系統(tǒng):在對話系統(tǒng)中,幫助模型記住對話歷史,使對話更加連貫和自然。
? 版權聲明
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載。
相關文章
暫無評論...