目次
現代のLLMはすべてTransformerアーキテクチャを基盤としている。2017年に発表された論文「Attention is All You Need」は、その名の通り「アテンション(注意機構)だけで言語を処理できる」ことを示し、深層学習の歴史を変えた。
Self-Attentionの仕組みは、数式なしでも直感的に理解できる。
なぜアテンションが必要か——RNNの限界から
Transformer以前、自然言語処理の主流はRNN(Recurrent Neural Network)だった。RNNはテキストを左から右へ順番に処理し、各ステップで「これまでの文脈」を「隠れ状態」というベクトルに圧縮して次のステップに引き継ぐ。
この設計には根本的な問題があった。
順次処理のボトルネック:左から右へ順番に処理するため、並列化ができない。長い文章の処理は時間がかかる。
長距離依存の喪失:文章が長くなると、初期の情報が「隠れ状態」の圧縮を経て薄れていく。「最初に登場した主語が、文末の動詞に影響する」という長距離の依存関係を捉えにくい。
これらの問題を解決したのがSelf-Attentionだ。
Self-Attentionの直感的説明
Self-Attentionの核心は「各トークンが、他のすべてのトークンに対してどれだけ注目するべきかを計算する」仕組みだ。
「太郎は花子が好きだと彼女に伝えた」という文を例に考えよう。「彼女」が誰を指すかを判断するには、「花子」という名詞に注目する必要がある。Self-Attentionは、「彼女」というトークンが「花子」に高いアテンション重みを割り当てることで、この文脈的な関係を捉える。
具体的なプロセスは以下の通りだ。
各トークンに対して3種類の数値ベクトルが計算される。**Query(クエリ、Q)**は「私は何を探しているか」、**Key(キー、K)**は「私はこのような情報を持っている」、**Value(バリュー、V)**は「実際の情報内容」だ。
あるトークン(例:「彼女」)のQueryを、すべてのトークンのKeyと比較する。類似度の高いKey(例:「花子」のKey)を持つトークンに高いスコアが付く。このスコアをsoftmax関数で正規化して確率(アテンション重み)にし、各トークンのValueをその重みで加重平均する。
結果として「彼女」のトークンは、「花子」のValueを強く含んだ更新されたベクトルになる。これが「花子に注意を向けた」という処理だ。
Q/K/Vの行列の役割
なぜQuery・Key・Valueという3種類に分けるのか。
これは「検索」の比喩で理解できる。データベース検索を思い浮かべてほしい。あなたの検索語(Query)がある。データベースの各レコードにはインデックス(Key)と実際の内容(Value)がある。Queryとキーの照合によって関連レコードが選ばれ、そのValueが返される。
Self-Attentionは、各トークンが同時に「検索する側(Query)」と「検索される側(Key/Value)」の両方の役割を担う。このため「Self(自己)」Attentionと呼ばれる。
Q, K, Vの各ベクトルは、元のトークンベクトルに学習可能な重み行列を掛けて生成される。これらの重み行列が訓練によって最適化され、意味的に適切な「注意パターン」が学習される。
マルチヘッドアテンション
実際のTransformerでは、Self-Attentionは「マルチヘッド」形式で実行される。
1つのアテンションヘッドは1種類の注意パターンしか捉えられない。しかし言語には複数の次元の依存関係がある。たとえば、構文的な依存関係(主語と動詞)、語義的な依存関係(代名詞と先行詞)、意味的な関連性など。
マルチヘッドアテンションは、異なる重み行列を持つ複数のアテンションヘッド(通常8〜32個)を並列で実行し、各ヘッドが異なる種類の関係性を学習する。それぞれのヘッドの出力を結合することで、複数の観点からの文脈情報を統合する。
RNNとの比較
Self-AttentionとRNNの最大の違いは「どのトークンが何を処理するか」の点だ。
RNNは順次処理を行うため、遠く離れたトークン間の依存関係を保持するには、その間のすべてのステップを経由する必要がある。情報が「電話ゲーム」のように劣化する。
Self-Attentionはすべてのトークン間の関係を直接計算する。どれだけ遠く離れたトークン同士でも、1ステップで直接注意を向けられる。これが長距離依存の捕捉を可能にし、LLMが長い文章の文脈を維持できる理由だ。
また、Self-Attentionはすべてのトークンを並列に処理できる(各トークンの計算は独立)。RNNの順次処理に対して、GPUの並列計算を最大限に活用できる。これがTransformerの訓練速度がRNNより大幅に速い理由でもある。
まとめ
Self-Attentionの本質は「各トークンが他のすべてのトークンに対して『どれだけ注目するか』を学習する仕組み」だ。
Query・Key・Valueという3役割の分離、マルチヘッドによる多角的な関係捕捉、直接的な全トークン間の関係計算——これらがRNNの限界を超えて、現代のLLMの基盤となるTransformerを成立させている。
「Attention is All You Need」という論文タイトルは、やや大げさに聞こえるかもしれないが、現在のAI技術の発展を見れば、その主張の正しさは明らかだ。
免責事項 — 掲載情報は執筆時点のものです。料金・機能は変更される場合があります。最新情報は各公式サイトをご確認ください。