İçeriğe geç
edumintsBlog
Makine Öğrenmesi3 dk okuma

Gömme (Embedding) Tabloları Fazla mı Maliyetli? Küçük ve Üçlü (Ternary) Dil Modelleri İçin 16 MB'lık Dondurulmuş Kelime Dağarcığı

Kaynak: Hugging Face Papers

Paylaş
Makine ÖğrenmesiEdumints Blog
İçindekiler 3 başlık

Küçük dil modellerinde (SLM) kelime dağarcığı (vocabulary), modelin tek başına en büyük parçasını oluşturur. Örneğin Gemma 3 270M modelinde gömme (embedding) tablosu, toplam 268 milyon parametrenin 168 milyonunu barındırır. Üstelik nicemleme (quantisation) yöntemleri gömme katmanını genellikle 16-bit seviyesinde bıraktığı için, modelin geri kalanı sıkıştırıldığında dosya boyutunun büyük çoğunluğunu bu tablo kaplar. Bu çalışma, devasa gömme tablolarının gerçekte ne kazandırdığını sorguluyor ve yazılım geliştiriciler için ezber bozan bir alternatif sunuyor.

Dondurulmuş 512-Bit Kod Tablosu Yaklaşımı#

Araştırmacılar, eğitilebilir büyük gömme tablosunu, önceden eğitilmiş bir gömme katmanından temel bileşen izdüşümü (PCA) ve işaret ikilileştirme (sign binarisation) yöntemleriyle bir kez türetilen, eğitilebilir parametresi olmayan 16 MB boyutunda dondurulmuş 512-bitlik bir kod tablosuyla değiştiriyor. Aynı Gemma mimarisine sahip model gövdesi, 2,05 milyar token üzerinde hem bu dondurulmuş tabloyla hem de geleneksel öğrenilen tabloyla sıfırdan eğitilerek karşılaştırılıyor.

Temel Bulgular ve Performans Karşılaştırması#

  • Parametre Maliyeti ve Doğrulama Kaybı: Geleneksel öğrenilen tablo, 2,6 kat daha fazla eğitilebilir parametre gerektirmesine rağmen doğrulama kaybında (validation loss) yalnızca 0,20 nat iyileşme sağlıyor.
  • Kıyaslama (Benchmark) Sonuçları: LAMBADA, HellaSwag ve PIQA testlerinde dondurulmuş tabloya sahip model, öğrenilen tabloyla eşit veya daha iyi sonuç veriyor; yalnızca ARC-Easy testinde öğrenilen tablo öne geçiyor.
  • Üçlü (Ternary) BitNet b1.58 Entegrasyonu: Dondurulmuş tablo üçlü BitNet b1.58 gövdesiyle birleştirildiğinde tüm model yalnızca 46 MB'lık bir dosyaya dönüşüyor ve LAMBADA ile PIQA testlerinde standart kayan noktalı (float) modelle başa baş performans sergiliyor.
  • Donanım Verimliliği ve Hız: Standart bir dizüstü bilgisayar işlemcisinde (CPU) yalnızca 62 MB bellek kullanarak saniyede 615 ila 740 token üretebiliyor. Bu değer, kayan noktalı modelin llama.cpp üzerindeki 8-bit GGUF versiyonuna kıyasla yedide bir bellek tüketimiyle 5 ila 6 kat daha yüksek hız anlamına geliyor.
  • Nadir Kelimeler ve Kelime Dağarcığı Genişletme: Dondurulmuş tablo nadir kelimelerde 1,7 ila 2,3 nat üstünlük sağlıyor. Eğitim sonrasında modele 10.000 yeni kelime eklendiğinde dondurulmuş tablo yalnızca %3 performans kaybı yaşarken, öğrenilen tabloda %43 oranında çöküş görülüyor. Tüm model ağırlıkları, veri seti ve değerlendirme yanıtları açık kaynak olarak paylaşılmıştır.

Geliştiriciler İçin Pratik Çıkarımlar#

  • Uç Cihazlarda (Edge) Dağıtım: 46 MB dosya boyutu ve 62 MB RAM gereksinimi, dil modellerini sunucu maliyeti olmadan doğrudan tarayıcıda, mobil uygulamalarda veya IoT cihazlarında çalıştırmayı mümkün kılar.
  • Sıfır Yeniden Eğitimle Alan Adaptasyonu: Eğitim sonrası %3 gibi ihmal edilebilir bir kayıpla 10.000 yeni kelime ekleyebilme yeteneği, tıp veya hukuk gibi spesifik terminoloji gerektiren yazılım projelerinde modeli baştan eğitme maliyetini ortadan kaldırır.
  • Bellek Darboğazını Aşmak: Küçük modellerde sıkıştırma odak noktasını sadece ağırlıklardan gömme tablosuna kaydırmak, CPU üzerinde yüksek çıkarım (inference) hızlarına ulaşmanın en etkili yoludur.

Bu konuyu derinlemesine öğrenmek isterseniz: Ölçeklendirme ve Optimizasyon modülüne göz atın.

Kaynak ve atıf

Bu yazı, Hugging Face Papers üzerinde yayımlanan içerikten yararlanılarak Edumints tarafından yapay zekâ desteğiyle Türkçe hazırlandı. Ayrıntılar ve yazarların kendi anlatımı için orijinaline bakabilirsin:

  • huggingface.co/papers/2610.22428