🔍 Attention 机制动态演示

Interactive Visualization of Self-Attention Mechanism

📚 Self-Attention 计算步骤

  1. 输入嵌入 (Input Embedding):将每个 token 转换为向量
  2. 计算 Q, K, V:通过权重矩阵 W_Q, W_K, W_V 线性变换
  3. 计算注意力分数:Q × K^T
  4. 缩放 (Scaling):除以 √d_k
  5. Softmax 归一化:得到注意力权重
  6. 加权求和:用注意力权重对 V 加权求和

🎯 输入 Tokens(点击选择)

点击 token 查看注意力分布

📊 注意力权重矩阵

颜色深浅代表注意力权重大小

🧮 详细计算过程

选择上方 token 查看详细计算

🎯 面试速答:一句话讲清 Self-Attention

Q:Self-Attention 怎么算的?

A:输入 X 分别乘以 W_Q、W_K、W_V 得到 Q、K、V;用 Q·Kᵀ 计算每对 token 的相似度分数;除以 √dₖ 防止梯度消失;Softmax 归一化成权重;最后用权重对 V 加权求和得到输出。

Q:为什么要除以 √dₖ?

A:dₖ 越大,Q·Kᵀ 的点积方差越大,Softmax 会进入饱和区导致梯度趋近于 0;除以 √dₖ 把方差拉回 1 附近,训练更稳定。

Q:多头注意力的作用?

A:让模型在不同子空间关注不同特征,类似 CNN 的多个卷积核,增强表达能力。