Visueller Leitfaden zu Gemma 4
(newsletter.maartengrootendorst.com)- Gemma 4 von Google DeepMind ist eine multimodale LLM-Familie mit vier Modellen: E2B, E4B, 31B und 26B A4B; alle Varianten unterstützen Bildeingaben
- Alle Modelle teilen eine Architektur, in der lokale Attention (Sliding Window) und globale Attention-Layer abwechselnd angeordnet sind; der letzte Layer ist immer globale Attention
- In den globalen Attention-Layern werden gleichzeitig drei Effizienztechniken eingesetzt: GQA (Grouped Query Attention), die K=V-Methode und p-RoPE, um Speicher- und Rechenaufwand zu senken
- Die kleinen Modelle (E2B, E4B) nutzen Per-Layer Embeddings (PLE), um große Embedding-Tabellen im Flash-Speicher abzulegen und so den VRAM-Verbrauch zu minimieren; zusätzlich ist ein Audio-Encoder integriert
- Gemma 4 unterstützt dank eines Vision-Encoders (auf ViT-Basis) mit variablen Seitenverhältnissen und Auflösungen sowie einer MoE-Architektur (26B A4B) ein breites Einsatzspektrum von On-Device bis hin zu großskaliger Inferenz
Aufbau der Gemma-4-Familie
- Besteht aus vier Modellen und verwendet zwei Architekturtypen: Dense und MoE
- Gemma 4 - E2B: mit Per-Layer Embeddings, 2 Milliarden effektive Parameter
- Gemma 4 - E4B: mit Per-Layer Embeddings, 4 Milliarden effektive Parameter
- Gemma 4 - 31B: Dense-Modell mit 31 Milliarden Parametern
- Gemma 4 - 26B A4B: MoE-Modell mit insgesamt 26 Milliarden Parametern, bei der Inferenz werden nur 4 Milliarden Parameter aktiviert
- Alle Modelle sind multimodal und können Bildeingaben in verschiedenen Größen und Auflösungen verarbeiten
- Die kleinen Modelle (E2B, E4B) unterstützen zusätzlich zu Bild und Text auch Audioeingaben
Gemeinsame Architektur von Gemma 4
Abwechselnde Anordnung von Attention-Layern (Interleaving Layers)
- Wie schon bei Gemma 3 werden lokale Attention (Sliding Window) und globale Attention abwechselnd angeordnet
- Sliding-Window-Attention: betrachtet nur Tokens innerhalb eines festen Bereichs → geringerer Rechenaufwand
- Globale Attention: betrachtet die gesamte Sequenz → kann die Gesamtstruktur des Kontexts erfassen
- Größe des Sliding Window
- Kleine Modelle (E2B, E4B): 512 Tokens
- Große Modelle (26B A4B, 31B): 1024 Tokens
- In Gemma 3 konnte der letzte Layer lokal sein; in Gemma 4 ist der letzte Layer immer globale Attention
- Interleaving-Verhältnis
- E2B: 4:1-Muster aus 4 lokalen Attention-Layern + 1 globalem Attention-Layer
- Übrige Modelle: 5:1-Muster (5 lokale Layer + 1 globaler Layer)
Effizienzsteigerung bei globaler Attention
GQA (Grouped Query Attention)
- In den globalen Attention-Layern teilen sich 8 Query-Heads einen KV-Head, was den Speicherbedarf des KV-Cache deutlich reduziert
- Um den Leistungsabfall durch weniger KV-Heads auszugleichen, wird die Dimensionsgröße der Keys verdoppelt
K=V-Methode
- In den globalen Attention-Layern werden Keys und Values identisch gesetzt, was den Speicherbedarf des KV-Cache zusätzlich senkt
- Eine Methode, die die Speichereffizienz erhöht, ohne die Leistung stark zu verschlechtern
p-RoPE
- RoPE (rotary positional encoding) wird nicht auf alle, sondern nur auf einen Teil der Dimensionen angewendet (bei p=0,25 nur auf die oberen 25 % der Paare)
- Niedrigfrequente Paare werden genutzt, um statt Positionsinformation semantische Information zu bewahren
- Besonders wirksam in globaler Attention, um Verzerrungen von Token-Abständen in langen Kontexten zu mildern
- Zusammenfassung der Verbesserungen in den globalen Attention-Layern:
- Der letzte Layer ist immer globale Attention
- 1 Key wird von je 8 Queries geteilt
- Key-Dimension verdoppelt
- Keys = Values
- p-RoPE mit p=0,25
Vision-Encoder
- Basiert auf Vision Transformer (ViT) und wandelt Bilder in Patch-Sequenzen um, aus denen Embeddings erzeugt werden
- Jeder Patch hat eine Größe von 16×16 Pixeln
- Die kleinen Modelle (E2B, E4B) verwenden einen Vision-Encoder mit 150 Millionen Parametern, die übrigen Modelle einen mit 550 Millionen Parametern
Unterstützung variabler Seitenverhältnisse
- Herkömmliche ViTs setzen feste quadratische Eingaben voraus → dadurch entstehen Probleme, weil sich die Positionskodierung je nach Seitenverhältnis verändert
- Gemma 4 führt 2D RoPE ein: Patch-Embeddings werden in zwei Teile aufgeteilt, die horizontale (w) und vertikale (h) Positionsinformation jeweils unabhängig kodieren
- Eingabebilder werden passend zu 16×16-Pixel-Patches adaptiv skaliert, nicht vollständig passende Bereiche werden gepolstert
- Patches variabler Größe werden auf Basis ihrer räumlichen Position gepoolt und auf eine feste Anzahl von Patch-Embeddings reduziert
Unterstützung variabler Auflösung (Soft Token Budget)
- Einführung des Konzepts Soft Token Budget: Die maximale Anzahl an Patch-Embeddings, die an das LLM weitergegeben wird, wird begrenzt
- Vom Nutzer wählbare Budgets: 70, 140, 280, 560, 1120 Tokens
- Je höher das Budget (z. B. 1120), desto eher bleibt die hohe Auflösung erhalten; je niedriger es ist (z. B. 70), desto stärker wird das Bild herunterskaliert
- Beispiel: Bei einem Budget von 280 beträgt die maximale Patch-Zahl = 9 × 280 = 2.520 (mit Average Pooling in 3×3-Blöcken)
Lineare Projektion (Linear Projection)
- Die Ausgabe-Embeddings des Vision-Encoders unterscheiden sich in Dimension und Verteilung von den Token-Embeddings des LLM und werden daher über ein kleines neuronales Netz projiziert
- Nach der Projektion wird RMSNorm angewendet, damit die Skalen den Erwartungen der nachfolgenden Transformer-Blöcke entsprechen
- Der lineare Projektions-Layer wird gemeinsam mit Gemma 4 trainiert, damit die Patch-Embeddings optimal an den Erwartungsraum des LLM angepasst sind
Gemma 4 - 31B (Dense)
- Ein Modell mit Dense-Architektur und 31 Milliarden Parametern, strukturell die grundlegendste Variante innerhalb der Gemma-4-Familie
- Strukturell ähnlich zum 27B-Modell von Gemma 3, jedoch mit den gemeinsamen Verbesserungen von Gemma 4 wie K=V und p-RoPE
- Die Zahl der Layer wurde von 62 auf 60 reduziert, dafür ist die Breite pro Layer größer
Gemma 4 - 26B A4B (Mixture of Experts)
- Insgesamt 26 Milliarden Parameter, aber bei der Inferenz werden nur 4 Milliarden Parameter (aktive Parameter) genutzt, sodass es mit der Geschwindigkeit eines 4B-Modells arbeitet
- MoE (Mixture of Experts)-Struktur: Statt eines allgemeinen großen FFNN gibt es viele kleine FFNNs (Experts), von denen abhängig von der Eingabe nur einige aktiviert werden
- Von insgesamt 128 Experts werden bei der Inferenz 8 ausgewählt und aktiviert
- 1 Shared Expert ist immer aktiv: Er verarbeitet allgemeines Wissen und ist dreimal so groß wie die anderen Experts
- Ein Router erzeugt für jedes Eingabe-Token Wahrscheinlichkeiten zur Auswahl der Experts und routet entsprechend; auf die Ergebnisse der ausgewählten Experts werden Wahrscheinlichkeitsgewichte angewendet
- Alle Parameter werden in den Speicher geladen, in der tatsächlichen Berechnung werden jedoch nur 8 Experts + 1 Shared Expert verwendet → die übrigen 119 bleiben in Bereitschaft
Gemma 4 - E2B & E4B (Dense + Per-Layer Embeddings)
Per-Layer Embeddings (PLE)
- Statt im Modellkern werden separate Embedding-Lookup-Tabellen für jeden Layer hinzugefügt, um den VRAM-Verbrauch auf kleinen Geräten zu minimieren
- Am Beispiel E2B: PLE-Tabellen mit 262.144 Tokens × 35 Layern × 256 Dimensionen → im Flash-Speicher abgelegt
- Zu Beginn der Inferenz werden die Layer-spezifischen Embeddings der Eingabe-Tokens einmalig nachgeschlagen → später ist in den einzelnen Layern kein erneuter Lookup nötig
- Zwischen den Decoder-Blöcken bestimmt eine Gating-Funktion die Gewichtung der Embeddings; anschließend werden sie auf die ursprüngliche Embedding-Größe projiziert (E2B: 256→1536, E4B: 256→2560)
- Die projizierten Embeddings werden normalisiert und mit der Ausgabe des vorherigen Decoder-Blocks addiert → das Modell kann fortlaufend auf die Token-Bedeutung Bezug nehmen
- Das „E“ steht für effective parameters ohne PLE
Audio-Encoder
- Nur in den kleinen Modellen (E2B, E4B) enthalten und für automatische Spracherkennung und Übersetzung nutzbar
- Drei Schritte der Audioverarbeitung:
- Feature-Extraktion: Roh-Audio → Mel-Spektrogramm (mel-spectrogram) (2D-Darstellung aus Zeit × Frequenz)
- Chunk-Gruppierung: Mel-Features werden zu Chunks gebündelt, die den Ausgangspunkt der Token-Sequenz bilden
- Downsampling: Zwei 2D-Convolution-Layer verkürzen die Sequenzlänge und erzeugen Soft Tokens
- Als Audio-Encoder wird ein Conformer verwendet: eine Struktur, die einem Standard-Transformer-Encoder Convolution-Module hinzufügt
- Die Ausgabe-Embeddings des Conformer werden ebenso wie beim Vision-Encoder per linearer Projektion in den Embedding-Raum von Gemma 4 überführt
Noch keine Kommentare.