G検定 練習問題 #0059・Attention

Attentionの出力の計算

ディープラーニングの要素技術 › Attention 単一選択 難易度 標準

Attentionにおいて、あるクエリと3つのキーから求めた注意の重み(ソフトマックス関数で正規化した後の値)が、キー1:0.5、キー2:0.3、キー3:0.2であった。キー1〜3に対応するバリューがそれぞれ(0, 8)、(10, 2)、(5, 2)のとき、このクエリに対するAttentionの出力として、最も適切なものを1つ選べ。

正解と解説を見る

解説

正解 B

この問題の論点:Attentionの出力の計算

ポイント

Attentionの出力は、クエリとキーから求めた重みでバリューを加重和したものです。キーは重みの計算に、バリューは出力の材料に使います。

選択肢ごとの解説

  1. A

    不適切

    最も重みの大きいキー1のバリューだけを選んだ値です。通常のAttentionは1つを選ぶのではなく、すべてのバリューを重みに応じて混ぜ合わせます。

  2. B

    適切 正解

    出力は重みによるバリューの加重和です。0.5×(0, 8)+0.3×(10, 2)+0.2×(5, 2)=(0, 4)+(3, 0.6)+(1, 0.4)=(4, 5)となります。

  3. C

    不適切

    重みを使わず、3つのバリューを単純に平均した値です。(0+10+5)÷3=5、(8+2+2)÷3=4となり、注意の重みが反映されていません。

  4. D

    不適切

    重みとバリューの対応を逆にした値です(0.2×(0, 8)+0.3×(10, 2)+0.5×(5, 2))。各重みは、同じキーに対応するバリューに掛けます。

補足

Transformerで使われるScaled Dot-Product Attentionでは、クエリとキーの内積をキーの次元数の平方根で割り、ソフトマックス関数で正規化して重みにします。重みの合計は1になるため、出力はバリューの「重み付き平均」とも見なせます。

試験での狙われ方

クエリ・キー・バリューの役割の区別や、重みとバリューから出力を求める簡単な計算の形で問われることがあります。

参考

表示設定

テーマ
文字の大きさ
問題演習