Gemma 3n リリースノート:マルチモーダルオンデバイスAI
Gemma 3n は、ローカルハードウェアでの実行を想定して設計されたネイティブなマルチモーダルモデルで、テキスト、画像、音声、動画の入力をサポートします。そのリリースにより、オープンソースコミュニティは、消費者向け GPU やモバイルデバイス上で動作可能な、高性能かつ小フットプリントのモデルを利用できるようになります。
モデルバリエーションとメモリ効率
Gemma 3n は、2 つの主要サイズでリリースされ、各サイズはベース版と指示(instruct)版が提供されます。モデルは非標準の命名法を使用しており、"E" は「Effective(実効)」パラメータを意味し、実際のパラメータ数は多いものの、メモリ効率の向上により VRAM の必要量が大幅に低減されます。
- gemma-3n-E2B: 実際のパラメータ数は 5B ですが、GPU RAM はわずか 2GB で済みます。
- gemma-3n-E4B: 実際のパラメータ数は 8B ですが、GPU RAM はわずか 3GB で済みます。
技術アーキテクチャ
Gemma 3n は、言語デコーダと視覚および音声用の特殊エンコーダを統合し、ネイティブなマルチモーダリティを実現しています。
ビジョンとオーディオエンコーダ
- Vision Encoder (MobileNet-V5): MobileNet-v5-300(3億パラメータ)を使用します。256x256、512x512、768x768 の解像度をサポートします。Google Pixel デバイス上では 60 FPS を達成し、ViT Giant を上回りますが、パラメータは 3 倍少なくなります。
- Audio Encoder: Universal Speech Model(USM)をベースにしており、音声を 160ms のチャンクで処理し、音声認識からテキスト変換、翻訳(例:英語からスペイン語やフランス語)をサポートします。
アーキテクチャ上のイノベーション
- MatFormer Architecture: 層のサブセットを個別のモデルとして抽出できるネスト型トランスフォーマー設計です。E2B モデルは E4B のサブモデルとして構成されており、ユーザーは特定のメモリ予算やハードウェアに応じて層を組み合わせて使用できます。
- Per-Layer Embeddings (PLE): この手法は、埋め込みを CPU にオフロードすることでアクセラレータのメモリ使用量を削減し、5B パラメータの E2B モデルが 2B パラメータモデルと同等の VRAM しか使用しないようにします。
- KV Cache Sharing: この機能は音声および動画処理のプリフィルを高速化し、Gemma 3 4B と比較してプリフィルが 2 倍速くなります。
パフォーマンスと機能
Gemma 3n は高い効率性と広範な言語対応を示します:
- LMArena Score: E4B モデルは、1300 点以上を達成した初の 10B 未満モデルです。
- Multilingual Support: テキスト向けに 140 言語、マルチモーダルインタラクション向けに 35 言語をサポートします。
- Benchmarks: E4B、E2B、そしてさまざまな Mix-n-Match 構成において、MMLU で競争力のあるパフォーマンスを示します。
エコシステム統合とデプロイ
Gemma 3n は、複数の主要なオープンソースライブラリやランタイムに統合されています:
- Transformers & Timm: アーキテクチャと MobileNet-v5 ビジョンエンコーダのリファレンス実装です。
- MLX: テキスト、画像、音声の 3 つのモダリティすべてに対する Day 0 のサポートです。
- llama.cpp & Ollama: テキストのみの入力をサポートします。
- Transformers.js & ONNXRuntime:
gemma-3n-E2B-itバリアント用の ONNX 重みが利用可能で、Transformers.js バージョン 3.6.0 に統合されています。 - Google AI Edge: オンデバイスでのデプロイをサポートしています。
ファインチューニングとリソース
開発者は、スクリプトやノートブックが含まれる Hugging Face Gemma Recipes リポジトリを使用して、Gemma 3n を特定のタスク向けに適応させることができます。T4 GPU での一般的なファインチューニングや音声タスク向けの専門的なファインチューニング用に、特定の Google Colab ノートブックが提供されています。