開始使用免費開始

實作 multi-head attention

在你動手建立自己的 MultiHeadAttention 類別之前,先來試用這個類別,看看它如何轉換 query、key、value 矩陣。回想一下,這些矩陣是透過對輸入嵌入向量(embedding)進行帶有學習權重的線性轉換投影而產生的。

querykeyvalue 矩陣已經為你建立好,MultiHeadAttention 也已經定義完成。

本練習屬於課程

Transformer Models with PyTorch

檢視課程

練習說明

  • 定義 8 個注意力頭與維度為 512 的輸入嵌入向量(embedding)之注意力參數。
  • 使用上述參數建立 MultiHeadAttention 類別的實例。
  • querykeyvalue 矩陣傳入 multihead_attn 機制。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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)
編輯並執行程式碼