💡
原文英文,约300词,阅读约需1分钟。
📝
内容提要
本文介绍了如何使用PyTorch实现选择器函数,生成条件张量,并计算不同注意力头的得分矩阵,最终得到上下文向量。
🎯
关键要点
- 使用PyTorch实现选择器函数,生成条件张量。
- 选择器函数根据条件返回+1/-1的张量。
- 定义了多个注意力头,每个头选择不同的token。
- 头1选择偶数位置的token,头2选择最后一个token,头3选择第一个token,头4选择所有可见token。
- 计算每个头的得分矩阵,并进行堆叠。
- 应用因果掩码,确保位置i只能关注于位置<=i。
- 将得分转换为注意力权重,并处理完全掩码的行。
- 计算上下文向量,输出每个注意力头的上下文。
❓
延伸问答
如何使用PyTorch实现选择器函数?
选择器函数通过条件返回+1/-1的张量,并生成条件张量。
注意力头的选择策略是什么?
不同的注意力头选择不同的token,例如头1选择偶数位置的token,头2选择最后一个token。
如何计算注意力头的得分矩阵?
通过将查询Q与选择器生成的K矩阵相乘,并进行缩放来计算得分矩阵。
因果掩码在计算中有什么作用?
因果掩码确保位置i只能关注于位置<=i,从而保持信息的因果性。
如何将得分转换为注意力权重?
得分通过softmax函数转换为注意力权重,并处理完全掩码的行。
上下文向量是如何计算的?
上下文向量通过将注意力权重与值V矩阵相乘得到。
➡️