17 puan yazan GN⁺ 26 일 전 | Henüz yorum yok. | WhatsApp'ta paylaş
  • 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.25 ise 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.25 ile 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:
    1. Özellik çıkarımı: Ham ses → mel-spectrogram (zaman × frekans 2D gösterimi)
    2. Chunk gruplama: Mel özellikleri chunk’lar hâlinde gruplanarak token dizisinin başlangıç noktası oluşturulur
    3. 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.

Henüz yorum yok.