Gemma 4 Görsel Rehberi
(newsletter.maartengrootendorst.com)- Google DeepMind tarafından yayımlanan Gemma 4, E2B·E4B·31B·26B A4B olmak üzere dört modelden oluşan çok modlu bir LLM ailesidir ve tüm varyantlar görüntü girdisini destekler
- Tüm modeller, yerel attention (sliding window) ile global attention katmanlarını dönüşümlü yerleştiren ortak bir yapıyı paylaşır ve son katman her zaman global attention olarak sabitlenmiştir
- Global attention katmanlarında GQA (grouped query attention), K=V tekniği ve p-RoPE dahil üç verimlilik tekniği aynı anda uygulanarak bellek ve hesaplama maliyeti azaltılır
- Küçük modeller (E2B·E4B), Per-Layer Embeddings (PLE) sayesinde büyük embedding tablolarını flash bellekte tutarak VRAM kullanımını en aza indirir; ayrıca bir ses kodlayıcısı da içerir
- Gemma 4, değişken en-boy oranı ve çözünürlüğü destekleyen vision encoder (ViT tabanlı) ile MoE (26B A4B) mimarisi sayesinde cihaz üstünden büyük ölçekli çıkarıma kadar geniş bir kullanım alanını destekler
Gemma 4 ailesinin yapısı
- Dört modelden oluşur ve iki tür mimari kullanır: dense mimari ve MoE mimarisi
- Gemma 4 - E2B: Per-Layer Embeddings uygulanır, etkin parametre sayısı 2 milyar
- Gemma 4 - E4B: Per-Layer Embeddings uygulanır, etkin parametre sayısı 4 milyar
- Gemma 4 - 31B: 31 milyar parametreli dense model
- Gemma 4 - 26B A4B: Toplam 26 milyar parametreli MoE model; çıkarım sırasında yalnızca 4 milyar parametre etkinleşir
- Tüm modeller çok modludur ve farklı boyut ve çözünürlüklerde görüntü girdilerini işleyebilir
- Küçük modeller (E2B·E4B), görüntü ve metnin yanı sıra ses girdisini de destekler
Gemma 4 ortak mimarisi
Attention katmanlarının dönüşümlü yerleşimi (Interleaving Layers)
- Gemma 3’te olduğu gibi yerel attention (sliding window) ile global attention katmanları dönüşümlü yerleştirilir
- Sliding window attention: Yalnızca belirli bir aralıktaki token’lara bakar → hesaplama miktarını azaltır
- Global attention: Tüm diziyi dikkate alır → bağlamın genel yapısını kavrayabilir
- Sliding window boyutu
- Küçük modeller (E2B·E4B): 512 token
- Büyük modeller (26B A4B·31B): 1024 token
- Gemma 3’te son katmanın yerel attention olduğu durumlar vardı, ancak Gemma 4’te son katman her zaman global attention olarak sabitlenmiştir
- Dönüşüm oranı
- E2B: 4 yerel attention katmanı + 1 global attention katmanından oluşan 4:1 düzen
- Diğer modeller: 5:1 düzen (5 yerel katman + 1 global katman)
Global attention verimliliği
GQA (Grouped Query Attention)
- Global attention katmanlarında 8 query head, 1 KV head’i paylaşır; böylece KV cache depolama miktarı büyük ölçüde azaltılır
- KV head sayısını azaltmanın yol açabileceği performans kaybını telafi etmek için Key boyutu 2 katına çıkarılır
K=V tekniği
- Global attention katmanlarında Keys ve Values aynı ayarlanarak KV cache bellek gereksinimi daha da azaltılır
- Performans kaybı büyük olmadan bellek verimliliğini artıran bir tekniktir
p-RoPE
- RoPE (rotary positional encoding), tüm boyutlara değil yalnızca boyutların bir kısmına uygulanır (
p=0.25ise yalnızca üstteki %25 eşe uygulanır) - Düşük frekanslı eşler, konum bilgisi yerine anlamsal (semantic) bilginin korunması için kullanılır
- Özellikle global attention’da uzun bağlamın yol açtığı token’lar arası mesafe bozulması sorununu hafifletmede etkilidir
- Global attention katmanlarına uygulanan tüm iyileştirmelerin özeti:
- Son katman her zaman global attention
- Her 8 query için 1 Key paylaşımı
- Key boyutu 2 katına çıkarılır
- Keys = Values
p=0.25ile p-RoPE uygulanır
Vision encoder
- Vision Transformer (ViT) tabanlıdır; görüntüyü patch dizilerine dönüştürerek embedding üretir
- Her patch 16×16 piksel boyutundadır
- Küçük modeller (E2B·E4B) 150 milyon parametreli bir vision encoder kullanırken, diğer modeller 550 milyon parametreli bir vision encoder kullanır
Değişken en-boy oranı desteği
- Klasik ViT, kare girdiyle sınırlıdır → bu da positional encoding’in en-boy oranına göre değişmesi sorununu doğurur
- Gemma 4, 2D RoPE kullanır: patch embedding’leri iki parçaya ayırır ve yatay (w) ile dikey (h) konum bilgisini bağımsız olarak kodlar
- Girdi görüntüsü, 16×16 piksellik patch’lere uyacak şekilde uyarlamalı olarak yeniden boyutlandırılır; tam uymayan bölümler padding ile doldurulur
- Değişken boyutlu patch’ler, uzamsal konuma dayalı pooling ile sabit sayıda patch embedding’e indirgenir
Değişken çözünürlük desteği (soft token budget)
- Soft token budget kavramı eklenir: LLM’e iletilen en fazla patch embedding sayısı sınırlandırılır
- Kullanıcının seçebileceği budget değerleri: 70, 140, 280, 560, 1120 token
- Budget yükseldikçe (ör. 1120) yüksek çözünürlük korunur; düştükçe (ör. 70) görüntü daha fazla küçültülür
- Örnek: Budget 280 ise en fazla patch sayısı = 9 × 280 = 2.520’dir (3×3 bloklar bazında average pooling uygulanır)
Doğrusal izdüşüm (Linear Projection)
- Vision encoder’dan çıkan embedding’ler, LLM’in token embedding’lerinden boyut ve dağılım açısından farklı olduğu için küçük bir sinir ağıyla izdüşümden geçirilir
- İzdüşümden sonra RMSNorm uygulanarak sonraki Transformer bloklarının beklediği ölçeğe uyum sağlanır
- Linear projection katmanı, Gemma 4 ile birlikte eğitilerek patch embedding’lerin LLM’in beklentileriyle uyumlu hâle gelmesi için optimize edilir
Gemma 4 - 31B (Dense)
- 31 milyar parametreli dense mimarili bir modeldir ve Gemma 4 varyantları içinde en temel yapıya en yakın olanıdır
- Yapısal olarak Gemma 3’ün 27B modeliyle benzerdir, ancak K=V ve p-RoPE gibi Gemma 4’ün ortak iyileştirmeleri uygulanmıştır
- Katman sayısı 62’den 60’a düşürülmüştür, ancak katman başına daha geniş bir yapı benimsenmiştir
Gemma 4 - 26B A4B (Mixture of Experts)
- Toplamda 26 milyar parametreye sahip olsa da çıkarım sırasında yalnızca 4 milyar parametre (aktif parametre) kullanır; bu sayede 4B model hızında çalışır
- MoE (Mixture of Experts) yapısı: Tek büyük FFNN yerine çok sayıda küçük FFNN (Expert) kullanılır ve girdiye göre yalnızca bir kısmı etkinleşir
- Toplam 128 Expert arasından çıkarım sırasında 8 tanesi seçilip etkinleştirilir
- 1 paylaşılan Expert (Shared Expert) her zaman etkindir; genel bilgi işlemeden sorumludur ve diğer Expert’lerin 3 katı boyutundadır
- Router, her giriş token’ı için Expert seçme olasılıkları üretir ve yönlendirme yapar; seçilen Expert’lerin çıktıları olasılık ağırlıklarıyla birleştirilir
- Tüm parametreler belleğe yüklenir, ancak gerçek hesaplamada yalnızca 8 Expert + 1 paylaşılan Expert kullanılır → kalan 119 Expert beklemede kalır
Gemma 4 - E2B & E4B (Dense + Per-Layer Embeddings)
Per-Layer Embeddings (PLE)
- Modelin içinde değil, her katman için ayrı embedding lookup tabloları eklenerek küçük cihazlarda VRAM kullanımı en aza indirilir
- E2B örneğinde: 262.144 token × 35 katman × 256 boyutlu PLE tablosu → flash bellekte saklanır
- Çıkarım başlarken giriş token’larının katman bazlı embedding’leri yalnızca bir kez alınır → sonrasında her katmanda yeniden lookup gerekmez
- Decoder blokları arasında gating function ile embedding ağırlığı belirlenir, ardından özgün embedding boyutuna izdüşüm yapılır (E2B: 256→1536, E4B: 256→2560)
- İzdüşümü yapılan embedding’ler normalize edildikten sonra önceki decoder bloğunun çıktısıyla toplanır → modelin token anlamını sürekli referans alabilmesini sağlar
- Buradaki “E”, PLE hariç etkin parametreleri (effective parameters) ifade eder
Ses kodlayıcısı
- Yalnızca küçük modellerde (E2B·E4B) bulunur ve otomatik konuşma tanıma ile çeviri gibi işlerde kullanılır
- Ses işleme 3 aşamadan oluşur:
- Özellik çıkarımı: Ham ses → mel-spectrogram (zaman × frekans 2D gösterimi)
- Chunk gruplama: Mel özellikleri chunk’lar hâlinde gruplanarak token dizisinin başlangıç noktası oluşturulur
- Downsampling: İki adet 2D convolution katmanıyla dizi uzunluğu kısaltılır ve soft token’lar üretilir
- Ses kodlayıcısı olarak Conformer kullanılır: Standart Transformer encoder’a convolution modülü eklenmiş bir yapı
- Conformer çıktı embedding’leri de vision encoder’da olduğu gibi linear projection ile Gemma 4’ün embedding uzayına dönüştürülür
Henüz yorum yok.