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