תשומת ראשים מרובה

term_id: multi_head_attention

Category: basic_concepts

Definition

תשומת ראשים מרובה מרחיבה את מנגנון התשומה הסטנדרטי על ידי הרצאה שלו מספר פעמים במקביל עם הטלות ליניאריות נלמדות שונות. הדבר מאפשר למודל להתמקד יחדיו במידע ממקורות שונים.

Summary

מנגנון במודלי טרנספורמר המאפשר למודל להתמקד במידע ממרחבי ייצוג שונים בו-זמנית.

Key Concepts

  • תשומה עצמית
  • הטלות ליניאריות
  • הדבקה (Concatenation)

Use Cases

  • עיבוד שפה טבעית (NLP)
  • תרגום מכונה
  • סיווג תמונות באמצעות Vision Transformers

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