大模型學習筆記------Llama 3模型架構之分組查詢注意力(GQA)

大模型學習筆記------Llama 3模型架構之分組查詢注意力(GQA)

    • 1、分組查詢注意力(GQA)的動機
    • 2、 多頭注意力(Multi-Head Attention, MHA)
    • 3、 多查詢注意力 (Multi-Query Attention,MQA)
    • 4、 分組查詢注意力(Grouped-Query Attention, GQA)
    • 5、 多頭注意力 (MHA) 、多查詢注意力 (MQA)、分組查詢注意力 (GQA)對比

????上文簡單介紹了 Llama 3模型架構的旋轉位置編碼(Rotary Position Embedding,RoPE)。本文介紹Llama 3模型的最后一個網絡結構相關知識:Llama 3模型架構之分組查詢注意力(Grouped-Query Attention, GQA)。實際上。在Llama 2就已經使用GQA注意力機制了。GQA是Transformer模型注意力機制的重要改進,旨在平衡計算效率與模型表現。其核心設計理念可概括為:“分組共享鍵值對,獨立保留查詢向量”。

1、分組查詢注意力(GQA)的動機

????Llama 3為什么采用GQA注意力機制呢?其實道理很簡單,在大模型訓練與推理過程中需要在保障準確率的基礎上盡可能的減少計算量,減少參數數量,提高效率。這個怎樣理解呢?論文里其實也提到了這個問題。主要是對比了多頭注意力(Multi-Head Attention, MHA)和多查詢注意力 (Multi-Query Attention,MQA)。具體三中方式的結構如下圖所示:
在這里插入圖片描述

2、 多頭注意力(Multi-Head Attention, MHA)

????多頭注意力(Multi-Head Attention, MHA)是一種在Transformer架構中廣泛使用的注意力機制,具體結構如上圖A。它通過并行地使用多個注意力頭來捕捉輸入序列中不同的特征,增強模型的表達能力。多頭注意力的基本思想是將輸入的查詢(Query,Q)、鍵(Key,K)和值(Value,V)向量通過多個注意力頭進行并行處理,然后將結果拼接在一起,得到最終的輸出。每個注意力頭在不同的子空間中學習數據的不同特征,使得模型能夠更好地理解復雜的輸入。具體原理如下所示:

????1)查詢(Query,Q)、鍵(Key,K)和值(Value,V)的向量表示

在這里插入圖片描述
其中, 在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述分別是查詢、鍵和值的投影矩陣。

????2)自注意力計算
在這里插入圖片描述
其中, 在這里插入圖片描述為查詢和鍵向量的維度。

????3)多頭組合
在這里插入圖片描述在這里插入圖片描述
????通過多個注意力頭并行處理,MHA能夠從不同角度關注輸入數據中的信息,捕捉到更豐富的上下文關系。MHA的設計使得可以在硬件加速上,同時計算多個關注頭,提高了計算效率。

3、 多查詢注意力 (Multi-Query Attention,MQA)

????多查詢注意力(Multi-Query Attention, MQA)旨在提高注意力的效率并降低計算復雜度。相較于傳統的多頭注意力(Multi-Head Attention, MHA),MQA的設計采用了多個查詢頭,但共享相同的鍵和值,這使得計算更為高效,具體結構如上圖B。具體計算原理如下步驟:

????1)查詢向量
在這里插入圖片描述
????2)共享的鍵和值向量
在這里插入圖片描述
????3)自注意力計算
在這里插入圖片描述
????4)組合
在這里插入圖片描述

4、 分組查詢注意力(Grouped-Query Attention, GQA)

????分組查詢注意力(Grouped-Query Attention, GQA)旨在通過將查詢分組來提升計算效率并增強模型的能力。與多頭注意力和多查詢注意力相比,GQA通過將查詢分成多個組并為每組獨立計算注意力來優化注意力計算過程。具體結構如上圖C,計算步驟如下所示:
1)查詢向量:
在這里插入圖片描述
2)分組的鍵和值向量:
將總計N個注意力頭劃分為G組,每組共享相同的鍵和值投影:

在這里插入圖片描述
3)組內自注意力計算:
在這里插入圖片描述
4)組合:
在這里插入圖片描述

5、 多頭注意力 (MHA) 、多查詢注意力 (MQA)、分組查詢注意力 (GQA)對比

????這幾種注意力機制有各自的特點,具體如下所示:

維度多頭注意力 (MHA)多查詢注意力 (MQA)分組查詢注意力 (GQA)
查詢數量多個獨立的查詢多個共享查詢分組查詢,部分獨立
鍵和值每個頭獨立的鍵和值共享相同的鍵和值共享或獨立的鍵值
計算復雜度較高較低靈活調節,適中
應用場景廣泛小查詢任務大規模模型優化

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76744.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76744.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76744.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

matlab 環形單層柱狀圖

matlab 環形單層柱狀圖 matlab 環形單層柱狀圖 matlab 環形單層柱狀圖 圖片 圖片 【圖片來源粉絲】 我給他的思路是:直接使用風玫瑰圖可以畫出。 rose_bar 本次我的更新和這個有些不同!是環形柱狀圖,可調節細節多; 只需要函數…

Docker--Docker網絡原理

虛擬網卡 虛擬網卡(Virtual Network Interface,簡稱vNIC) 是一種在軟件層面模擬的網卡設備,不依賴于物理硬件,而是通過操作系統或虛擬化技術實現網絡通信功能。它允許計算機在虛擬環境中模擬物理網卡的行為&#xff0…

linux基礎14--dns和web+dns

DNS:域名系統(Domain Name System) DNS協議是用來將域名轉換為IP地址或將IP地址轉換為相應的域名 DNS使用TCP和UDP端口53,給用戶提供解析時一般使用UDP53 對于每一級域名長度的限制是63個字符,域名總長度則不能超過2…

C++抽象基類定義與使用

在 C 中,抽象基類(Abstract Base Class, ABC) 是一種特殊的類,用于定義接口規范和約束派生類的行為。它通過純虛函數(Pure Virtual Function)強制要求派生類實現特定功能,自身不能被實例化。以下…

用selenium4 webdriver + java 搭建并完成第一個自動化測試腳本

自動化測試任務: 百度搜索自己的姓名。點擊第一個鏈接(或者第二個),在新的頁面上,添加斷言,驗證你的名字是否存在。 實驗資料百度網盤下載路徑: 鏈接: https://pan.baidu.com/s/1nVlHX_ivres…

LLM大模型中的基礎數學工具—— 約束優化

Q26: 推導拉格朗日乘子法 的 KKT 條件 拉格朗日乘子法與 KKT 條件是啥? 拉格朗日乘子法是解決約束優化問題的利器。比如,想最小化函數 ,同時滿足約束 ,就構造拉格朗日函數 ( 是乘子)。KKT 條件是解這類問…

net+MySQL中小民營企業安全生產管理系統(源碼+lw+部署文檔+講解),源碼可白嫖!

摘要 近些年來,隨著科技的飛速發展,互聯網的普及逐漸延伸到各行各業中,給人們生活帶來了十分的便利,中小民營企業安全生產管理系統利用計算機網絡實現信息化管理,使企業的中小民營企業安全生產管理發展和服務水平有顯…

論文閱讀:2024 arxiv AI Safety in Generative AI Large Language Models: A Survey

總目錄 大模型安全相關研究:https://blog.csdn.net/WhiffeYF/article/details/142132328 AI Safety in Generative AI Large Language Models: A Survey 生成式人工智能大型語言模型中的人工智能安全性:一項調查 https://arxiv.org/pdf/2407.18369 https://www.doubao.com…

【MySQL數據庫】表的約束

目錄 1,空屬性 2,默認值 3,列描述 4,zerofill 5,主鍵primary key 6,自增長auto_increment 7,唯一鍵unique 8,外鍵foreign key 在MySQL中,表的約束是指用于插入的…

基于javaweb的SpringBoot校園失物招領系統設計與實現(源碼+文檔+部署講解)

技術范圍:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、小程序、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容:免費功能設計、開題報告、任務書、中期檢查PPT、系統功能實現、代碼編寫、論文編寫和輔導、論文…

多模態大語言模型arxiv論文略讀(二十六)

Holistic Autonomous Driving Understanding by Bird’s-Eye-View Injected Multi-Modal Large Models ?? 論文標題:Holistic Autonomous Driving Understanding by Bird’s-Eye-View Injected Multi-Modal Large Models ?? 論文作者:Xinpeng Ding,…

“星睿O6” AI PC開發套件評測 - 部署PVE搭建All in One NAS服務器

Radxa O6平臺上部署PVE搭建All in One NAS服務器 Radxa O6是一款性能卓越的單板計算機,其強勁的硬件配置和多樣化的接口設計,使其成為家庭和小型企業理想的All in One服務器解決方案。值得一提的是,O6原生配備了兩個5G網口,便于直…

C++ linux打包運行方案(cmake)

文章目錄 背景動態庫打包方案動態庫轉靜態庫動態庫打到軟件包中 運行 背景 使用C編寫的一個小項目,需要打包成ubuntu下的可執行文件,方便分發給其他ubuntu執行,因為docker鏡像方案過于臃腫,所以需要把項目的動態庫都打在軟件包中…

Linux內核編譯(Ubuntu)

實驗內容:在系統中下載統一發行版本的版本號較高的內核,編譯之后運行自己編譯的內核,并使用uname-r命令查看是否運行成功。 實驗步驟: 1.查看實驗環境和內核版本 圖1 實驗環境 VMware中虛擬機Ubuntu(24.04&#xff…

EdgeGPT - 新版Bing聊天功能逆向工程

本文翻譯整理自:https://github.com/acheong08/EdgeGPT 文章目錄 一、關于 EdgeGPT相關鏈接資源關鍵功能特性 二、安裝系統要求安裝命令 三、認證配置獲取Cookie步驟代碼中使用Cookie 四、使用方法1、命令行方式2、Python API方式使用Chatbot類使用Query輔助類 3、…

三網通電玩城平臺系統結構與源碼工程詳解(四):子游戲集成與服務器調度機制全解

本篇將深入講解三網通電玩城平臺中子游戲接入、前后端資源組織方式、服務器調度邏輯、并發接入方案等核心內容,重點覆蓋“李逵劈魚”、“水果瑪麗”、“瘋狂瑪麗”等熱門組件,輔以完整代碼框架與部署邏輯。 一、子游戲資源目錄結構與加載機制 平臺采用標…

1.1 AI大模型與Agent的興起及其對企業數字化轉型的推動作用

隨著人工智能技術的飛速發展,AI大模型和智能代理(Agent)的興起正成為推動企業數字化轉型的重要力量。從2017年GPT-1的首次亮相到2025年GPT-4和Qwen 2.5等多模態模型的成熟,AI大模型經歷了顯著的技術演進;與此同時&…

位運算練習:起床困難綜合征(貪心,位運算)(算法競賽進階指南學習筆記)

目錄 前情提要起床困難綜合征(貪心,位運算) 前情提要 一些基礎運算操作用法看看上一篇; 起床困難綜合征(貪心,位運算) 題目原文 [P2114 NOI2014] 起床困難綜合癥 - 洛谷 思路分析 題目很長…

PowerBi中REMOVEFILTERS怎么使用?

在 Power BI 的 DAX 中,REMOVEFILTERS() 是一個非常重要的函數,常用于取消某個字段或表的篩選上下文(Filter Context),從而讓你的計算不受切片器(Slicer)、篩選器或視覺對象的限制。 ? 一、REM…

Vue3 實戰:打造多功能旅游攻略選項卡頁面

在旅游類應用開發中,為用戶提供全面、直觀的信息展示界面至關重要。本文將分享如何基于 Vue3 Axios 技術棧,實現一個包含攻略、游記、問答三大板塊的旅游攻略選項卡頁面,從樣式設計到交互邏輯,帶你深入了解整個開發過程。 項目背…