Transformer之multi-head

本文详细介绍了如何通过引入多头注意机制改进自注意力层,增强了模型聚焦不同位置的能力。Transformer利用多个独立的Query/Key/Value权重矩阵,每个注意力头对应一组,使得模型在编码过程中能同时考虑不同的表示子空间,最终通过矩阵连接和额外权重处理整合这些信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文通过增加多头注意机制进一步完善了自注意层。这从两个方面提高了注意力层的性能

  1. 它扩展了模型聚焦不同位置的能力。是的,在前文的例子中,z1包含了一点其他编码,但它可能被实际的单词本身所支配。如果我们翻译“动物因为太累而没有过马路”这样的句子,知道它指的是哪个单词会很有用。
  2. 它为注意力层提供了多个“表示子空间”。正如我们接下来将看到的,通过多头注意力,我们不仅有一组,还有多组 Query/Key/Value 权重矩阵(Transformer 使用八个注意力头,所以我们最终每个编码器/解码器有八套)。这些集合中的每一个都是随机初始化的。然后,在训练后,每个集合用于将输入嵌入(或来自较低编码器/解码器的向量)投影到不同的表示子空间中。
    在这里插入图片描述
    在多头关注下,我们为每个头部保持单独的Q/K/重量矩阵,从而产生不同的 Q/K/V/ 矩阵。正如我们之前所做的那样,我们将X乘以WQ/WK/WV矩阵来生成Q/K/V矩阵。

如果我们做同样的 self-attention 计算,只是8次不同的权重矩阵,我们最终会得到8个不同的Z矩阵
在这里插入图片描述这给我们留下了一点挑战。前馈层不需要8个矩阵,它只需要一个矩阵(每个单词一个向量)。所以我们需要一种方法把这八个矩阵压缩成一个矩阵。
我们怎么做呢?我们连接矩阵,然后将它们乘以一个附加的权重矩阵WO。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值