别着急,坐和放宽
本文介绍了多头注意力(multi-head attention)的实现方式。通过堆叠多个单头注意力(single-head attention)层,每个注意力机制都有自己的权重,并在并行运行后结合它们的输出,形成多头注意力机制。
多头注意力的关键是使用学习到的线性投影多次运行自注意力机制。具体实现时,需要调整输出维度,并使用线性层组合单个注意力机制的输出。通过添加头数维度并展开最后一个维度,实现矩阵变形和转置以便计算每个头的点积。
在进行矩阵运算时,考虑四维输入张量的最后两个维度进行运算,转置并重复操作来计算每个头的矩阵乘法。最终,将所有头的输出结合并形状化。此外,还可以选择添加一个输出投影层来增加模型的复杂度和能力。GPT-2等大型模型使用了大量的注意力头和嵌入大小。