05

注意のメカニズム:Attentionって?

2025年7月8日
AttentionアテンションLLM文脈理解注意機構

人間が文章を読む時、全ての単語に同じだけ注意を払うでしょうか?実は、私たちは重要な部分により多くの注意を向けています。LLMも同じように、Attention(アテンション) という仕組みを使って、文章の重要な部分に「注意」を向けています。この記事では、LLMがどのように文脈を理解し、適切な応答を生成するのか、人間の注意のメカニズムと比較しながら分かりやすく解説します。

人間の注意のメカニズム

はじめに、人間がどのように注意を向けているのかについて紹介します。

日常生活での注意

私たちは日常生活で、無意識に 重要な情報に注意を向けています。たとえば、騒がしいカフェで友人と話している時、周囲の雑音は聞こえているものの、友人の声により多くの注意を向けています。

たとえば

  • パーティー会場:多くの人が話している中でも、自分の名前が呼ばれると気づく
  • 運転中:様々な標識や看板がある中でも、信号機や危険な状況により注意を向ける
  • 読書中:全ての単語を同じように読むのではなく、重要な内容により注意を向ける

要するに、人間の脳は「何が重要で、何が重要でないか」を瞬時に判断し、注意を配分しているのです。

文章読解での注意

文章を読む時も、私たちは 文脈に応じて注意を向ける場所を変えています

たとえば: 「太郎は昨日、図書館で本を読んだ。その本はとても面白かった。」

この文章を読む時、「その本」が何を指しているかを理解するために、前の文の「本」に注意を向けます。これは、文章の意味を正しく理解するために不可欠な能力です。

質問応答での注意

質問に答える時も、私たちは 質問に関連する部分により多くの注意を向けます

たとえば: 文章:「太郎は昨日、図書館で歴史の本を読んだ。今日は数学の勉強をする予定だ。」 質問:「太郎は昨日何をしましたか?」

この場合、「昨日」「太郎」「図書館で本を読んだ」の部分により多くの注意を向け、「今日」の部分は重要度が低いと判断します。

LLMのAttentionメカニズム

次に、LLMがどのように人間の注意を模倣しているのかについて説明します。

Attentionの基本概念

Attention(アテンション) とは、LLMが文章の中で どの部分に注意を向けるべきかを自動的に判断する仕組み です。

たとえば、「太郎は学校に行った。彼は数学を勉強した。」という文章で、「彼」が誰を指しているかを理解するために、LLMは「太郎」により多くの注意を向けます。

注意の重み付け

LLMは、各単語(トークン)に対して 注意の重み を計算します。この重みは0から1の間の数値で、1に近いほど重要度が高いことを表します。

たとえば: 「太郎は昨日、図書館で本を読んだ。」

  • 「太郎」:0.8(主語として重要)
  • 「は」:0.1(助詞として重要度低)
  • 「昨日」:0.6(時間情報として重要)
  • 「図書館」:0.7(場所情報として重要)
  • 「で」:0.1(助詞として重要度低)
  • 「本」:0.9(目的語として重要)
  • 「を」:0.1(助詞として重要度低)
  • 「読んだ」:0.8(動詞として重要)

要するに、LLMは人間のように「何が重要で何が重要でないか」を数値で表現し、重要な部分により多くの注意を向けているのです。

文脈理解の仕組み

LLMは、文章全体の文脈を理解 するために、複数のトークン間の関係を同時に分析します。

たとえば: 「太郎は本を読んだ。その本は面白かった。花子もその本を読みたがった。」

この文章で「その本」が何を指しているかを理解するために、LLMは以下の処理を行います:

  1. 「その本」(現在の位置)から「本」(前の文)への注意を計算
  2. 「花子もその本」の「その本」からも同じ「本」への注意を計算
  3. 文章全体の一貫性を保つように注意を調整

このように、LLMは文章の流れを理解し、適切な文脈解釈を行っています。

Self-Attentionの仕組み

次に、現在のLLMで広く使われている Self-Attention について解説します。

Self-Attentionとは

Self-Attention とは、文章の各部分が、同じ文章内の他の部分とどのように関連しているかを分析する技術 です。

たとえば、「太郎は学校に行った。彼は数学を勉強した。」という文章で、「彼」が「太郎」を指していることを理解するのがSelf-Attentionの役割です。

具体的な計算過程

Self-Attentionは、以下の3つの要素を使って計算されます:

Query(クエリ):「何を探しているか」 Key(キー):「何を提供できるか」 Value(バリュー):「実際の内容」

たとえば: 「太郎は本を読んだ。その本は面白かった。」

「その本」の意味を理解する場合:

  • Query:「その本」が「何を探しているか」→「本」という情報を探している
  • Key:各単語が「何を提供できるか」→「本」は「本」という情報を提供できる
  • Value:「本」の実際の内容→「太郎が読んだ本」

注意の計算

Self-Attentionでは、QueryとKeyの類似度を計算して、どの部分に注意を向けるかを決定します。

たとえば

  1. 「その本」のQueryと「本」のKeyの類似度を計算→高い類似度
  2. 「その本」のQueryと「太郎」のKeyの類似度を計算→低い類似度
  3. 類似度の高い「本」により多くの注意を向ける

要するに、Self-Attentionは「探している情報」と「提供できる情報」を照合して、最適な注意の配分を決定しているのです。

Multi-Head Attentionの進化

次に、より高度なAttentionメカニズムについて説明します。

Multi-Head Attentionとは

Multi-Head Attention とは、複数の異なる視点から同時に注意を向ける技術 です。これは、人間が複数の観点から物事を理解するのと似ています。

たとえば: 「太郎は図書館で歴史の本を読んだ。」

この文章を理解する際、以下の複数の観点から注意を向けます:

  • Head 1:「誰が?」→「太郎」に注意
  • Head 2:「どこで?」→「図書館で」に注意
  • Head 3:「何を?」→「歴史の本を」に注意
  • Head 4:「何をした?」→「読んだ」に注意

複数視点の統合

各Headがそれぞれ異なる観点から注意を計算し、最終的にそれらを統合して総合的な理解を得ます。

たとえば

  • Head 1が「主語-動詞」の関係に注目
  • Head 2が「動詞-目的語」の関係に注目
  • Head 3が「時間・場所」の修飾関係に注目
  • Head 4が「感情・評価」の表現に注目

これらの情報を統合することで、文章の多面的な理解が可能になります。

長距離依存関係の処理

Multi-Head Attentionにより、文章の離れた部分同士の関係 も効果的に処理できます。

たとえば: 「太郎は昨日図書館に行った。多くの本を見つけた。特に歴史の本が興味深かった。その本を借りて帰った。」

この文章で「その本」が「歴史の本」を指していることを理解するために、4つの文にまたがった長距離の関係を処理する必要があります。Multi-Head Attentionは、このような複雑な関係も効果的に処理できます。

実際の応用例

最後に、AttentionがLLMの実際の応用でどのように活用されているかについて解説します。

機械翻訳での応用

機械翻訳では、原文の重要な部分に注意を向けて、適切な翻訳を生成 します。

たとえば: 日本語:「太郎は昨日、図書館で本を読んだ。」 英語:「Taro read a book at the library yesterday.」

翻訳の際、以下のような注意の対応関係が生まれます:

  • 「太郎」→「Taro」(人名の対応)
  • 「昨日」→「yesterday」(時間の対応)
  • 「図書館で」→「at the library」(場所の対応)
  • 「本を読んだ」→「read a book」(動作の対応)

文書要約での応用

文書要約では、文章の重要な部分により多くの注意を向けて、要約を生成 します。

たとえば: 長い記事から要約を作成する際、以下の部分により注意を向けます:

  • 導入部の主題
  • 各段落の結論
  • 具体的な数値や事実
  • 著者の主張や意見

質問応答での応用

質問応答では、質問に関連する部分により多くの注意を向けて、回答を生成 します。

たとえば: 文章:「太郎は1995年に東京で生まれた。現在は大阪で会社員として働いている。」 質問:「太郎はどこで生まれましたか?」

この場合、「太郎」「生まれた」「東京」により多くの注意を向け、「現在」「大阪」「会社員」への注意は低くなります。

まとめ

Attention(アテンション)は、LLMが人間のように文章の重要な部分に注意を向けるための仕組みです。Self-AttentionやMulti-Head Attentionといった技術により、文章内の複雑な関係性や長距離依存関係を効果的に処理できます。これにより、LLMは文脈を理解し、適切な応答を生成できるようになっています。

要するに、Attentionは「LLMの注意力」であり、文章の意味を正しく理解するための核心的な技術なのです。

次回の記事では、Attentionメカニズムをさらに発展させた革新的な技術「Transformerアーキテクチャ」について詳しく解説していきます。