الانتباه متعدد الرؤوس

term_id: multi_head_attention

Category: basic_concepts

Definition

يوسع الانتباه متعدد الرؤوس آلية الانتباه القياسية عن طريق تشغيلها عدة مرات بالتوازي مع إسقاطات خطية مختلفة تم تعلمها. يتيح هذا للنموذج الاهتمام معاً بمعلومات من زوايا متعددة.

Summary

آلية في نماذج المحولات تسمح للنموذج بالاهتمام بمعلومات من فضاءات تمثيلية مختلفة في وقت واحد.

Key Concepts

  • الانتباه الذاتي
  • الإسقاطات الخطية
  • الدمج

Use Cases

  • معالجة اللغات الطبيعية (NLP)
  • الترجمة الآلية
  • تصنيف الصور باستخدام محولات الرؤية

Code Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
import torch.nn as nn

class MultiHeadAttention(nn.Module):
    def __init__(self, d_model, num_heads):
        super().__init__()
        self.num_heads = num_heads
        self.d_k = d_model // num_heads
        self.W_q = nn.Linear(d_model, d_model)
        self.W_k = nn.Linear(d_model, d_model)
        self.W_v = nn.Linear(d_model, d_model)
        self.W_o = nn.Linear(d_model, d_model)

    def forward(self, x):
        # Simplified forward pass logic
        pass