Menerapkan multi-head attention
Sebelum Anda terjun dan mulai membangun kelas MultiHeadAttention sendiri, Anda akan mencobanya terlebih dahulu untuk melihat bagaimana kelas ini mentransformasikan matriks query, key, dan value. Ingat bahwa matriks-matriks ini dihasilkan dengan memproyeksikan embedding masukan menggunakan transformasi linear dengan bobot yang dipelajari.
Matriks query, key, dan value telah dibuat untuk Anda, dan MultiHeadAttention juga telah didefinisikan untuk Anda.
Latihan ini adalah bagian dari kursus
Model Transformer dengan PyTorch
Petunjuk latihan
- Definisikan parameter attention untuk delapan head attention dan embedding masukan dengan dimensi
512. - Buat instans dari kelas
MultiHeadAttentionmenggunakan parameter yang telah didefinisikan. - Lewatkan matriks
query,key, danvaluemelalui mekanismemultihead_attn.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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)