AI・機械学習

アテンション機構 あてんしょんきこう

セルフアテンションマルチヘッドアテンションTransformerクエリキーバリュー
アテンション機構について教えて

簡単に言うとこんな感じ!

「文章の中でどの単語がどの単語に注目すべきか」を自動で学習する仕組みだよ!「私は東京で生まれた彼女が好きだ」という文で「彼女」が「東京」じゃなく「生まれた」に関係すると理解する…みたいな、文の遠い位置にある単語同士の関係を掴む力がポイントなんだ!


アテンション機構とは

アテンション機構(Attention Mechanism) とは、テキストや画像などのデータを処理する際に、「どの部分に注目(Attention)すべきか」の重みを動的に学習する深層学習の仕組みです。2015年ごろから機械翻訳で使われ始め、2017年のTransformerで全面採用されて一般的になりました。

人間が長文を読む際に「重要な部分に目を止め、他は流し読みする」行動に似たメカニズムです。例えば「彼は昨日買った赤い車を売った」という文で「売った」の主語が「彼」だとわかるのは、離れた位置の単語間の関係を理解しているからです。アテンション機構はこの「どの単語が今処理している単語に関係するか」をスコアとして学習します。

セルフアテンション(Self-Attention) はTransformerの中核で、入力文章の全単語について「互いにどれだけ関連しているか」を計算します。マルチヘッドアテンション は複数のアテンション(ヘッド)を並列に走らせ、様々な観点から単語関係を捉える仕組みです。


アテンション機構の仕組み

セルフアテンションの計算フロー 入力ベクトル Query (Q) Key (K) Value (V) Q×Kᵀ (スコア計算) Softmax (重み正規化) 重み×V (出力計算) 出力 直感的な理解: Q(クエリ)=「私は今この単語について何を知りたいか」 K(キー) =「各単語が持つ索引情報」 V(バリュー)=「実際に取り出す情報の内容」

マルチヘッドアテンション

概念内容
ヘッド数並列に動かすアテンションの数(GPT-3は96ヘッド)
役割の分担あるヘッドは文法的関係、別のヘッドは意味的関係を捉える
統合各ヘッドの出力を結合して最終的な表現を生成

歴史と背景

  • 2014年 — Bahdanauらが機械翻訳でアテンションを提案。長文翻訳の精度が大幅向上
  • 2015年 — Luongらがアテンション機構を改良・汎化
  • 2016年グローバルアテンションローカルアテンションの使い分けが研究される
  • 2017年 — Google「Attention Is All You Need」でセルフアテンションのみのTransformerを発表
  • 2018年BERTがセルフアテンションで双方向文脈理解を実現。NLP性能が飛躍
  • 2021年〜 — 画像・音声にもアテンション機構が適用。マルチモーダルAIへ

アテンション機構の種類

種類説明主な用途
セルフアテンション同一シーケンス内の単語間の関係Transformerのエンコーダー
クロスアテンション入力と出力の異なるシーケンス間の関係機械翻訳・Transformerデコーダー
マスクドアテンション未来のトークンを見ないよう隠すGPTのデコーダー(自己回帰生成)
スパースアテンション全ペアでなく一部だけ計算(高速化)Longformer・超長文モデル

関連する規格・RFC

規格・RFC番号内容
学術論文ベースの技術のため公式規格なし

関連用語