大模型Transformer笔记:KV缓存

1 MHA(M ulti-H ead Attention)

  • 最经典的多头注意力
    • 等价于多个独立的单头注意力的拼接
  • 对于LLM来说,一般都是自回归地一个一个token的输出,也就相当于只有Transformer的decoder input在变化,之前作为prompt部分的是不变,可以缓存的(KV cache)
    • 而KV cache的减少可以让我们有更长的context prompt,更快的推理速度,更低的推理成本

2 MQA(M ulti-Q uery Attention)

Fast Transformer Decoding: One Write-Head is All You Need 2019

PaLM 6、StarCoder 7、Gemini 8

  • 所有注意力头共享同一套K,V
    • ------>KV 缓存减少到1/h
    • KV参数的减少可以到FFN/GLU规模的增大来弥补

3 GQA(G rouped-Q uery Attention)

GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints emnlp 2023

所有 Head 分为 g个组( g可以整除 head数量 h)

LLAMA2-70B , LLAMA3

参考内容:缓存与效果的极限拉扯:从MHA、MQA、GQA到MLA

相关推荐
Rabitebla4 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
伞伞悦读5 小时前
【第83期】特征选择中的验证泄漏排查的实验与排查
人工智能·深度学习·机器学习
一只废狗狗狗狗狗狗狗狗狗6 小时前
自监督式学习
人工智能·深度学习·机器学习·bert
坤坤子吖8 小时前
Linux网络编程:TCP 粘包与半包问题,如何正确处理 TCP 流式数据?
linux·服务器·网络·笔记·网络协议·学习
aifannihao8 小时前
AI 学习第 14 课:CNN 训 6 轮卡在 0.5352,数据没打乱
pytorch·python·深度学习·cnn·学习路线
萝卜小白9 小时前
深度学习基础面经
人工智能·深度学习
YLCHUP12 小时前
【思维&图论建模】题解:债权(debt)_图论_建模_思路转化_思维题目_C++算法竞赛
c++·笔记·算法·数学建模·贪心算法·深度优先·图论
旖旎夜光14 小时前
【C++ 基础入门】C++11 新特性(中):右值引用、移动语义与完美转发
开发语言·c++·笔记·学习
高洁0115 小时前
数据同化与动态状态估计:让孪生持续贴合现实
人工智能·python·深度学习·transformer·迁移学习
通信仿真爱好者15 小时前
第【139】期--基于深度学习的OFDM信道估计方法研究--python完整代码
python·深度学习·ofdm·信道估计