アテンション機構 - 大事な部分に注目する

アテンション機構は、入力の中で「どこに注目すべきか」を学習する仕組みです。Transformerの核心技術を理解しましょう。

若葉 みどり 先生(笑顔) 若葉 みどり 先生

今日から数回にわたって、生成AIの根幹——Transformerアーキテクチャに踏み込むわ。
まずは土台のAttention機構よ。

白銀 ゆき(普段) 白銀 ゆき

Attention は英語で「注意」ですね。
つまり、入力のどこに注意を向けるべきかを学習する仕組み、という理解で合っていますか?

若葉 みどり 先生(普段) 若葉 みどり 先生

完璧。
たとえば英語「I love cats」を日本語に翻訳するとき、「love」という動詞を訳すには主語「I」と目的語「cats」の両方を参照する必要があるわよね。
アテンションは、各単語が他のどの単語にどれだけ注目すべきかを重みとして計算するの。

桜井 もも(普段) 桜井 もも

えっと…それって、教科書の大事なところにマーカー引くのに似てる?
読む人によって引く場所が違うけど、文脈ごとに大事な場所があるってこと?

若葉 みどり 先生(笑顔) 若葉 みどり 先生

ももさん、それ、すごく本質を突いた言い方よ!
しかも「文脈ごとに」っていうのが秀逸。
同じ単語でも周囲が違えば注目すべき場所が変わる——それを動的に学ぶのが Attention の凄さ。

胡桃 あんず(びっくり) 胡桃 あんず

え、ももちゃん今日冴えてるね…。

白銀 ゆき(普段) 白銀 ゆき

本当、文芸部は伊達じゃないね。
……あ、それ、私も今言おうとしてたのに。

若葉 みどり 先生(普段) 若葉 みどり 先生

具体的には、Attention ではQuery、Key、Valueの3つのベクトルを使って計算するわ。
Query と Key の類似度が高いほど、対応する Value を強く取り込む——これが注意重みの計算よ。
重みは合計1になるよう softmax で正規化されるの。

桜井 もも(笑顔) 桜井 もも

Query と Key と Value…図書館の検索に似てるかも。
知りたいテーマ(Query)があって、本の背表紙(Key)を見比べて、中身(Value)を集めてくる感じ?

若葉 みどり 先生(笑顔) 若葉 みどり 先生

ももさん、今日はさえまくりね!
まさにその通り。
Attention は元々2014〜15年頃の機械翻訳のために提案されて、その後 Transformer の中核に据えられて、今の ChatGPT や Claude まで続いているのよ。

白銀 ゆき(普段) 白銀 ゆき

つまり、文脈的に関連性の高い情報に大きな重みがつくことで、出力が文脈に沿ったものになる、ということですね。
補足ですが、Attention は計算量が系列長の二乗になりやすく、長文では効率化手法(Sparse Attention、FlashAttention など)が重要になります。

胡桃 あんず(普段) 胡桃 あんず

なんか、あたしたちの会議でも「誰の意見に重みを置くか」って勝手にやってるもんね。
そう考えるとAIの工夫も意外と人間臭いじゃん。

若葉 みどり 先生(普段) 若葉 みどり 先生

あんずさんのたとえもナイス。
みんなの会話そのものが生きた Attention の例ね。
大事な発言に自然と耳を傾ける、あの動作を数式で機械にやらせたのが Attention よ。
今日はもうここまでで十分ね。
ももさんの覚醒タイム、忘れないでね。

確認クイズ

アテンション機構の計算に使われる3つの要素の組み合わせとして正しいものはどれか。

  1. Input, Output, Hidden
  2. Query, Key, Value
  3. Encoder, Decoder, Attention
  4. Weight, Bias, Activation
こたえを見る

正解: 2. Query, Key, Value

アテンション機構は Query(問い合わせ)・Key(鍵)・Value(値)の3つで注目すべき箇所を計算します。Input/Output/Hiddenは一般的なNN構造、Encoder/Decoderはアーキテクチャの要素で、いずれもQ/K/Vとは別概念です。

この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。

この記事について

AIパスポートスタディが作成した教材です。運営について・記事の作り方

試験についてはこちらをご覧ください: GUGA 生成AIパスポート公式ページ

この記事を共有