【#區(qū)塊鏈# #蘋果這篇“魔改”閃存的論文,暴露了它想徹底掌控大模型的野心#】
文章來源: GenAI新世界
作者:苗正
編輯:王兆洋
圖片來源:由無界 AI生成
2017年,來自谷歌的幾個研究員寫下《Attention is All you need》的題目,給世界帶來了Transformer模型架構(gòu),它成為了今天“大模型”繁榮背后無可爭議的根基,OpenAI的GPT,Meta的Llama以及一眾最主流大語言模型都是在Transformer的基礎(chǔ)上生長起來,今天還有一批又一批聰明的研究者在不停嘗試提出比Transformer更強的模型架構(gòu)。
某種程度上,今天所有AI模型層面的研究都在圍繞對Transformer的掌控與超越展開。但這樣一個劃時代的研究在當時并未立刻引起所有人的重視,而這種“嗅覺”的差異也很大程度決定了今天的AI格局——OpenAI在這篇論文出現(xiàn)第二天就立刻徹底轉(zhuǎn)向了Transformer架構(gòu),然后2020年5月OpenAI基于Transformer架構(gòu)的GPT-3論文發(fā)表,2年后ChatGPT出現(xiàn),一切都不再相同。
「變壓器」這個欄目名來自對Transformer的直譯,我們會拆解和介紹關(guān)于AI及相關(guān)技術(shù)的最新論文和最前沿研究,希望像OpenAI當年看到Transformer一樣,幫助更多人遇到自己的「變壓器」時刻,比一部分人更早進入生成式AI的世代。大模型領(lǐng)域最新的一個熱門趨勢是把模型塞到手機里。而最應(yīng)該做這個研究的公司終于帶著它的論文現(xiàn)身,那就是蘋果。
這家公司的研究團隊最近發(fā)布了一篇論文《LLM in a flash: Efficient Large Language Model Inference with Limited Memory》,簡單說,它嘗試利用閃存來解決大模型在塞進手機時遇到的內(nèi)存不足的問題。
這是一個對于端側(cè)部署模型十分關(guān)鍵的問題。
計算機的記憶體(Memory)簡單分為內(nèi)存(Ram)和閃存(Flash)兩種。內(nèi)存用于臨時存儲那些需要隨時訪問的數(shù)據(jù)和指令,它提供高速的讀寫,有較高的存儲密度。而閃存正相反,它讀寫較慢,適用于長期數(shù)據(jù)的存儲。
因此從特性上看,內(nèi)存更適合需要頻繁讀寫的大模型。然而這帶來一個問題,它成了一個限制死了的搭配,比如一個70億參數(shù)的模型就必須需要超過14GB的內(nèi)存才能以半精度浮點格式加載參數(shù),但這超出了大多數(shù)邊緣設(shè)備的能力。
如這篇論文的標題所示,蘋果想要通過閃存來解決這個問題。
論文為了將大模型搬到閃存上,一共做了三步。
第一步:先讓閃存能參與進模型運行中來。論文提到一個概念,大語言模型在前饋網(wǎng)絡(luò)(FFN)層展現(xiàn)出高度的稀疏性(超過90%)。FFN是一種基本的神經(jīng)網(wǎng)絡(luò)架構(gòu),其中信息單向流動,從輸入層流向輸出層,中間可能經(jīng)過多個隱藏層。在這種網(wǎng)絡(luò)中,每一層的輸出僅作為下一層的輸入,而沒有任何反饋或循環(huán)連接。于是論文把FFN當成是一個篩子,僅迭代傳輸閃存中必要的、非稀疏數(shù)據(jù)到DRAM進行處理。
使用修正線性單元(ReLU)前后輸出幅度對比,ReLU用來實現(xiàn)稀疏性
接下來是第二步:論文提出了一種名為“滑動窗口技術(shù)”的神經(jīng)元數(shù)據(jù)管理方法。把那些在預(yù)測模型中產(chǎn)生正輸出的神經(jīng)元定義為活躍神經(jīng)元,在內(nèi)存中保留最近一部分輸入標記的神經(jīng)元數(shù)據(jù),僅加載當前輸入標記與其直接前驅(qū)不同的神經(jīng)元數(shù)據(jù)。這樣做能有效利用內(nèi)存,釋放掉之前分配給已不在滑動窗口內(nèi)的舊標記神經(jīng)元數(shù)據(jù)的內(nèi)存。
滑動窗口技術(shù)
第三步:論文還提出了一種增加數(shù)據(jù)塊大小的策略。論文用OPT和Falcon模型做實驗,把向上投影的第i列和向下投影的第i行捆綁存儲。當激活第i個中間神經(jīng)元時,這兩部分數(shù)據(jù)會同時被使用。通過在閃存中將這些對應(yīng)的列和行一起存儲,可以將數(shù)據(jù)整合成更大的塊進行讀取。
內(nèi)存管理策略,首先將最后的元素復制到要刪除的神經(jīng)元中,以保持連續(xù)的內(nèi)存塊,然后將需要的元素堆疊到最后
這些術(shù)語看起來依然晦澀?沒關(guān)系我們可以做個類比,事實上它的思路與曹沖稱象非常像。
首先論文要解決的問題就是,大模型是大象,沒辦法直接上秤測量(設(shè)備內(nèi)存有限,放不了大模型)。
于是用了三個步驟來在特定環(huán)節(jié)減少對大模型的訪問延遲。
首先找到一個等價方法,讓大象上船,測量水位線,再用石頭壘在船上,船達到同樣的水位線,最后稱這些石頭的重量(也就是上面說的第一步,可以理解為減少數(shù)據(jù)加載)。
然后,其中體積一樣大的石頭不需要稱第二次(也就是第二步,優(yōu)化數(shù)據(jù)塊大小以提高閃存吞吐量)。
此外,搬運石頭的時候使用更大的框,一次可以裝很多塊石頭(就是最后一步的,高效管理加載到內(nèi)存中的數(shù)據(jù))。
而這個過程的重點,是優(yōu)化閃存交互和內(nèi)存管理,以實現(xiàn)內(nèi)存受限設(shè)備上的高效推理。使用這個方法來預(yù)測FFN的稀疏性并避免加載零化的參數(shù),優(yōu)化成本模型和按需選擇性加載參數(shù),實現(xiàn)了可以運行比設(shè)備DRAM容量大兩倍的模型,并在CPU和GPU上分別比傳統(tǒng)方法提速4-5倍和20-25倍。
當然,論文提供的方法只針對60到70億左右參數(shù)的模型,如果是幾百億參數(shù)的模型,這樣的辦法會造成死鎖或者內(nèi)存溢出。不過他仍然給了便攜使用大模型這事一種可能性,這是非常難得的。
為了證明論文提出方法的實際價值,論文引用了Facebook的OPT 6.7B模型和TII的Falcon 7B模型。下圖在模型的一半內(nèi)存可用時,1個token的推理延遲。在M1 Max上,每個token從閃存加載需要125毫秒的延遲,內(nèi)存管理需要65毫秒。因此,每個token的總的與內(nèi)存相關(guān)的延遲小于190毫秒(兩者總和)。相比之下,傳統(tǒng)方法需要以6.1GB/s的速度加載13.4GB的數(shù)據(jù),導致每個token的延遲大約為2330毫秒。因此,這個方法相對于基準方法表示了重大改進。Falcon 7B也是類似,使用論文的方法延遲僅為250毫秒,而傳統(tǒng)方法的延遲為2330毫秒。延遲肯定是越低越好,越低代表從閃存中加載大模型的速度越快。
各模型1個token的推理延遲
在今年AI的瘋狂里,蘋果曾被詬病動作很慢,但這篇論文、此前蘋果提出的MLX框架、自動語音識別(ASR)以及它自己的模型Ferret等研究其實說明,蘋果已經(jīng)目標明確的在做很具體的研究了??纯催@幾個重要的但并沒有引起很多重視的研究,也可以感受到蘋果AI上的方向。
MLX框架是蘋果在2023年推出的一個專門運行在蘋果芯片上的機器學習數(shù)組框架。MLX支持可組合的函數(shù)變換,用于自動微分、自動向量化和計算圖優(yōu)化,但重點是MLX中的計算只有在需要時,數(shù)組才會被實際計算出來。同時MLX中的計算圖是動態(tài)構(gòu)建的,改變函數(shù)參數(shù)的形狀不會觸發(fā)緩慢的編譯過程。而且MLX中的數(shù)組存在于共享內(nèi)存中,可以在任何支持的設(shè)備類型上執(zhí)行MLX數(shù)組的操作,而不需要數(shù)據(jù)傳輸。
也就是說,MLX突出一個節(jié)省資源且“海陸空”三棲作戰(zhàn)(可以同時調(diào)用內(nèi)存、顯存,可以在手機和電腦運行)。這說明蘋果非常注重模型的可實現(xiàn)性,即便是手機這樣內(nèi)存有限的設(shè)備也能跑大模型。當有了這樣的框架后,蘋果就可以將Ferret模型塞進便攜設(shè)備里了。
Ferret模型是蘋果在2023年10月推出的新型多模態(tài)大型語言模型(MLLM),它能夠理解圖像內(nèi)任意形狀或粒度的空間指代,并準確地對開放詞匯的描述進行定位。Ferret采用了一種新穎而強大的混合區(qū)域表示方法,將離散坐標和連續(xù)特征結(jié)合起來表示圖像中的一個區(qū)域。為了提取多樣化區(qū)域的連續(xù)特征,論文提出了一種空間感知的視覺采樣器,能夠處理不同形狀之間的稀疏性差異。模型這種理解能力,意味著Ferret可以接受各種輸入,比如點、邊界框和自由形狀,像是DALL·E也好,Midjourney也好,都不能完全理解這種提示詞的輸入。
蘋果將要推出的AR設(shè)備Vision Pro,對外宣稱是首款采用空間計算的產(chǎn)品。空間計算本質(zhì)是傳感器的一門學問,通過傳感器來獲取關(guān)于物理空間的數(shù)據(jù),并通過計算和分析這些數(shù)據(jù)來理解和處理環(huán)境信息。傳統(tǒng)電子設(shè)備屏幕都只是平面二維,但是空間計算作用的是現(xiàn)實中三維空間的物理概念,在Ferret的加持下,空間的邊界感、長寬高三種向量的立體感就會更加明顯。
Ferret模型不一定能按要求畫出最美的畫面,但它一定能符合擁有藝術(shù)設(shè)計能力創(chuàng)作者的需求。尤其是在視覺識別、配色方案、排版、網(wǎng)格等設(shè)計專業(yè)領(lǐng)域,F(xiàn)erret模型的效果將會最為明顯。設(shè)計從業(yè)者是蘋果最為廣泛的受眾之一,蘋果就像是個狙擊手,專門瞄準用戶最需要它的地方。
此外蘋果也一直在對與Siri相關(guān)的AI技術(shù)做研究,比如大語言模型在SLU任務(wù)上的準確性受限于ASR系統(tǒng)對給定語音輸入的準確性。那為了解決這一問題,蘋果找到了一種方法:使用ASR的n-best假設(shè)列表來提示大語言模型,而非僅依賴錯誤率較高的1-best假設(shè)。意味著Siri在接入大語言模型后,性能會得到提高。
至此,從硬件的芯片層,到調(diào)用系統(tǒng)側(cè),到與空間計算概念相聯(lián)系的自研多模態(tài)模型,再到目前看起來最被期待的蘋果的AI能力的入口Siri,蘋果已經(jīng)有體系有目的有節(jié)奏的完成了諸多技術(shù)積累。2024年,在討論AI時沒人能忽視蘋果了。
相關(guān)推薦
相關(guān)文章
更多>>資訊排行
同類軟件下載
熱門標簽