Kayan Pencere Dikkati Nedir?
Kayan Pencere Dikkati (Sliding Window Attention), transformer mimarisinde her tokenın yalnızca belirli bir pencere boyutundaki komşu tokenlara dikkat ettiği verimlilik tekniğidir. Klasik tam dikkat O(n²) bellek ve hesaplama karmaşıklığına yol açarken SWA bunu O(n·w) düzeyine indirir. Her token, kendi konumunun w/2 soluna ve w/2 sağına dikkat eder; pencere dizi boyunca sabit boyutla kaydırılır ve hesaplama maliyeti sabit kalır.
Tam Dikkat ile Karşılaştırma
n uzunluğundaki bir dizide tam dikkat n² adet dikkat çifti hesaplar. 8.192 token için bu yaklaşık 67 milyon çift anlamına gelir; bellek tüketimi de buna paralel büyür. Kayan Pencere Dikkati'nde her token yalnızca 2w komşusuyla ilişkilendirilir; toplam hesaplama n·w ile orantılı kalır. Pratik pencere boyutu genellikle 512–4.096 token arasındadır. Bu sayede aynı GPU'da çok daha uzun diziler işlenebilir.
Temel Modeller ve Kullanım Biçimleri
- check_circle Mistral 7B: Dönüşümlü katman stratejisi uygular: bazı katmanlarda tam dikkat, bazılarında kayan pencere dikkati. Bu sayede hem uzak bağımlılıkları yönetir hem de hesaplama verimliliğini korur.
- check_circle Longformer: Yerel kayan pencere dikkatini, CLS tokeni gibi belge temsilcisi global dikkat tokenleriyle birleştirir. Uzun belge sınıflandırma ve soru-cevap görevlerinde BERT'ten belirgin biçimde verimlidir.
- check_circle BigBird: Yerel kayan pencere, global dikkat ve rastgele dikkat kombinasyonunu kullanır. Teorik olarak tam dikketin herhangi bir işlevini gerçekleştirebileceği kanıtlanmıştır (universal approximator).
Sınırlamalar ve Çözüm Stratejileri
Kayan Pencere Dikkati, uzak tokenlara doğrudan erişimi kısıtladığından bazı görevlerde — özellikle uzun menzilli bağımlılıklar gerektiren metinlerde — tam dikkate kıyasla dezavantaj yaratabilir. Bu sorunu gidermek için iki strateji yaygındır: (1) dönüşümlü katman tasarımı (bazı katmanlar tam dikkat uygular), (2) global dikkat tokenleri (CLS ya da görev odaklı özel tokenlar tüm diziyle ilişkilendirilir).
Uzun Bağlamlı LLM'lerdeki Rolü
GPT-4 Turbo'nun 128K, Claude'un 200K token desteği gibi örnekler, uzun bağlamlı çıkarımın giderek önem kazandığını göstermektedir. Flash Attention ve Grouped Query Attention (GQA) ile birlikte Kayan Pencere Dikkati, bu tür kapasitelerin altyapısal ön koşullarından biridir. Hukuk belgesi analizi, kod tabanı inceleme ve uzun bilimsel raporların özetlenmesi bu mekanizmanın doğrudan yararlı olduğu alanlardır.
Sık Sorulan Sorular
- check_circle Kayan Pencere Dikkati neden tam dikkate göre daha verimlidir?: Her tokenın yalnızca w komşusuyla ilişkilendirilmesi hesaplama karmaşıklığını O(n²)'den O(n·w)'ye düşürür; uzun dizilerde bu fark katlanarak artar.
- check_circle Bu yöntemle uzak tokenlara nasıl erişilir?: Dönüşümlü tam dikkat katmanları veya global dikkat tokenleri (CLS) aracılığıyla dolaylı erişim sağlanır. Longformer ve Mistral bu stratejileri kullanır.
- check_circle Pencere boyutu nasıl seçilir?: Görev ve GPU belleğine göre değişir. Tipik değerler 512–4.096 token arasındadır. Küçük pencere daha hızlı çıkarım sunarken uzak bağımlılıkları kaçırma riskini artırır.
- check_circle Flash Attention ile farkı nedir?: Flash Attention, tam dikkatin IO verimliliğini optimize eder (hesaplama değişmez, bellek erişim modeli değişir). Kayan Pencere Dikkati ise hesaplamanın kendisini kısıtlayarak karmaşıklığı azaltır. İkisi birbirini tamamlar ve birlikte kullanılabilir.