Neden Konum Bilgisi Gerekli?
Transformer modelleri, tüm token'ları aynı anda işleyen paralel bir mimari kullanır. RNN ve LSTM gibi geleneksel modeller token'ları sırayla işlediği için sıralama bilgisini doğal olarak kazanır; Transformer bu avantajdan yoksundur. Dikkat mekanizması (self-attention), bir token'ın diğerleriyle ilişkisini hesaplarken yalnızca içeriğe bakar; hangi token'ın nerede olduğuna dair herhangi bir bilgi taşımaz. Bu durum ciddi bir semantik sorun yaratır: 'Kedi fareyi kovaladı' ile 'Fare kediyi kovaladı' cümlelerindeki kelimeler aynı embedding'lere sahipse model bu iki cümleyi ayırt edemez. Konum kodlama, her token embedding'ine o token'ın sırasını taşıyan bir vektör ekleyerek bu boşluğu kapatır.
Sinüzoidal Konum Kodlama
Orijinal Transformer makalesinde (Vaswani et al., 2017) önerilen sinüzoidal yöntem, her konum için farklı frekanslardaki sinüs ve kosinüs fonksiyonlarını kullanır. Çift indeksler için sin(pos / 10000^(2i/d)), tek indeksler için cos(pos / 10000^(2i/d)) formülleri uygulanır. Burada pos dizideki konum numarası, i boyut indeksi, d_model ise embedding boyutudur. Düşük frekanslı bileşenler geniş konum aralıklarını, yüksek frekanslılar dar aralıkları temsil eder; bu sayede her konum matematiksel olarak benzersiz bir iz bırakır. Bu vektörler eğitimle öğrenilmez, saf matematiksel hesaplamayla belirlenir; dolayısıyla model ilke olarak eğitimde görmediği daha uzun dizilere genelleme yapabilir.
Öğrenilmiş Konum Gömmeleri
BERT, GPT ve birçok ilk nesil büyük dil modeli, sabit sinüzoidal formüller yerine konum bilgisini doğrudan veriden öğrenir. Modelin parametre tablosunda her konum için ayrı bir vektör bulunur; bu vektörler eğitim sırasında diğer model ağırlıklarıyla birlikte güncellenir. Öğrenilmiş yöntemin avantajı, modelin görev ve dil özelliklerine uygun konum temsillerini keşfetmesidir. Dezavantajı ise sınırlı genelleme kapasitesidir: modelin izin verilen maksimum uzunluğu sabit olup eğitim sırasında belirlenir. Daha uzun bağlamlar için konum enterpolasyonu gibi ek teknikler gerekir.
RoPE ve Modern Yaklaşımlar
Rotary Position Embedding (RoPE), Su ve diğerleri tarafından 2021 yılında önerilen ve günümüzde yaygın biçimde kullanılan bir yöntemdir. RoPE, konum bilgisini embedding'lere doğrudan eklemek yerine dikkat mekanizmasındaki sorgu (query) ve anahtar (key) vektörlerini konum bazlı döndürme matrisleriyle dönüştürür. Bu tasarım hem mutlak konumu hem de iki token arasındaki göreli uzaklığı aynı anda kodlar. LLaMA, Mistral, Gemma, Qwen ve daha birçok modern açık kaynak modeli RoPE'u tercih eder. ALiBi (Attention with Linear Biases) ise dikkat puanlarına konum farkıyla orantılı bir ceza ekleyerek çalışır ve eğitimde görmediği uzun dizilere daha iyi genelleme yapabilir.
Bağlam Uzunluğu ve Genelleme
Konum kodlamasının seçimi, modelin etkin bağlam penceresi boyutunu doğrudan belirler. 128K–1M token'lık bağlam pencereli modellerin ortaya çıkması, konum genellemesini kritik bir araştırma sorusu haline getirmiştir. Yalnızca 2K-4K token üzerinde eğitilen modellerin bağlam penceresini genişletmek için konum enterpolasyonu, NTK-aware ölçekleme ve YaRN (Yet another RoPE extensioN) gibi teknikler geliştirilmiştir. RoPE tabanlı modeller bu genişletme tekniklerine özellikle iyi yanıt verir. Öğrenilmiş konumlu modeller ise ekstrapolasyon yerine interpolasyon gerektirir ve genellikle daha sınırlı bir genişleme kapasitesi sunar.
help Sık Sorulan Sorular
- check_circle Konum kodlama olmasa Transformer ne kaybeder? Token sırası tamamen kaybolur. Model 'Kedi fareyi kovaladı' ile 'Fare kediyi kovaladı' cümlelerini özdeş olarak algılar; sıra bağımlı tüm anlam ilişkileri ortadan kalkar.
- check_circle RoPE neden sinüzoidal yöntemden daha iyi? RoPE, konum bilgisini dikkat hesaplamasına doğrudan entegre ettiği için hem mutlak hem göreli konum bilgisini aynı anda kodlar. Uzun bağlam genellemesinde belirgin üstünlük gösterir ve modern LLM'lerin büyük çoğunluğu tarafından tercih edilir.
- check_circle BERT ve GPT farklı konum kodlama mı kullanır? BERT ve orijinal GPT, öğrenilmiş konum gömmelerini (learned positional embeddings) kullanır. GPT-4 gibi daha yeni modeller RoPE veya benzer gelişmiş tekniklere geçiş yapmıştır.
- check_circle Bağlam uzunluğunu artırmak için konum kodlaması nasıl uyarlanır? RoPE tabanlı modellerde konum enterpolasyonu, NTK-aware ölçekleme veya YaRN gibi tekniklerle eğitim sonrası bağlam penceresi genişletilebilir. Bu teknikler mevcut ağırlıkları korurken konum bileşenlerini yeniden ölçekler.
- check_circle Konum kodlaması görüntü ve ses modellerinde de kullanılır mı? Evet. Vision Transformer (ViT) görüntü yamalarını (patch) bir dizi olarak işler ve 2D konum gömmeleri kullanır. Ses modellerinde de benzer teknikler uygulanır; zaman eksenine özgü özel yöntemler de mevcuttur.