Transformer 引擎
多頭注意力(multi-head attention)
單一個注意力模式一次只能強調一種關係——但語言一次需要很多種。多頭注意力的解法,是讓好幾個注意力並排同時運作,各自擁有自己的查詢、鍵與值。一個頭可能追蹤文法主詞,另一個把代名詞連到它指涉的對象,再一個盯著鄰近的標點,全在同一層、全在同一時間。
模型把每個詞元的表示切成幾個較低維度的片段,每個頭一片。每個頭各自獨立算出自己的分數、softmax 權重與值的混合,用自己的鏡頭看這段序列。各頭的輸出接著被串接回去,再通過最後一個線性投影,把它們混成下一層可以使用的單一結果。
用切分而不是複製,讓總成本和一個大頭差不多,卻換來大得多的表達力。各頭之間並不明確協調;它們之所以學到互補的工作,只是因為訓練訊號獎勵覆蓋不同的關係。現代的變體會讓多個頭共用鍵與值,以縮小推論時的快取。
\text{MHA}(x)=\left[\text{head}_1,\dots,\text{head}_h\right]W^O
每個頭各自獨立注意,輸出再串接並做投影。
又称
另见