蘋果為什么要用「小模型」?
在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)基準測試來比較同類模型的能力。
結果表明,蘋果的設備端和服務器模型都比同等規模的開源和商業模型更好地遵循詳細說明。
最后是根據內部總結和作文基準評估模型的寫作能力,包括各種寫作說明,這些結果不涉及用于特定功能的適配器。