1.まえがき
- こちらは以下のMulti-Head Attentionを解説するための記事です。
Go to list of users who liked
Share on X(Twitter)
Share on Facebook
Multi-Head Attentionを解説するための記事です。
Multi-Head AttentionはTransformerの言葉を理解するのに重要な機構です。TokenizerでのToken idにLinearを通して各トークン毎の第一段階としての表現を行います。Positional Embeddingを使う事で、言葉同士の距離を使えます。Multi-Head Attention複数のアテンションを作成します。Q, K, VのLinearにそれぞれ同じ入力を通します。Qこれは関連する表現の質問, Kこれは関連する表現の回答, Vこれは関連する表現の出力です。Qを一つ選択してKには他のトークンからの出力を使います、ここにMatmulを行い近似度を測ります、ScaleとMaskをしてSoftmaxを行い、使ったKの所にあるVと選択したQと一緒にMatmulを、行います。Q毎に他のKとVのMatmulを行い近似度が高い所の表現を入れることで、複数の層を通して少しずつ他のトークンとの繋がりから言葉の理解をしていきます。Masked Multi-Head Attentionと言うのもあり、これは選択したQよりも後を見ないようにして、前だけを見るようにします、次の言葉を予測するように学習させるのと、出せるようにします。Add & Normで入力と出力を加算します。Feed-Forward NetworkとAdd & Normを行い次の層に続きます。LinearとSoftmaxに通して様々なToken idの確率を出させます。Linearを通して表現を得て、Positional Embeddingを使う事で、QとKのMatmulをする時に文章の距離が近ければ、近似値が高くなるようになります。AttentionにあるQKVを入れていく事で、トークンの繋がりや言葉の意味を理解します。Q K Vは何度も行うと処理が大変なので、キャッシュに、出力を残す事で長くなっても直ぐに次の文字を生成する事が可能になっております。Masked Multi-Head AttentionはLLMの生成に役立っています。Register as a new user and use Qiita more conveniently
Go to list of users who liked