【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](https://blog.csdn.net/v_july_v/article/details/134228287) \[2\] [Transformer系列:注意力机制的优化,MQA和GQA原理简述](https://www.jianshu.com/p/c7b40d8526dd) \[3\] [Navigating the Attention Landscape: MHA, MQA, and GQA Decoded](https://iamshobhitagarwal.medium.com/navigating-the-attention-landscape-mha-mqa-and-gqa-decoded-288217d0a7d1)

相关推荐
CoderJia程序员甲2 小时前
GitHub 热榜项目 - 日榜(2026-03-25)
人工智能·ai·大模型·github·ai教程
gujunge3 小时前
Spring with AI (5): 搜索扩展——向量数据库与RAG(下)
ai·大模型·llm·openai·qwen·rag·spring ai·deepseek
lljss20205 小时前
MiMo V2 Pro 在opencode 和 在Claude Code 中的表现不同的根本原因
大模型
_小雨林7 小时前
Hugging Face生态,包括Datasets、Tokenizers、Transformers的API使用,预训练模型+微调案例
人工智能·nlp·bert
twc8297 小时前
与LLM结对编程:测试先行如何提升AI辅助开发质量
软件测试·人工智能·大模型·llm·结对编程
twc8298 小时前
LLM辅助编程:从直接生成到测试驱动的质量跃迁
软件测试·大模型·llm
Flying pigs~~9 小时前
BERT及其变体、GPT、ELMo
人工智能·深度学习·自然语言处理·大模型·bert·文本分析处理
天空之城_tsf12 小时前
安装Claude
大模型·agent·claude
笨手笨脚の1 天前
AI 基础概念
人工智能·大模型·prompt·agent·tool
Hello world.Joey1 天前
Transformer解读
人工智能·深度学习·神经网络·自然语言处理·nlp·aigc·transformer