Multi-Head Attention (Çok Başlı Dikkat Mekanizması)

Multi-Head Attention, transformer modellerinde giriş dizisine aynı anda birden fazla bakış açısından dikkat ederek farklı ilişkileri paralel olarak yakalayan mekanizmadır.

Çok başlı dikkat mekanizması (Multi-Head Attention), transformer modellerinin giriş dizisine aynı anda birden fazla farklı bakış açısından odaklanmasını sağlayan temel bir sinir ağı bileşenidir. 2017 yılında Google'ın "Attention is All You Need" makalesiyle tanıtılan bu mekanizma, modern büyük dil modellerinin (LLM) temel yapı taşını oluşturur. Klasik tek başlı dikkat mekanizması, bir cümledeki her token için yalnızca tek bir ilişki türünü yakalayabilirken, çok başlı dikkat h adet bağımsız "dikkat kafasını" paralel olarak çalıştırır. Her kafa, giriş gömme vektörünü üç farklı matrise dönüştürür: Sorgu (Q), Anahtar (K) ve Değer (V). Sorgu vektörü "ne arıyorum?" sorusunu, Anahtar vektörü "ne sunuyorum?" sorusunu, Değer vektörü ise "ilgili bilgi nedir?" sorusunu temsil eder. Her kafanın dikkat skoru, ölçeklenmiş nokta çarpımı formülüyle hesaplanır: softmax(QKᵀ / √d_k) × V. Buradaki √d_k ölçekleme faktörü, büyük iç çarpımların softmax'ı aşırı keskinleştirip gradyanların sıfıra yaklaşmasını önler. Her kafa, toplam model boyutunun (d_model) h'e bölünmesiyle elde edilen daha küçük bir alt uzayda çalışır; böylece toplam hesaplama maliyeti tek başlı dikkatle karşılaştırılabilir düzeyde kalır. Farklı kafalar farklı ilişki türlerini öğrenir: bir kafa sözdizimsel yapıyı, bir diğeri anlamsal benzerlikleri, bir üçüncüsü uzun menzilli bağımlılıkları yakalayabilir. Tüm kafalara ait çıktılar birleştirilerek tek bir doğrusal dönüşümden geçirilir ve modelin zengin, çok boyutlu bir bağlam temsili oluşturması sağlanır. Gerçek dünya modellerinde kafa sayısı büyük farklılıklar gösterir: BERT-Base her katmanda 12, GPT-3 ise 96 kafa kullanır. Araştırmalar, bazı kafaların eğitim sırasında belirli dilsel işlevlere uzmanlaştığını göstermektedir. Vision Transformer (ViT) gibi görsel modeller de aynı mekanizmayı görüntü yamalarına uygulayarak mekânsal ilişkileri öğrenir. GPT, LLaMA, Mistral, Gemma ve Claude gibi tüm modern modeller bu temel mekanizmaya dayanır.

Tek Başlı Dikkatten Farkı

Klasik dikkat mekanizması, her token için tek bir Q-K-V hesaplaması yapar ve yalnızca tek bir tür ilişkiyi yakalayabilir. Örneğin, 'Kedi fareyi kovaladı' cümlesinde özne-nesne ilişkisini öğrenen bir dikkat kafası, aynı anda fiil-zaman ilişkisini modelleyemez. Çok başlı dikkat, bu sınırlamayı h adet bağımsız kafa çalıştırarak aşar. Her kafa, girişin farklı bir alt uzayına odaklanır ve sonuçta modelin cümleyi hem sözdizimsel hem anlamsal hem bağlamsal açıdan aynı anda analiz etmesi mümkün olur. Tek başlı dikkat bir el feneriyle aydınlatmaya benzerse, çok başlı dikkat farklı açılardan tutulan birden fazla el feneriyle aydınlatmak gibidir.

Q, K, V Matrisleri ve Hesaplama Formülü

Her dikkat kafası, giriş gömme vektörlerini üç öğrenilmiş ağırlık matrisi aracılığıyla dönüştürür: Sorgu (Q), Anahtar (K) ve Değer (V). Sorgu 'bu token ne arıyor?', Anahtar 'bu token ne sunuyor?', Değer ise 'seçilirse hangi bilgiyi aktarır?' sorularını temsil eder. Dikkat puanı şu formülle hesaplanır: softmax(QKᵀ / √d_k) × V. Burada d_k her kafanın boyutudur (toplam d_model boyutunun h'e bölümü). √d_k ile bölme, büyük iç çarpımların softmax'ı aşırı keskinleştirip gradyanların sıfıra yaklaşmasını engeller. Son adımda h kafanın çıktıları birleştirilir ve öğrenilmiş bir WO projeksiyon matrisiyle son çıktı boyutuna indirgenir. Tüm kafalar GPU'da paralel çalıştığından toplam hesaplama maliyeti tek kafalı dikkatle büyük ölçüde eşdeğerdir.

Her Kafa Ne Öğrenir?

  • check_circle Sözdizimsel ilişkiler: Özne-fiil uyumu, sıfat-isim bağı ve bağlaç bağlantıları gibi dilbilgisel yapıları izler.
  • check_circle Anlamsal benzerlik: Eş anlamlı veya yakın anlamlı kelimeler, metafor ve deyim kullanımları arasındaki bağları yakalar.
  • check_circle Uzun menzilli bağımlılıklar: Yüzlerce token ötedeki zamir referansları veya paragraf düzeyindeki konu tutarlılığını takip eder.
  • check_circle Konumsal örüntüler: Kelimelerin cümle içindeki göreli konumuna dayalı kalıpları öğrenir; başlangıç ve son tokenlere odaklanan kafalar gözlemlenmiştir.
  • check_circle Kopyalama deseni (Induction Head): Önceki bağlamda görülen sıralamayı tanıyıp yineleme yapmasını sağlayan özelleşmiş kafalar; büyük dil modellerinin in-context learning yeteneğinin temelini oluşturur.

Gerçek Modellerde Kafa Sayıları

  • check_circle BERT-Base: Her katmanda 12 kafa, toplam 12 katman; 110 milyon parametre. Metin sınıflandırma ve soru-cevap görevlerinde temel referans model.
  • check_circle GPT-3: Her katmanda 96 kafa, 96 katman; 175 milyar parametre. Kafa sayısını artırmanın model yeteneğini nasıl ölçeklendirdiğini gösteren dönüm noktası.
  • check_circle Vision Transformer (ViT-Base): Her katmanda 12 kafa; 16×16 piksel yamaları üzerinde mekânsal dikkat öğrenerek görüntü sınıflandırması yapar.
  • check_circle LLaMA 3 / Mistral 7B: 32 dikkat kafası; Group Query Attention (GQA) varyantıyla bellek verimliliği optimize edilmiştir.
  • check_circle Mixtral 8×7B (SMoE): Her katmanda 32 kafa; seyrek uzman karışımı (SMoE) mimarisiyle düşük aktivasyon maliyetiyle geniş kapasite sağlar.

Uygulama Alanları

  • check_circle Büyük Dil Modelleri (LLM): GPT-4, Claude, LLaMA ve Mistral gibi modellerin her katmanında temel yapıdır; metin anlama ve üretimde merkezi bileşen.
  • check_circle Görüntü ve Video Analizi: Vision Transformer mimarisinde görüntü yamalarına dikkat uygulanarak nesne tespiti ve görüntü sınıflandırması gerçekleştirilir.
  • check_circle Makine Çevirisi: Her kafa kaynak ve hedef dil arasındaki farklı kelime hizalama kalıplarını öğrenir; bu da çeviri tutarlılığını artırır.
  • check_circle Konuşma Tanıma: Akustik, fonetik ve dilbilgisel özellikleri farklı kafalarla eş zamanlı modelleyen ses tabanlı transformer'lar kullanır.
  • check_circle Çok Modlu Modeller: CLIP ve LLaVA gibi modellerde görsel ve metinsel temsillerin hizalanmasında çapraz dikkat (cross-attention) formunda uygulanır.

Sık Sorulan Sorular

  • check_circle Multi-head attention ile single-head attention arasındaki temel fark nedir?: Single-head attention, girişe tek bir bakış açısından odaklanır ve yalnızca bir tür ilişkiyi modelleyebilir. Multi-head attention ise h adet bağımsız kafa çalıştırarak sözdizim, anlam ve bağlam gibi farklı ilişkileri aynı anda öğrenir; bu daha zengin ve daha kararlı model davranışı sağlar.
  • check_circle Kaç dikkat kafası kullanmak en iyisidir?: Model boyutuna ve göreve göre değişir. Küçük modeller için 8-12 kafa genellikle yeterlidir; büyük LLM'lerde 32-96 kafa tercih edilir. Fazla kafa eklemenin azalan getiri sağladığı ve bazı kafaların budanabileceği (pruning) araştırmalarla gösterilmiştir.
  • check_circle Attention head ile self-attention arasındaki ilişki nedir?: Self-attention, her tokenin dizideki diğer tüm tokenlere ne kadar dikkat edeceğini hesaplayan genel mekanizmadır. Attention head ise bu hesaplamanın tek bir bağımsız kopyasıdır. Multi-head attention, h adet self-attention kafasını paralel çalıştırır ve sonuçları birleştirir.
  • check_circle Multi-head attention neden paralel çalıştırılır?: Her kafa yalnızca bağımsız matris çarpımları yaptığı için GPU/TPU mimarileri bu hesaplamaları eş zamanlı yürütebilir. Bu sayede h kafa kullanmak, tek büyük bir kafa kullanmaktan hesaplama maliyeti açısından farklı değildir; ancak temsil kapasitesi çok daha zengindir.
  • check_circle Attention is All You Need makalesi ne zaman yayımlandı ve neden önemlidir?: Vaswani ve ekibinin 2017 tarihli makalesi, yinelemeli RNN/LSTM mimarilerine gerek kalmadan yalnızca dikkat mekanizmasıyla tüm sıralı ilişkilerin paralel öğrenilebildiğini kanıtladı. GPT, BERT ve modern LLM'lerin tamamının zeminini hazırlayan dönüm noktası bir çalışmadır.