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 | 複数の「注目の視点」を並列に計算 |
LLMやGPTも、内部ではSelf-Attentionを積み重ねて文脈を捉えます。学習の更新は誤差逆伝播法・勾配降下法の話で、Attentionとは別レイヤーです。
よくある誤解
| 誤解 | 実際 |
|---|---|
| APIの「attention」料金項目 | 課金用語ではない(TF-0110) |
| 人間が手動で注目箇所を指定 | 学習により重みが自動計算される |
| Transformer=Attentionだけ | FFN・位置エンコーディング等も含む(Transformer) |
| RNNの代替ではない | 系列モデルの別アプローチ。長距離依存を扱いやすい |
よくある質問
AttentionとTransformerは同じ?
Attentionは仕組み、Transformerはそれを中核にしたアーキテクチャです。Attention単体がTransformer全体ではありません。
画像にも使われる?
はい。パッチ列にSelf-Attentionを適用するViTなどがあります。テキスト画像生成とも関連します。
トークン数とAttentionの計算量は?
系列長が長いほど計算・メモリ負荷が増えやすいのが実務上の論点です。試験では深掘り少なめです。