Attention(アテンション機構/注意機構)は、入力の中でどの部分を重視するかに重みを付けて扱う仕組みです。本記事はTransformer全体のブロック図ではなく、「注目の重み付け」という直感——Query・Key・Valueのたとえと試験の誤答パターン——に焦点を当てます。
試験で問われる見方
○:重要な入力部分に大きな重みを与えられる(G-295)。機械翻訳で入力のどの単語を参照するか表すのに使われる。Transformerの重要な構成要素。
×:Attentionは利用料金の課金方式(TF-0110)。×:畳み込みのパディング値を必ず1にする固定ルール(G-295のD)。
Attentionとは
長い文章や系列データでは、すべての語を均等に扱うより、文脈上重要な語に目を向けるほうが精度が上がります。Attentionは、その「目を向ける強さ」を数値の重みとして学習・計算する仕組みです。
例:「彼はりんごを食べ、それを片付けた」——「それ」が何を指すかを判断するとき、近い語だけでなく離れた「りんご」にも注目できるのが利点です(G-295の文脈)。
Query・Key・Valueのたとえ
試験では式の暗記より、役割のイメージで十分なことが多いです。
| 記号 | たとえ | 役割 |
|---|---|---|
| Query(Q) | 検索キーワード | 「今、何を知りたいか」 |
| Key(K) | 索引・ラベル | 各位置が「何についての情報か」 |
| Value(V) | 本文・中身 | 実際に取り出す情報 |
QとKの類似度から注意の重みを求め、その重みでVを足し合わせます。重みの大きい位置ほど、出力への影響が強くなります。
Self-Attentionと派生
| 種類 | 何を見るか |
|---|---|
| Attention(一般) | 別系列(例:翻訳の入力と出力)の対応 |
| Self-Attention | 同じ系列内の語同士の関係(Transformerの中心) |
| Multi-Head Attention | 複数の「注目の視点」を並列に計算 |
| CBAM | CNN特徴マップへのチャネル・空間注意(系列Attentionとは別) |
LLMやGPTも、内部ではSelf-Attentionを積み重ねて文脈を捉えます。学習の更新は誤差逆伝播法・勾配降下法の話で、Attentionとは別レイヤーです。
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| Attention=API課金方式 | 注意機構(TF-0110は×) |
| パディング値を必ず1にする | Attentionの説明ではない(G-295) |
| Transformer=Attentionだけ | アーキテクチャの構成要素の一つ |
| 手動で注目箇所を指定 | 重みは学習・計算で決まる |
よくある質問
AttentionとTransformerは同じ?
Attentionは仕組み、Transformerはそれを中核にしたアーキテクチャです。Attention単体がTransformer全体ではありません。
画像にも使われる?
はい。パッチ列にSelf-Attentionを適用するViTなどがあります。テキスト画像生成とも関連します。
トークン数とAttentionの計算量は?
系列長が長いほど計算・メモリ負荷が増えやすいのが実務上の論点です。試験では深掘り少なめです。