引言
Grouped Query Attention(GQA,分组查询注意力)和多头注意力机制(Multi-Head Attention,MHA)都是Transformer模型中用于捕获输入序列中不同位置之间关系的注意力机制。然而,它们在实现方式和计算复杂度上有所不同。下面我将详细介绍它们的原理以及它们之间的区别。
1. 多头注意力机制(MHA)
1.1 概念
多头注意力机制(Multi-Head Attention,MHA)是Transformer模型中的核心组件。它通过并行的多组注意力机制,让模型能够在不同的子空间中关注序列的不同方面,从而加强模型的表达能力。
1.2 工作原理
输入表示:给定输入序列 X ∈ R n × d model \mathbf{X} \in \mathbb{R}^{n \times d_{\text{model}}} X∈Rn×dmodel, n n n是序列长度, d model d_{\text{model}} dmodel是隐藏维度。
线性投影:通过线性变换将输入 X \mathbf{X} X映射为查询( Q \mathbf{Q} Q)、键( K \mathbf{K} K)和值( V \mathbf{V} V):
Q = X W Q , K = X W K , V = X W V \mathbf{Q} = \mathbf{X}\mathbf{W}_Q, \quad \mathbf{K} = \mathbf{X}\mathbf{W}_K, \quad \mathbf{V} = \mathbf{X}\mathbf{W}_V Q=XWQ,K=XWK,V