Multi-Head Attention(マルチヘッド注意)MHA
Multi-Head Attention は、Self-Attention を複数の「ヘッド」に分割して並列計算し結果を結合する仕組みです。各ヘッドが異なる文法・意味の関係を学習することで、表現力を高めます。
詳細解説
Multi-Head Attention(マルチヘッド注意、MHA)は、単一の Self-Attention を h 個(典型的には8〜128個)の小さな「ヘッド」に分割し、それぞれが独立した Query・Key・Value 行列を学習して並列に Attention を計算したのち、結果を連結して再投影する仕組みです。各ヘッドは d_model / h 次元の部分空間で動作するため、計算量は単一ヘッドと同等のままで、文法的依存関係・意味的類似性・位置パターンなど異なる種類の関係性を分担して捉えられるとされています。Vaswani らの原論文ではヘッド数 h=8、d_model=512 で d_k=d_v=64 という設定が採られました。LLM のスケールアップに伴い、すべてのヘッドが独立した K・V を持つ素朴な MHA は KV キャッシュメモリを浪費するため、Multi-Query Attention(MQA)や Grouped Query Attention(GQA)で K・V を共有する派生形が Llama 2/3、Mistral、Gemini などで標準化しています。ヘッド数の最適値はモデルサイズと下流タスクに依存し、過剰なヘッドは「不要なヘッド」として刈り込み(head pruning)対象になることもあります。
実装例 / 使い方
- 01GPT-3 175B は1層あたり96ヘッドを持ち多様な言語パターンを捉えます
- 02推論時は MHA を GQA(Grouped Query Attention)に置き換えて KV メモリを節約します
- 03ヘッドごとにアテンションマップを可視化すると文法構造が浮き彫りになります
関連する用語
Self-Attention(自己注意機構)
SASelf-Attention は、入力系列の各トークンが同じ系列内の他のトークンとの関連度を計算する仕組みです。Query・Key・Value の3行列に射影し...
Transformer
Transformer (トランスフォーマー) は 2017 年 Google 論文で発表された深層学習アーキテクチャで、Self-Attention 機構を核...
Grouped Query Attention(GQA)
GQAGQA は、複数の Query ヘッドが Key・Value ヘッドのグループを共有する Attention 変種です。MHA の品質と MQA のメモリ効率の...
Multi-Query Attention(MQA)
MQAMQA は、すべての Query ヘッドが単一の Key・Value ヘッドを共有する Attention 変種です。KV キャッシュを劇的に削減して推論を高速...
KV Cache(KVキャッシュ)
KV CacheKV Cache は、自己回帰生成中に過去トークンの Key・Value を保存して再利用する仕組みです。1トークン生成あたりの計算量が O(N^2) から O...
Multi-Head Attention(マルチヘッド注意)を、実際に活用する
用語の意味は分かった。次は実装。EXBANK の無料診断で、貴社で具体的にどう活用できるかをご提案します。
営業時間 平日10-18時 / 通常24時間以内に返信
