E資格対策
🧪 無料学習ツール

Self-Attention 可視化シミュレータ
— QKᵀ/√d・softmax を1手ずつ計算する

Transformerの心臓部 Attention(Q, K, V) = softmax(QKᵀ/√d)V を、 4トークンの小さな行列で1ステップずつ計算します。 「AI」が「medical」に注意を向ける様子がヒートマップで見え、 埋め込みを書き換えると注意の向き先が変わる——Attentionの気持ちが、手で触ってわかります。

💡 まず試してほしいこと: ①「最後まで」実行 → ③の注意重みで、AIの行がmedicalに0.33・自分に0.58と、意味の近いトークンに注意が向くのを確認
② 「love」の行の x₃ を 0→2 に書き換える → loveがmedical・AI側に「引っ越し」、注意の向き先が変わる
③「√dなしと比較」→ 割らないと分布が極端に尖る(飽和する)のを③で見比べてください。これが√dで割る理由です。

トークンの埋め込み X(編集できます)

簡単のため WQ=WK=WV=I とし、Q=K=V=X(d=3)

💡 埋め込みとは:単語の「意味」を数値ベクトルにしたものです。 x₁〜x₃は意味の軸だと思ってください(この例のイメージ:x₁=「自分・人称っぽさ」、x₂=「感情っぽさ」、x₃=「医療・技術っぽさ」)。 同じ軸に大きい値を持つ単語どうしは内積=類似度が大きくなり、注意が強く向きます。 だから値を書き換えると「どの単語がどの単語を見るか」が変わるのです。
x₁x₂x₃
「▶ 1ステップ計算」を押すと、Attentionの計算が1段階ずつ進みます。

① スコア S = QKᵀ

トークンどうしの内積=「似ている度」

② スケール S / √d

√3 ≒ 1.732 で割って値を穏やかに

③ softmax(行ごと)= 注意重み A

各行の合計が1の確率に(濃い紫=強い注意)

④ 出力 O = A·V

注意重みでVを混ぜた「文脈入りの表現」

式の全体像(試験内容解説と同じ形)

$$\mathrm{Attention}(Q, K, V) = \mathrm{softmax}\!\left(\frac{QK^{T}}{\sqrt{d}}\right)V$$

  • Q(Query)……「いま注目している側」のベクトル。K(Key)……「注目される側」の見出し。V(Value)……実際に取り出す中身
  • \(QK^{T}\) は全トークン対の内積=類似度の総当たり表(①)
  • \(\sqrt{d}\) で割るのは、次元 \(d\) が大きいほど内積が大きくなり、softmaxが飽和して勾配が消えるのを防ぐため(②)
  • softmaxを行ごとにかけて、各トークンが「誰をどれだけ見るか」の確率に(③)
  • その重みで \(V\) を混ぜ合わせ、文脈を取り込んだ新しい表現を得る(④)

本ツールは理解のために \(Q=K=V=X\)(変換行列を恒等行列)に簡約しています。 実際のTransformerでは \(Q=XW^{Q},\ K=XW^{K},\ V=XW^{V}\) と学習される行列で別々に変換し、 さらにそれを複数並べるMulti-Head Attentionで「複数の観点の注意」を同時に持たせます (MultiHead = Concat(head₁, …, head_h)WO)。

E資格 練習問題

例題

Scaled Dot-Product Attentionで、スコア \(QK^{T}\) を \(\sqrt{d_k}\) で割る主な理由として最も適切なものはどれか。

  1. 計算量を \(1/\sqrt{d_k}\) に削減するため
  2. 次元が大きいときに内積の値が大きくなり、softmaxが飽和して勾配が小さくなるのを防ぐため
  3. 注意重みの合計を1にするため
  4. Q・K・Vの次元をそろえるため
解答と解説を見る

正解:B
次元 \(d_k\) が大きいと内積のばらつきが大きくなり、softmaxがほぼ0/1に飽和して勾配が流れなくなります。 \(\sqrt{d_k}\) で割ってスコアを穏やかにするのがスケーリングの目的です (本ツールの「√dなしと比較」で、分布が尖る様子を確認できます)。 Cはsoftmax自体の役割、Aは誤り(計算量は変わらない)、Dも誤りです。

Transformerの全体像(Multi-Head・Positional Encoding・構造)は Transformerの解説ページで、 PyTorch実装の読み解きは E資格コーディング対策コース・レッスン9で深められます。

新シラバスの主役・Transformerを得点源に

E資格の本番形式で確認しましょう。分野別の理論解説と実践問題集を無料で公開しています。

\ 公式LINE・登録無料 /

友だち追加で4大特典をプレゼント中🎁

E資格ミニ模試(全15問)/覚えておくべき数式チェック49本
医療現場の生成AI安全活用ガイド/医療AI用語事典100

📱 友だち追加して特典を受け取る

▶ 特典のくわしい内容を見る