Norm
RMSNorm:去掉了LayerNorm的均值,只保留了方差
Pre-norm和Post-norm的对比:
- 为什么Pre-norm效果更差数学解释
- Pre-norm模型没有Post-norm '深',所以理论上限更低
- Pre-norm的残差连接作用更明显,Post-norm弱化了残差连接数学解释,所以Pre-norm更容易收敛
梯度消失和梯度爆炸
梯度消失:例如sigmoid的两端梯度饱和,容易梯度消失
梯度爆炸:例如w权重初始化不合理
位置编码
MHA,MQA,GQA
我的理解是:计算速度的提升,来自于减少了计算K,Q时的计算量(需要算的头数变少)
-
MHA(Multi-head Attention)是标准的多头注意力机制,h个Query、Key 和 Value 矩阵。
-
MQA(Multi-Query Attention,Fast Transformer Decoding: One Write-Head is All You Need)是多查询注意力的一种变体,也是用于自回归解码的一种注意力机制。与MHA不同的是,MQA 让所有的头之间共享同一份 Key 和 Value 矩阵,每个头只单独保留了一份 Query 参数,从而大大减少 Key 和 Value 矩阵的参数量。
-
GQA(Grouped-Query Attention,GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints)是分组查询注意力,GQA将查询头分成G组,每个组共享一个Key 和 Value 矩阵。GQA-G是指具有G组的grouped-query attention。GQA-1具有单个组,因此具有单个Key 和 Value,等效于MQA。而GQA-H具有与头数相等的组,等效于MHA。