之前这一块不太明白,看了几篇文章,来专门记下
我们需要注意的一个关键点是每个attention头都影响着整个输入句子(或者对于注意层堆叠中较高的那些句子,整个句子的表示形式)。 将所有head的输出连接起来,并与另一个矩阵相乘(该矩阵是共同学习的),该矩阵将维数减小到好像只是一个attention head一样-这样的减少可确保关注输出的前馈层始终获得向量 大小相同,而不管其前面attention头的数量如何。
假设我们有512的向量(例如,隐藏层输出)。 4头attention机制的作用是将向量分成4个块,每个块的尺寸为512/4 = 128,并行地对每个块进行机制处理,并合并结果。
从经验上发现,在机器翻译的上下文中,多头attention比通常的“单头”更好。 这种改进的直觉是“多头关注可以使模型在不同位置联合关注来自不同表示子空间的信息”