Positional Encoding
Positional Encoding (Konumsal Kodlama), Transformer modeline bir dizideki tokenların hangi sırada ve hangi konumda bulunduğuna ilişkin bilgi sağlayan mekanizmadır. Bu mekanizma önemlidir çünkü klasik self-attention işlemi tek başına tokenların sırasını doğal olarak temsil etmez. Örneğin:
“Kedi köpeği kovaladı.”
“Köpeği kedi kovaladı.”
Aynı veya benzer tokenlar kullanılmasına rağmen sıralama cümlenin anlamını belirler. Transformer’ın bu farkı anlayabilmesi için token temsillerine konum bilgisi eklenmesi gerekir.
Neden gereklidir?
Self-Attention temel olarak tokenlar arasındaki ilişkileri hesaplar:
Ancak modele yalnızca token embeddingleri verilirse attention mekanizması, tokenların dizide 1., 2., 3. veya 100. konumda olduğunu kendiliğinden kodlamaz. Bu nedenle temel fikir:
şeklindedir. Yani model:
“Bu token nedir?” + “Dizinin neresindedir?” bilgilerini birlikte kullanabilir.
Orijinal Transformer’da nasıl çalışır?
2017’de tanıtılan orijinal Transformer’da sinüs ve kosinüs fonksiyonlarına dayalı sabit positional encoding kullanılmıştır:
Burada:
- pos: Tokenın dizideki konumu
- i: Vektördeki boyut
- dmodeld_{model}: Modelin temsil boyutu
Her pozisyon böylece kendine özgü bir sayısal örüntü kazanır.
Basit örnek
Şu diziyi düşünelim: “Yapay zekâ dünyayı değiştiriyor.” Tokenlar kavramsal olarak:
- Yapay → Pozisyon 1
- zekâ → Pozisyon 2
- dünyayı → Pozisyon 3
- değiştiriyor → Pozisyon 4
şeklinde konum bilgileriyle birlikte temsil edilir. Böylece model yalnızca tokenların kimliklerini değil, birbirlerine göre konumlarını da değerlendirebilir.
Positional Encoding ve Positional Embedding aynı mı?
Tam olarak aynı olmak zorunda değildir.
- Positional Encoding, konum bilgisini modele aktaran genel yaklaşımı ifade eder.
- Learned Positional Embedding ise her pozisyon için konum temsilinin eğitim sırasında öğrenildiği yöntemdir.
Dolayısıyla:
- Positional Encoding → Daha genel kavram
- Learned Positional Embedding → Bunun öğrenilebilir uygulamalarından biri
Modern modellerde farklı yöntemler
Günümüzde Transformer’larda yalnızca klasik sinüs-kosinüs yöntemi kullanılmaz. Farklı konumsal temsil yöntemleri geliştirilmiştir:
- Learned Positional Embeddings
- Relative Position Representations
- RoPE (Rotary Position Embedding)
- ALiBi (Attention with Linear Biases)
Özellikle RoPE, birçok modern LLM mimarisinde kullanılan önemli yaklaşımlardan biridir. Burada konum bilgisi basitçe token embeddingine eklenmek yerine Query ve Key temsillerine konuma bağlı dönüşümler uygulanarak attention hesabına dahil edilir. Bu nedenle modern modeller açısından her zaman:
formülünün birebir kullanıldığını düşünmek doğru değildir. Bu, özellikle klasik Transformer’ı açıklamak için uygun bir basitleştirmedir.
Neden önemlidir?
Positional Encoding sayesinde model:
Token kimliği + Token sırası + Göreli konum ilişkileri → Bağlamsal anlam
oluşturabilir. Bu yalnızca metin için geçerli değildir. Vision Transformer gibi sistemlerde de görüntü parçalarının (patch) görüntünün hangi konumunda bulunduğunu temsil etmek gerekir.
Kısaca: Positional Encoding, Transformer’a “Bu token yalnızca nedir değil, dizinin neresindedir?” bilgisini sağlayarak sıra ve konum ilişkilerinin modellenmesini mümkün kılan mekanizmadır. En kısa formuyla:
Token Embedding = Ne?
Positional Encoding = Nerede?
Birlikte = Bağlam içinde anlam.
📚 Kaynakça ve Bu Maddeye Atıf
APA Formatı: YZ Hocası. (2026). Positional Encoding. YZ Hocası Ansiklopedisi. Erişim adresi: https://yzhocasi.com/positional-encoding/
BibTeX: @misc{yzhocasi_2553, title={Positional Encoding}, url={https://yzhocasi.com/positional-encoding/}, journal={YZ Hocası Ansiklopedisi}, year={2026}}