Self-Attentionとは
Self-Attentionとは、入力系列自身の内部で単語同士の関係性を計算し、文脈を考慮した表現を生成する仕組みです。長距離依存を効率的に学習でき、並列計算が可能な点が大きな利点です。
この用語はG検定シラバスの「23. Attention」に含まれます。 章全体の用語は用語解説④(全60語)にまとまっています。
一言でいうと
同じ系列の中で「どの語がどの語と関係が深いか」を計算する仕組みです。
自分自身に対するAttention
通常のAttentionが入力側と出力側という異なる系列の間で計算するのに対し、Self-Attentionは同じ系列の中で計算します。
Query・Key・Valueがすべて同じ系列から作られる、というのが「Self」の意味です。
2つの大きな利点
- 長距離依存に強い:各単語が系列内のすべての単語と直接結びつくため、距離が離れていても1ステップで参照できる。RNNのように何段も遡る必要がない
- 並列計算ができる:RNNのような逐次処理が不要なので、系列全体を同時に処理できる。学習が大幅に速くなる
この2点がTransformerの成功を支えました。
計算量の弱点
すべての単語の組み合わせについて関連度を計算するため、系列が長くなると計算量が急増します。長さが2倍になれば計算量は約4倍です。
そのため扱える文章の長さには限界があり、これを緩和する研究が現在も続いています。「並列化できるので万能」というわけではありません。
混同しやすい用語との違い
| 用語 | ポイント |
|---|---|
| Self-Attention | 同じ系列の中で計算する |
| Source-Target Attention | 入力側と出力側という異なる系列の間で計算する |
🎯 G検定での押さえどころ
- 同じ系列の中で関係を計算する
- 長距離依存を1ステップで扱える
- 並列計算が可能(RNNとの決定的な違い)
⚠️ よくある誤りの選択肢
- 「Self-Attentionは逐次的にしか計算できない」→ 誤り。並列計算が可能です
- 「Self-Attentionは異なる2つの系列の間で計算する」→ 誤り。それはSource-Target Attentionです
📘 もっと深く学ぶ
- 数式レベルまで踏み込んだ解説 → 医療AIナビ「Transformer」(E資格向け)
- 手を動かして確かめる → Attention可視化シミュレータ
関連する用語
ご利用にあたって 本ページの内容は、JDLAが公開しているG検定シラバス2024や公式テキストなど、一般に公開されている情報をもとに独自に整理・解説したものです。実際の試験の出題内容を示すものではなく、また合格を保証するものでもありません。制度・法令・試験要項は変更されることがあるため、最新の情報は必ずJDLA公式サイトでご確認ください。