蘋果發4個開源“小模型”,跑分不到微軟Phi-3一半,不卷性能卷效率?
36氪
2024-04-25 19:55釋出于北京36氪官方賬号
文|李然 陳斯達
編輯|蘇建勳
美國當地時間4月24日,蘋果在Hugging Face上放出了自己的開源“小模型”家族——4個預訓練的大模型OpenELM。
圖源:X
四款模型體量極小,參數量分别為 270M、450M、1.1B和3B。
圖源:Hugging Face
在Hugging Face頁面上蘋果表示,OpenELM(Open-source Efficient Language Models,即“開源高效語言模型”)在諸如電子郵件編寫等文本相關任務上,有較高的執行效率。系列模型已經開源,可供開發人員使用。
4月22日釋出的相關論文中,研究人員介紹了OpenELM的整個架構,包括資料準備、訓練、微調以及測評結果等。
圖源:論文
論文位址:https://arxiv.org/pdf/2404.14619.pdf
CoreNet位址:https://github.com/apple/corenet
模型下載下傳位址:https://huggingface.co/apple/OpenELM
模型是真的開源了,但能力也是真的很一般
一向以封閉著稱的蘋果,突然在大模型時代以非常激進的姿态加入開源陣營。
這次的OpenELM不但提供模型下載下傳,還開源了和模型相關的非常重要的資訊:
模型權重和推理代碼還包括了在公開資料集上進行模型訓練和評估的完整架構,涵蓋訓練日志、多個儲存點和預訓練設定開源了CoreNet——深度神經網絡訓練庫
訓練庫可以使研究人員和工程師能夠開發和訓練各種标準及創新的小型和大型模型,适用于多種任務,如基礎模型(例如,CLIP和大語言模型(LLM))、物體分類、檢測以及語義分割。
OpenELM采用按層配置設定參數的政策,有效提升了Transformer模型各層的參數配置效率,顯著提高模型準确率。在大約十億參數的預算下,OpenELM的準确率較OLMo提升了2.36%,且預訓練所需的Token數量減少了一半。
圖源:論文
論文透露,模型是在128個A100/H100 GPU上進行的訓練,最大的模型訓練時長為13天。
圖源:論文
模型最體量大僅為3B,可以看出,蘋果該系列的模型,隻針對端側和桌面級的本地部署設計。
論文也透露,所有的測試平台都是家用級裝置:
Intel i9-13900KF CPU, 64 GB記憶體, 英偉達RTX 4090 GPU,24G顯存Apple MacBook Pro,M2 Max ,64G記憶體
性能上,模型似乎隻是研究目的設計,某些常見測試集上取得的成績也不高。與微軟推出的Phi系列模型等主流SLM相比,差距明顯。
圖源:論文
Phi-3在5-shot的MMLU上,可達到70左右的水準,而OpenELM隻有不到30.
圖源:論文
針對這個問題,網友也對原因進行了一些猜測。
圖源:X
用的資料集很小,而且隻用了公開的資料集,個人認為,他們隻是在對未來訓練更大的模型進行針對性的研究。
開源社群的使用者們,也第一時間對模型進行了些測試,整體回報是模型似乎過于“對齊”,換句話來說就是——廢話可能有點多。
圖源:X
圖源:X
從目前開源社群的回報來看,OpenELM似乎不是一個精心設計和訓練後用來秀肌肉的模型,是以性能和表現離同體量最領先的模型差距不小。
論文中,研究人員也沒有過于強調模型的能力,而是糾結于準确率和推理性能。
去年已有開源動作,技術實力還待6月亮劍
放棄造車後的蘋果,在大模型戰争中動作愈發頻繁。
很多時候,“買買買”是大家對蘋果AI布局的主要印象之一。
3月15日,蘋果收購了加拿大AI初創公司DarwinAI。自身AI團隊一下擴充幾十個技術人員。4月23日又曝出,早在去年12月已經悄悄收購巴黎AI初創公司Datakalab。這家2016年成立的公司,亦專注低功耗、高效率的深度學習算法。
蘋果最近的這兩起收購都圍繞端側大模型展開——比如DarwinAI想把AI系統打造得“小而精”,Datakalab專于低功耗、高效率的深度學習算法,無需依賴雲端系統即可運作。
也是在3月,蘋果被爆出與谷歌進行談判,希望将Gemini內建到新的iPhone中。此外,據透露,蘋果還與OpenAI進行了讨論,考慮使用其模型。
不隻是“招兵買馬”,在研究端,起步稍晚的蘋果也不忘“卷卷卷”。
2023年10月,蘋果釋出名為Ferret的開源LLM。這一模型結合了計算機視覺和自然語言處理技術,能識别圖像中的對象和區域,将文本轉化為視覺元素,并進行圖像相關的文本對話。
2024年4月初,基于Ferret,蘋果釋出多模态大模型(MLLM )Ferret-UI,表現出不凡的UI螢幕了解能力——不僅優于大多數開源UI MLLM,而且在所有基本UI任務上也超過了GPT-4V。
圖源:論文
此前,蘋果保密原則伴随的封閉生态,一度讓外部開發人員無法介入。一開始,Ferret研究沒有得到太多關注,其以非商業許可證開源,不能用于商業目的。
但釋出兩月後的12月底,AI醫學非營利組織的營運商Bart De Witte反應過來——原來蘋果10月就加入了開源社群,自己沒注意到這次重要的釋出。
圖源:X
也就是在這個時間點上,Ferret又為人熱議——這一反蘋果此前的保密立場,表明了自身在AI方面的開放态度。
可以說,在今年2月财報釋出會上庫克公布生成式AI計劃之前,蘋果自身的AI研究進展就很多了。2023年12月,它推出專門在 Apple 晶片上用于機器學習的開源陣列架構 MLX。2024年2月,又釋出圖像編輯模型MGIE,讓使用者無需通過照片編輯軟體,就能用簡單語言描述他們要在照片中更改的内容。
2024年3月,蘋果在論文中介紹的 “MM1”多模态大模型,同樣擁有圖像識别和自然語言推理能力。不過和其他大模型比起來,MM1的效果不算驚豔。蘋果隻是圍繞MM1開展實驗發現影響模型效果的關鍵因素。
MM1的論文指出,無論是開源還是閉源,現在都沒有真正分享達到算法設計經曆的過程。是以蘋果希望借MM1的研究打破局面,在論文裡公開模型訓練的種種細節。
同樣,OpenELM模型的确彰顯了端側模型的進展,但技術貌似并沒有達到外界的預期。
或許,這次蘋果通過釋出完整的訓練、評估架構等,以再次表達“Open”的決心。論文表示:
此次全面釋出,希望在增強和鞏固開放研究社群,為未來的開放研究工作鋪平道路。
是以,OpenELM效果一般,網友還是也會為蘋果的開放感到意外。
圖源:X
圖源:X
蘋果真正的AI實力,要等到六月的全球開發者大會(WWDC)才能揭曉。但開源做出的“姿态”,幾個月算是表現到位了。
論文重點
模型構架
蘋果的研究人員采用了僅包含解碼器的Transformer架構,但是作出了一些特殊的調整:
線上性層中不設定可學習的偏置參數采用RMSNorm進行預歸一化,并使用旋轉位置嵌入(ROPE)來編碼位置資訊用分組查詢注意力(GQA)來替代傳統的多頭注意力(MHA)将傳統的前饋網絡(FFN)更換為SwiGLU FFN采用閃電注意力機制計算縮放點積注意力使用與LLama相同的Tokenizer進行文本處理
OpenELM與傳統的大語言模型的最大不同在于,通常大模型在每一層Transformer中使用相同配置,而OpenELM為每層設定了不同的配置(如頭數和前饋網絡的尺寸),使每層的參數數量各不相同。
這種方法,讓OpenELM能更有效地利用參數預算,進而達到更高模型準确率。通過“層間縮放”(也稱為塊間縮放),實作了這一層間參數的非均勻配置設定。
預訓練資料和訓練細節
研究人員隻使用了公開的資料集進行預訓練。
具體包括RefinedWeb、去重後的PILE、RedPajama和Dolma v1.6的部分資料,總計約1.8萬億Token。
從蘋果提供的公開資料來源來看,資料包括了像arXiv,維基百科,Reddit,GitHub等各種主流的網絡社群和百科知識平台。
圖源:論文
值得一提的是,蘋果沒有采用預先分詞(pretokenized)的資料,而用了即時過濾和分詞的方式處理文本資料。這種做法,使研究人員能夠輕松地嘗試各種tokenizer,極大簡化了原型設計和研究過程。實驗中,他們就采用了與LLama相同的tokenizer。
訓練結果
研究人員将OpenELM與一些公開的大語言模型進行了對比,包括PyThia、Cerebras-GPT、TinyLlama、OpenLM、MobiLlama和OLMo。
圖源:論文
性能與OpenELM最接近的,是MobiLlama和OLMo。這兩個模型都是在更大規模的資料集上進行預訓練的。
從上圖中可以看出,OpenELM的準确度随着訓練疊代次數的增加而提升,在多數任務中都表現出明顯的準确率增長。
此外,通過對最後五個檢查點的平均處理(這些檢查點是每隔5000次疊代收集一次),顯示出與350k次疊代後獲得的最終檢查點相當或略優的準确率。
圖源:論文
上圖實驗結果顯示,OpenELM在各種評估架構中。都顯示出超越現有方法的有效性。例如,一個擁有11億參數的OpenELM變體,在與擁有12億參數的OLMo比較時,在不同的評估中準确率分别提高了1.28%、2.36%和1.72%,而且這是在使用不到一半的預訓練資料的情況下實作的。
圖源:論文
指令微調之後,上圖的結果表明,指令微調在不同的評估架構中,一緻地提高了OpenELM的平均準确率,提升幅度為1-2%。
推理性能表現
研究人員主要測試了模型在兩個文章開頭介紹過的PC和Mac兩個平台上的推理性能表現。
可以看出,代表着Mac主流配置的M2 Max平台,在跑3B模型時推理性能可以達到每秒34 token,已基本超過人類的閱讀速度。
圖源:論文
在最頂級的PC配置下,3B模型的推理速度達到了70。
圖源:論文
盡管OpenELM在相似參數量下具有更高的準确性,但是它的推理速度比OLMo慢。
分析顯示,OpenELM處理時間的一個重要部分,可以歸因于RMSNorm的初級實作(下圖所示)。
圖源:論文
具體來說,初級RMSNorm的實作,導緻許多單獨的核心啟動,每個核心處理少量輸入,而不是像使用LayerNorm那樣啟動單個融合核心。
通過将初級RMSNorm替換為Apex的RMSNorm ,OpenELM的推理速度顯著增加。
然而,與使用優化過的LayerNorm的模型相比,仍然存在顯著的性能差距,部分原因是:
OpenELM有113個RMSNorm層,而OLMo有33個LayerNorm層Apex的RMSNorm對小輸入未進行優化
為了進一步說明由于RMSNorm造成的性能下降,研究人員将OLMo中的LayerNorm替換為RMSNorm,觀察到生成吞吐量顯著下降。在未來的工作中,研究人員計劃探索優化政策,以進一步提高OpenELM的推理效率。
檢視原圖 55K