
蘋果為什麼要用「小模型」?

蘋果在 WWDC 2024 上推出了一款個人智能系統 Apple Intelligence,與其他科技公司不同的是,蘋果更注重用户體驗和定製化。該系統由多個生成模型組成,能夠適應用户當前的活動並提供優化的功能,如文本編寫、摘要、通知優先級等。蘋果傾向於使用設備端的小模型來完成這些任務,同時也提供第三方服務供用户選擇。蘋果採用了 AXLearn 框架進行訓練,並利用網絡爬蟲 AppleBot 收集公開可用的數據。
在 WWDC 2024 上,蘋果重新定義了 AI——Apple Intelligence。
這是一款深度集成到 iOS 18、iPadOS 18 和 macOS Sequoia 中的個人智能系統。
與其他科技大廠不同的是,「蘋果牌」AI 並沒有奉行「越大越好」的宗旨。
相反,蘋果的態度更加務實,優先考慮用户體驗,更強調 AI 模型的定製化。
將生成式 AI 無縫融入操作系統,——從某種意義上來説,這是一種非常「蘋果」的做法。
Apple Intelligence 由多個功能強大的生成模型組成,這些模型專門用於用户的日常任務,可以即時適應用户當前的活動。
Apple Intelligence 內置的基礎模型針對用户體驗進行了微調,例如編寫和優化文本、摘要、確定通知的優先級、為對話創建有趣的圖像,以及簡化跨 App 的交互。
蘋果傾向於利用設備端的小模型搞定這些事情,當然用户也可以選擇使用 ChatGPT 等第三方的服務,但這時數據方面的責任就跟蘋果沒有關係了。
蘋果着重介紹了其中兩個模型:一個約 30 億參數的設備端語言模型,以及一個更大的基於服務器的語言模型(可通過私有云計算在蘋果服務器上運行)。
Keep Small
蘋果的基礎模型是在 AXLearn 框架上訓練的。
AXLearn 是蘋果在 2023 年發佈的一個開源項目,它建立在 JAX 和 XLA 之上,使蘋果能夠在各種訓練硬件和雲平台上以高效率和可擴展性訓練模型,包括 TPU、雲端和本地 GPU。
蘋果結合使用數據並行、張量並行、序列並行和完全分片數據並行(FSDP)來沿數據、模型和序列長度等多個維度擴展訓練。
蘋果使用網絡爬蟲 AppleBot 來收集公開可用的數據,——如果 Web 發佈者不希望自己的內容被 Apple Intelligence 用於訓練,蘋果也提供了各種粒度的控制方案。
蘋果表示,在訓練基礎模型時,從不使用用户的私人個人數據或用户交互,並且蘋果應用過濾器來刪除互聯網上公開的個人身份信息(比如社會保險和信用卡號)。
除了過濾之外,蘋果還通過數據提取、重複數據刪除和基於模型的分類器的應用,以識別高質量的文檔。
後處理
蘋果在訓練管道中使用混合數據策略,結合人工註釋和合成數據,並執行徹底的數據管理和過濾程序。
蘋果在後處理階段開發了兩種新穎的算法:
1. 拒絕抽樣微調算法(rejection sampling fine-tuning algorithm);
2. 基於人類反饋的強化學習(RLHF)算法,採用鏡像下降策略優化和留一法優勢估計器(leave-one-out advantage estimator)。
這兩種算法可以顯著提高模型的指令遵循質量。
除了確保生成模型具有強大功能外,蘋果還使用了一系列創新技術在設備上和私有云上對其進行優化,以提高速度和效率。
設備端模型和服務器模型都使用分組查詢注意力(grouped-query-attention),來優化其推理性能。
蘋果使用共享的輸入和輸出詞彙表,來降低內存需求和推理成本,保證了共享嵌入張量的映射沒有重複。
設備端模型使用 49K 的詞彙大小,而服務器模型使用 100K 的詞彙大小。
對於設備端推理,蘋果使用 low-bit palletization,來滿足必要的內存、功耗和性能要求。
為了保持模型質量,蘋果開發了一個使用 LoRA 適配器的新框架,混合使用 2 比特和 4 比特的配置策略(平均每個權重 3.5 比特),以實現與未壓縮模型相同的精度。
此外,蘋果還使用交互式模型延遲和功耗分析工具 Talaria 來更好地指導每個操作的比特率選擇。
利用激活量化和嵌入量化,可以在蘋果的神經引擎上實現高效的鍵值緩存(KV cache)更新。
通過上面的這些優化,iPhone 15 Pro 能夠達到約 0.6 毫秒的延遲,以及每秒 30 個 token 的生成速率。
適配器
蘋果的基礎模型針對用户的日常活動進行了微調,可以動態地專注於手頭的任務。
做法是將小型神經網絡作為模塊(適配器,adapter),插入到預訓練模型的各個層中,以實現針對特定任務的微調。
此外,蘋果調整了注意力矩陣、注意力投影矩陣和前饋網絡中的全連接層,以適應 Transformer 架構的的解碼層。
通過僅微調適配器層,基本預訓練模型的原始參數保持不變,從而保留模型的一般知識,同時又能支持特定任務。
Apple Intelligence 包含一組廣泛的適配器,這是擴展基礎模型功能的有效方法。
蘋果使用 16 位表示適配器參數的值,對於 30 億個參數的設備模型,16 級適配器的參數通常需要 10 兆字節。
適配器模型可以動態加載、臨時緩存在內存中並進行交換,保證了操作系統的響應能力。
因為用户體驗是最高優先級,所以在對模型進行基準測試時,蘋果專注於人工評估。
摘要
蘋果的訓練數據基於從更大的服務器模型生成的合成摘要,並通過拒絕抽樣策略進行過濾,僅保留高質量的摘要。
為了評估特定於產品的摘要,這裏使用一組 750 個響應,針對每個用例進行了仔細抽樣。
評估數據集涵蓋了蘋果的產品功能在生產中可能面臨的各種輸入,包括不同內容類型和長度的單個文檔和堆疊文檔的分層組合。
另外,評估摘要功能也要考慮到一些固有風險,比如,模型偶爾會忽略掉一些重要的細節。
根據評分者在五個維度上的打分,摘要被分類為好、中、差。
實驗結果表明,與同類模型相比,帶有適配器的模型可以生成更好的摘要。
並且在超過 99% 的針對性對抗性示例中,摘要適配器並沒有放大敏感內容。
基礎功能
對於設備端和服務器模型的一般功能,蘋果利用一套全面的真實世界提示來評估通用模型的功能。
這些提示在不同的難度級別上各不相同,涵蓋頭腦風暴、分類、封閉式問答、編碼、提取、數學推理、開放式問答、重寫、安全、總結和寫作等主要類別。
將蘋果的模型與開源模型(Phi-3、Gemma、Mistral、DBRX)和類似規模的商業模型(GPT-3.5-Turbo、GPT-4-Turbo)進行比較。
實驗表明,與大多數競品相比,蘋果的模型更受人工評分師的青睞。
蘋果的 3B 設備端模型性能優於 Phi-3-mini、Mistral-7B 和 Gemma-7B 等大型模型;而蘋果的服務器模型也要優於 DBRX-Instruct、Mixtral-8x22B 和 GPT-3.5-Turbo,同時效率更高。
安全性
蘋果使用一組不同的對抗性提示來測試模型在有害內容、敏感主題和事實性方面的表現。
測量每個模型的違規率,同樣採用人工評估:
上圖顯示了在安全提示方面與競品的 PK。人工評分員發現蘋果的回答更安全、更有幫助。
指令遵循
為了進一步評估模型,蘋果還使用指令跟蹤評估(IFEval)基準測試來比較同類模型的能力。
結果表明,蘋果的設備端和服務器模型都比同等規模的開源和商業模型更好地遵循詳細説明。
最後是根據內部總結和作文基準評估模型的寫作能力,包括各種寫作説明,這些結果不涉及用於特定功能的適配器。
參考資料:
https://machinelearning.apple.com/research/introducing-apple-foundation-models

