Implémenter l’attention multi-têtes
Avant de vous lancer dans la création de votre propre classe MultiHeadAttention, vous allez tester son utilisation pour voir comment elle transforme les matrices query, key et value. Rappelez-vous que ces matrices sont générées en projetant les embeddings d’entrée via des transformations linéaires avec des poids appris.
Les matrices query, key et value ont déjà été créées pour vous, et MultiHeadAttention a été défini pour vous.
Cet exercice fait partie du cours
Modèles Transformer avec PyTorch
Instructions
- Définissez les paramètres d’attention pour huit têtes et des embeddings d’entrée de dimension
512. - Créez une instance de la classe
MultiHeadAttentionen utilisant les paramètres définis. - Faites passer les matrices
query,keyetvalueà travers le mécanismemultihead_attn.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Define attention parameters
d_model = ____
num_heads = ____
# Instantiate a MultiHeadAttention instance
multihead_attn = ____
# Pass the query, key, and value matrices through the mechanism
output = ____
print(output.shape)