要点まとめ・第5章 ディープラーニングの要素技術
Attention(シラバス 技術23)
キーワード10語 練習問題11問 最終確認日 2026年10月30日
作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未
1行の定義と◯×チェックは用語『Attention』の解説にあります。
全11問・解いた記録はまだありません
学習目標
入力のどこに注目するかを重みとして計算するAttentionの仕組みと役割を理解し、RNNを使ったSeq2Seqの弱点をどう補うか、Attentionを中心に組み立てたTransformerの構成、Self-AttentionとSource-Target Attentionの違いを説明できるようにします。
要点
Seq2Seqと固定長の壁
Seq2Seqは、エンコーダが入力系列を読み込み、デコーダが別の系列を出力するモデルで、機械翻訳が代表的な用途です。初期のSeq2SeqはRNNで作られ、入力文全体を1つの固定長のベクトルにまとめてデコーダへ渡していました。そのため、入力が長いと情報が収まりきらず、精度が落ちました。
Attentionの考え方
Attentionは、出力を作るたびに、入力のどの部分に注目するかを重みとして計算する仕組みです。デコーダは各時刻で、エンコーダの全時刻の状態に重みを付けて足し合わせ、必要な情報を取り出します。翻訳では、いま訳している語に対応する原文の語に大きな重みが付きます。
クエリ・キー・バリュー
Attentionの計算は、辞書を引く操作にたとえられます。
- クエリ:探したい内容を表すベクトルです。
- キー:各要素の見出しにあたり、クエリと照らし合わせます。
- バリュー:各要素から実際に取り出す中身です。
クエリとキーの内積などで類似度を求め、ソフトマックス関数で合計1の重みに変えます。その重みでバリューを足し合わせたものが出力です。Transformerでは softmax(Q・K^T / √d_k)・V のように、内積をキーの次元数の平方根で割ってから重みにします。
2種類のAttention
- Source-Target Attention:クエリを出力側(デコーダ)から、キーとバリューを入力側(エンコーダ)から作り、入力と出力の対応をとります。Encoder-Decoder Attentionとも呼ばれます。
- Self-Attention:クエリ・キー・バリューをすべて同じ系列から作ります。同じ文の語どうしの関係を、離れた位置でも直接とらえます。
Transformer
Transformerは、2017年の論文「Attention Is All You Need」で提案されました。RNNも畳み込みも使わず、Attentionを中心に組み立てたモデルです。エンコーダはSelf-Attentionと全結合層の組を重ねます。デコーダは、まだ生成していない後ろの語を見ないようにマスクしたSelf-Attentionと、Source-Target Attentionを使います。各位置を同時に計算できるため、1時刻ずつ処理するRNNより並列化しやすく、学習が速く進みます。
- Multi-Head Attention:クエリ・キー・バリューを異なる重みで複数組に変換し、並列にAttentionを計算して結合します。種類の異なる関係を同時にとらえられます。
- 位置エンコーディング:Self-Attentionだけでは語の並び順を区別できません。そこで、位置ごとに異なるベクトルを語の埋め込みに足します。元の論文では周期の違う正弦波と余弦波を使っています。
現在の大規模言語モデルの多くも、Transformerを土台にしています。
つまずきやすい点
- Self-Attentionはクエリ・キー・バリューをすべて同じ系列から作り、Source-Target Attentionはクエリをデコーダ側、キーとバリューをエンコーダ側から作る点
- 重みはクエリとキーの類似度から計算し、その重みで足し合わせる対象はバリューである点
- Self-Attentionだけでは語順を区別できないため、Transformerは位置エンコーディングで位置の情報を加えている点
- TransformerはRNNを使わないため各位置を並列に計算できるが、Attentionの計算量は系列の長さの2乗に比例して増える点
シラバスのキーワード
シラバス第1.4版に載っている語をすべて並べています。色のついた語は用語集で解説しています。「2問」などの数字は、その語を扱う練習問題の数です。
- Attention 練習問題7問
- Multi-Head Attention 練習問題3問
- Self-Attention 練習問題6問
- Seq2Seq 練習問題3問
- Source-Target Attention 練習問題3問
- Transformer 練習問題8問
- 位置エンコーディング 練習問題2問
- キー 練習問題6問
- クエリ 練習問題6問
- バリュー 練習問題4問
練習問題
- #0058 Seq2Seqの固定長ベクトルの限界 難易度 標準・組合せ 未回答 付箋
- #0059 Attentionの出力の計算 難易度 標準・単一選択 未回答 付箋
- #0060 Transformer内の注意機構 難易度 応用・単一選択 未回答 付箋
- #0193 位置エンコーディングの必要性 難易度 応用・単一選択 未回答 付箋
- #0194 内積をスケーリングする理由 難易度 標準・穴埋め 未回答 付箋
- #0195 Self-Attentionの計算量 難易度 標準・単一選択 未回答 付箋
- #0196 Multi-Headのヘッドの分け方 難易度 標準・単一選択 未回答 付箋
- #0387 スケーリング後のスコアと重み 難易度 応用・単一選択 未回答 付箋
- #0388 注意の重みのヒートマップ 難易度 基礎・単一選択 未回答 付箋
- #0389 クエリ・キー・バリューの作り方 難易度 基礎・単一選択 未回答 付箋
- #0390 推論時の生成手順の比較 難易度 標準・単一選択 未回答 付箋
復習の時期が来た問題と、まだ解いていない問題から順に出題します。
混同しやすい用語
この項目を読み終えたら
読んだ項目にチェックをつけると、学習ガイドの目次に記録されます。
前後の項目
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目23 Attention)
- Ilya Sutskever, Oriol Vinyals, Quoc V. Le, Sequence to Sequence Learning with Neural Networks (2014)
- Dzmitry Bahdanau, Kyunghyun Cho, Yoshua Bengio, Neural Machine Translation by Jointly Learning to Align and Translate (2014)
- Minh-Thang Luong, Hieu Pham, Christopher D. Manning, Effective Approaches to Attention-based Neural Machine Translation (2015)
- Ashish Vaswani et al., Attention Is All You Need (2017)