完全解析Tranformer轉移力機制 未完待續,寫作中可能會有大改版,依然和之前一樣看完就懂。Attention Is All You Need?arxiv.org Scaled Dot-Product Attention 文章中對於Scaled Dot-Product Attention定義如下: 假設有: , , ,則: 如何理解Scaled Dot-Product Attention?其中的Q,K,V是什麼?不妨回憶一下之前文章中提到的LuongAttention的實現方式,代表Encoder狀態,代表Decoder狀態。 LuongAttention 首先,計算Decoder的 時刻隱藏層狀態 對Encoder每一個隱藏層狀態 權重 數值: 其次,利用權重 計算所有隱藏層狀態 加權之和 ,即生成新的大小為 的Context狀態向量,即與 對應的注意力向量: 接下來對上面的公式稍作變換,對LuongAttention定義Query,Keys,Values: Decoder狀態 Query(Q): Encoder狀態 Keys(K):Values(V): 由於 ,顯然 是一一對應的。對於LuongAttention中的注意力向量 可以寫成: 如果這裡的 採用Dot方式計算:則寫成矩陣形式(非嚴格數學推理): 看到這裡就很清楚了,所謂的「Scaled Dot-Product Attention」並不是什麼新東西,其本質就是一個注意力機制,將序列 編碼成了一個新的 序列。這種注意力的定義並不新鮮,但由於 Google 的影響力,可以認為是正式地提出了這個定義,並將其視為一個層看待。 Multi-Head Attention Multi-Head Attention 其中 , , , 。一起看一個例子 參考文獻The Illustrated Transformer?jalammar.github.ioThe Annotated Transformer?nlp.seas.harvard.edu 推薦閱讀: 相關文章 {{#data}} {{title}} {{/data}}