Implementace multi-head attention
Než začneš vytvářet vlastní třídu MultiHeadAttention, vyzkoušíš si práci s hotovou třídou a uvidíš, jak transformuje matice query, key a value. Připomeň si, že tyto matice vznikají promítnutím vstupních embeddingů pomocí lineárních transformací s naučenými váhami.
Matice query, key a value jsou už připravené a třída MultiHeadAttention je pro tebe předem definovaná.
Toto cvičení je součástí kurzu
Transformer Models with PyTorch
Pokyny k cvičení
- Definuj parametry attention mechanismu pro osm attention hlaviček a vstupní embeddingy s dimenzionalitou
512. - Vytvoř instanci třídy
MultiHeadAttentionpomocí definovaných parametrů. - Předej matice
query,keyavaluemechanismemmultihead_attn.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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)