SwiGLU Nedir?
Yayın: · Son güncelleme:
SwiGLU Nedir? Kısaca
SwiGLU, girdiden iki ayrı doğrusal dönüşüm üretip bunlardan birini Swish fonksiyonundan geçirerek diğeriyle eleman eleman çarpan, yani kapılı doğrusal birim (GLU) fikrini Swish ile birleştiren ve büyük dil modellerinde yaygın kullanılan bir aktivasyon yapısıdır.

SwiGLU, "Swish" ve "GLU" (Gated Linear Unit, kapılı doğrusal birim) kavramlarının birleşiminden adını alır. Noam Shazeer'in 2020'de yayımladığı ve transformer'larda GLU türevlerini inceleyen çalışmayla öne çıkmıştır. Bugün birçok büyük dil modelinin ileri besleme katmanlarında kullanılmaktadır.
SwiGLU nedir?
Önce iki yapı taşını tanıyalım:
- Swish (SiLU): Swish(x) = x · σ(x). Girdiyi kendi sigmoid değeriyle çarpar; GELU'ya benzer, pürüzsüz bir eğridir.
- GLU: Girdiden iki ayrı doğrusal dönüşüm alınır. Birinin çıktısı bir "kapı" gibi davranarak diğerinin ne kadarının geçeceğini belirler.
SwiGLU bu ikisini birleştirir:
SwiGLU(x) = Swish(x·W) ⊙ (x·V)
Burada W ve V iki ayrı ağırlık matrisi, ⊙ ise eleman eleman çarpımdır. Sonuç genellikle üçüncü bir matrisle çarpılarak katman çıktısına dönüştürülür.
Neden kullanılır?
- Kapı mekanizması: Model, hangi bilginin ne ölçüde aktarılacağını girdiye bağlı olarak öğrenebilir. Bu, tek bir aktivasyon fonksiyonuna göre daha esnek bir yapı sunar.
- Deneysel başarı: Aynı hesaplama bütçesiyle yapılan karşılaştırmalarda, transformer ileri besleme bloğunda ReLU ve GELU'ya göre genellikle daha iyi sonuç verdiği raporlanmıştır.
Yazarlar da bu başarının nedenini teorik olarak tam açıklamadıklarını belirtmiştir; tercih büyük ölçüde deneysel sonuçlara dayanır.
Nelere dikkat etmeli?
- Ek parametre: Klasik ileri besleme bloğunda iki matris varken SwiGLU'da üç matris bulunur. Toplam parametre sayısını sabit tutmak için gizli katman boyutu genellikle küçültülür.
- Hesaplama maliyeti: Ek matris çarpımı nedeniyle işlem yükü biraz artar.
- SwiGLU tek başına bir fonksiyon değil, katman içinde bir yapı olarak düşünülmelidir; diğer aktivasyon fonksiyonları gibi tek bir sayıya uygulanmaz.
Sıkça Sorulan Sorular
SwiGLU ile GELU arasındaki fark nedir?
GELU tek bir değere uygulanan bir aktivasyon fonksiyonudur. SwiGLU ise iki ayrı doğrusal dönüşümü kapı mekanizmasıyla birleştiren, ek ağırlık matrisi içeren bir katman yapısıdır.
SwiGLU neden büyük dil modellerinde tercih edilir?
Benzer hesaplama bütçesinde ileri besleme katmanlarında daha iyi sonuç verdiği deneysel olarak gösterilmiştir. Kapı yapısı modele bilgiyi daha seçici aktarma imkânı tanır.