谷歌開源Gemma 3n:2G內存就能跑,100億參數內最強多模態模型
端側設備迎來了新架構的 AI 模型。
本周五凌晨,谷歌正式發布、開源了全新端側多模態大模型 Gemma 3n。
- 模型、權重:https://huggingface.co/collections/google/gemma-3n-685065323f5984ef315c93f4
- 文檔:https://ai.google.dev/gemma/docs/gemma-3n
- 博客:https://developers.googleblog.com/en/introducing-gemma-3n-developer-guide/
谷歌表示,Gemma 3n 代表了設備端 AI 的重大進步,它為手機、平板、筆記本電腦等端側設備帶來了強大的多模式功能,其性能去年還只能在云端先進模型上才能體驗。
Gemma 3n 的特性包含如下幾個方面:
- 多模態設計:Gemma 3n 原生支持圖像、音頻、視頻和文本輸入和文本輸出。
- 專為設備端優化:Gemma 3n 型號以效率為設計重點,提供兩種基于有效參數尺寸:E2B 和 E4B。雖然它們的原始參數數量分別為 5B 和 8B,但架構創新使其運行內存占用與傳統的 2B 和 4B 型號相當,僅需 2GB (E2B) 和 3GB (E4B) 內存即可運行。
- 架構突破:Gemma 3n 的核心是全新組件,例如用于計算靈活性的 MatFormer 架構、用于提高內存效率的每層嵌入 (PLE) 以及針對設備用例優化的新型音頻和基于 MobileNet-v5 的視覺編碼器。
- 質量提升:Gemma 3n 在多語言(支持 140 種文本語言和 35 種語言的多模態理解)、數學、編碼和推理方面均實現了質量提升。E4B 版本的 LMArena 得分超過 1300,使其成為首個達到此基準的 100 億參數以下模型。
谷歌表示,要想實現設備性能的飛躍需要徹底重新思考模型。Gemma 3n 獨特的移動優先架構是其基礎,而這一切都始于 MatFormer。
MatFormer:一種型號,多種尺寸
Gemma 3n 的核心是 MatFormer(Matryoshka Transformer) 架構,這是一種專為彈性推理而構建的新型嵌套 Transformer。你可以將其想象成俄羅斯套娃:一個較大的模型包含其自身更小、功能齊全的版本。這種方法將俄羅斯套娃表征學習的概念從單純的嵌入擴展到所有 Transformer 組件。
因此,MatFormer 在訓練 4B 有效參數 (E4B) 模型時,會同時優化 2B 有效參數 (E2B) 子模型,如上圖所示。這為開發者提供了兩項強大的功能和用例:
- 預提取模型:開發者可以直接下載并使用 E4B 模型以獲得更高性能,或者使用已提取的獨立 E2B 子模型,提供兩倍更快的推理速度。
- 使用 Mix-n-Match 自定義尺寸:為了根據特定硬件限制進行更精細的控制,你可以使用谷歌稱之為 Mix-n-Match 的方法,在 E2B 和 E4B 之間創建一系列自定義尺寸的模型。這項技術允許人們精確地對 E4B 模型的參數進行切片,主要通過調整每層的前饋網絡隱藏層維度(從 8192 到 16384)并選擇性地跳過某些層來實現。谷歌還將發布 MatFormer Lab,以展示如何檢索這些最佳模型,這些模型是通過在 MMLU 等基準測試中評估各種設置而確定的。
不同模型大小的預訓練 Gemma 3n 的 MMLU 分數(使用 Mix-n-Match)。
展望未來,MatFormer 架構也為彈性執行鋪平了道路。雖然此功能不屬于今天發布的實現,但它允許單個部署的 E4B 模型在 E4B 和 E2B 推理路徑之間動態切換,從而根據當前任務和設備負載實時優化性能和內存使用情況。
每層嵌入(PLE):釋放更多內存效率
Gemma 3n 模型采用了逐層嵌入 (PLE) 技術。這項創新專為設備部署而設計,可大幅提高模型質量,同時不會增加設備加速器 (GPU/TPU) 所需的高速內存占用。
雖然 Gemma 3n E2B 和 E4B 模型的總參數數量分別為 5B 和 8B,但 PLE 允許很大一部分參數(與每層相關的嵌入)在 CPU 上加載并高效計算。這意味著只有核心 Transformer 權重(E2B 約為 2B,E4B 約為 4B)需要存儲在通常較為受限的加速器內存 (VRAM) 中。
通過每層嵌入,你可以使用 Gemma 3n E2B,同時僅在 AI 加速器中加載約 2B 個參數。
KV Cache 共享:更快的長上下文處理
處理長內容輸入(例如來自音頻和視頻流的序列)對于許多先進的設備端多模態應用至關重要。Gemma 3n 引入了鍵值緩存共享 (KV Cache Sharing),旨在加快流式響應應用的首個 token 獲取時間 (Time-to-first-token)。
KV Cache Sharing 優化了模型處理初始輸入處理階段(通常稱為「預填充」階段)的方式。來自局部和全局注意力機制的中間層的鍵和值將直接與所有頂層共享,與 Gemma 3 4B 相比,預填充性能顯著提升了兩倍。這意味著模型能夠比以往更快地提取和理解較長的提示序列。
音頻理解:將語音引入文本并進行翻譯
在語音方面,Gemma 3n 采用基于通用語音模型(USM)的高級音頻編碼器。該編碼器每 160 毫秒的音頻生成一個 token(約每秒 6 個 token),然后將其作為語言模型的輸入進行集成,從而提供聲音上下文的精細表示。
這種集成音頻功能為設備開發解鎖了關鍵功能,包括:
- 自動語音識別 (ASR):直接在設備上實現高質量的語音到文本的轉錄。
- 自動語音翻譯 (AST):將口語翻譯成另一種語言的文本。
經過實踐可知,Gemma 3n 在英語與西班牙語、法語、意大利語、葡萄牙語之間的翻譯 AST 效果尤為出色。對于語音翻譯等任務,利用「思維鏈」提示可以顯著提升翻譯效果。以下是示例:
<bos><start_of_turn>user
Transcribe the following speech segment in Spanish, then translate it into English:
<start_of_audio><end_of_turn>
<start_of_turn>model
Gemma 3n 編碼器在發布時已可以處理長達 30 秒的音頻片段,但這并非極限。底層音頻編碼器是一個流式編碼器,能夠通過額外的長音頻訓練處理任意長度的音頻。后續的實現將解鎖低延遲、長流式傳輸應用程序。
MobileNet-V5:最先進的視覺編碼器
除了集成的音頻功能外,Gemma 3n 還配備了全新的高效視覺編碼器 MobileNet-V5-300M,為邊緣設備上的多模態任務提供最先進的性能。
MobileNet-V5 專為在受限硬件上實現靈活性和強大功能而設計,可為開發人員提供:
- 多種輸入分辨率:本機支持 256×256、512×512 和 768×768 像素的分辨率,讓開發者能夠平衡特定應用的性能和細節。
- 通用的視覺理解:在廣泛的多模式數據集上進行了聯合訓練,在各種圖像和視頻理解任務中表現出色。
- 高吞吐量:在 Google Pixel 上每秒處理高達 60 幀,實現實時設備視頻分析和交互式體驗。
這一性能水平是通過多種架構創新實現的,其中包括:
- MobileNet-V4 模塊的高級基礎(包括 Universal Inverted Bottlenecks 和 Mobile MQA)。
- 顯著擴大的架構,采用混合深度金字塔模型,比最大的 MobileNet-V4 變體大 10 倍。
- 一種新的多尺度融合 VLM 適配器,可提高 token 質量,從而提高準確性和效率。
得益于新架構設計和先進蒸餾技術,MobileNet-V5-300M 在 Gemma 3 中的表現顯著優于基線 SoViT(使用 SigLip 訓練,未進行蒸餾)。在 Google Pixel Edge TPU 上,它在量化的情況下實現了 13 倍的加速(不使用量化的情況下為 6.5 倍),所需參數減少了 46%,內存占用減少了 4 倍,同時在視覺語言任務上實現了更高的準確率。
谷歌表示,更多細節會在即將發布的 MobileNet-V5 技術報告中展示。
5 月 20 日,谷歌 DeepMind 在 I/O 大會上宣布了 Gemma-3n,其小體量、高性能和低內存占用的特性讓人印象深刻。
谷歌的首個 Gemma 模型于去年年初發布,目前該系列的累計下載量已經超過了 1.6 億次。