从零构建大模型

作者:未知作者 笔记数:5 条

3.4 实现带可训练权重的自注意力机制

缩放点积注意力对比

设定d_k=16,缩放系数 \sqrt{d_k}=4 原始注意力分数:[8, 4, 2]

① 不缩放 [8, 4, 2] ↓ Softmax(·) ↓ [0.98, 0.02, 0.00]

② 缩放(除以 √dₖ) [8, 4, 2] ↓ ÷ 4 ↓ [2, 1, 0.5] ↓ Softmax(·) ↓ [0.63, 0.23, 0.14]  

查询类似于数据库中的搜索查询。它代表了模型当前关注或试图理解的项(比如句子中的一个单词或词元)

键类似于用于数据库索引和搜索的键。在注意力机制中,输入序列中的每个项(比如句子中的每个单词)都有一个对应的键。这些键用于与查询进行匹配。

Self Attention

相比手动实现nn.Parameter(torch.rand(…)),使用nn.Linear的一个重要优势是它提供了优化的权重初始化方案,从而有助于模型训练的稳定性和有效性