【NLP】MHA、MQA、GQA机制的区别

Note

  • LLama2的注意力机制使用了GQA。三种机制的图如下:

MHA机制(Multi-head Attention)

MHA(Multi-head Attention)是标准的多头注意力机制,包含h个Query、Key 和 Value 矩阵。所有注意力头的 Key 和 Value 矩阵权重不共享

MQA机制(Multi-Query Attention)

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(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。GQA介于MHA和MQA之间。GQA机制,多头共用 KV Cache。

Reference

1 一文通透各种注意力:从多头注意力MHA到分组查询注意力GQA、多查询注意力MQA

2 Transformer系列:注意力机制的优化,MQA和GQA原理简述

3 Navigating the Attention Landscape: MHA, MQA, and GQA Decoded

相关推荐
AI小码10 小时前
把动作「画」给视频世界模型,跨本体双向推演,李飞飞参与
大数据·人工智能·算法·ai·大模型·音视频·编程
weixin_6665939915 小时前
自然资源时空智能体建设方案:从数字化到智能化的演进路径
大数据·人工智能·大模型·云计算·agent·云平台·空间数据库
aqi0015 小时前
15天学会AI应用开发(十六)LangChain实现对话记忆功能
人工智能·python·大模型·ai编程·ai应用
zzzll111115 小时前
Agent 开发的五种架构范式及选型思路
人工智能·架构·大模型·llm
Pokerhead16 小时前
如何评价 DeepSeek-V4 的价格?
人工智能·大模型·ai编程·deepseek
user-猴子17 小时前
AiPy + Kimi K3:2048小游戏生成的技术分析
人工智能·语言模型·大模型·prompt
GPUStack1 天前
怎么优雅地在GPUStack上使用minerU?
ai·大模型·llm·gpu·vllm·gpu集群·gpustack
薛定谔的猫19821 天前
LLaMA Factory微调中的模版在vLLM或LMDeploy框架部署中对齐
大模型·微调·vllm·模版·llama factory·lmdeploy·对话模板
Pokerhead2 天前
如何评价 OpenAI 的超级对话模型 ChatGPT ?
人工智能·chatgpt·大模型·openai·ai编程
晓子文集2 天前
Tushare接口文档:现金流量表(cashflow)
大数据·数据库·大模型·金融数据·量化投资·tushare