【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

相关推荐
goodmao2 小时前
【DeepSeek】-macOS本地终端部署后运行DeepSeek如何分析图片
gpt·macos·大模型·ollama·deepseek·本地图片分析
qq_153214526418 小时前
Openai Dashboard可视化微调大语言模型
人工智能·语言模型·自然语言处理·chatgpt·nlp·gpt-3·transformer
花千树-01021 小时前
Java中的自然语言处理(NLP)工具:Stanford NLP、Apache OpenNLP、DL4J
java·自然语言处理·nlp·aigc·apache
9命怪猫1 天前
DeepSeek底层揭秘——微调
人工智能·深度学习·神经网络·ai·大模型
涛涛讲AI1 天前
文心一言大模型的“三级跳”:从收费到免费再到开源,一场AI生态的重构实验
人工智能·百度·大模型·deepseek
Black蜡笔小新2 天前
AI大模型驱动的智能音视频通信:视频通话SDK工具EasyRTC在嵌入式设备中的应用探索
人工智能·语言模型·大模型·音视频·webrtc·rtc
小白顶呱呱2 天前
图解【提示工程 VS 微调 VS RAG、全量微调 VS LoRA微调、TopK VS TopP】截图笔记
笔记·大模型·prompt·rag·大模型微调
一 铭3 天前
dify实现分析-rag-关键词索引的实现
人工智能·语言模型·大模型·llm
百家方案3 天前
DeepSeek赋能智慧城市:多场景应用,打造感知-决策-执行的闭环解决方案架构
人工智能·ai·大模型·deepseek
奔跑的蜗牛啊啊3 天前
linux部署olloma deespeek
nlp