Transformer的Q、K、V和Mutil-Head Self-Attention(超详细解读)

news2024/11/24 9:18:43

目录

一.什么是Q、K、V

二.Mutil-Head Self-Attention


Transformer大行其道,在众多领域取得了不可忽视的成就。如今大火的语言大模型LLM也都是基于Transformer,但是Transformer中的Q、K、V和多头注意力到底是什么呢?这里简单做个学习记录,进行再一次认识和掌握。

一.什么是Q、K、V

Transformer中的Q、K和V是指在自注意力机制(self-attention mechanism)中使用的三个输入表示向量。

Q表示查询向量,K表示关键向量,V表示数值向量。这三个向量是通过线性变换从原始输入向量(通常是词嵌入表示)得到的。

在自注意力机制中,以查询向量Q为基础,通过计算查询向量与所有关键向量K之间的相似度,得到一个权重分布,用于加权求和关联的数值向量V。

Q、K、V概念来源于检索系统,其中Q为Query、K为Key、V为Value。可以简单理解为Q与K进行相似度匹配,匹配后取得的结果就是V。举个例子我们在某宝上搜索东西,输入的搜索关键词就是Q,商品对应的描述就是K,Q与K匹配成功后搜索出来的商品就是V。

Transformer中,注意力的核心公式是

图片

,那Q、K、V是怎么来的呢?这里其实是通过对输入矩阵X进行线性变换得到的,用公式可以简单写成以下:

图片

用图片直观表示为:

图片

其中是三个可训练的参数矩阵,输入矩阵X分别与三个矩阵参数进行相乘,相当于进行一次线性变换,得到了Q、K、V。

然后使用Q、K、V计算注意力矩阵,公式如下:

图片

论文中给出的图如下:

图片

Q和经过MatMul,生成了相似度矩阵。对相似度矩阵每个元素除以的维度大小。这个除法被称为Scale。当很大时,的乘法结果方差变大,进行Scale可以使方差变小,训练时梯度更新更稳定。然后经过SoftMax,最后与V做一个MatMul操作得到结果。

二.Mutil-Head Self-Attention

上文理解了Q、K、V及其它们的由来,那多头注意力是什么呢?

Transformer论文中给出的多头注意力公式如下:

图片

从公式可以看出,多头注意力就是将多个head进行Concat然后与

相乘。其中每个head是由

图片

与Q、K、V做Attention操作得到。论文给出的图如下:

图片

Q、K、V经过Linear然后经过h个Self-Attention,得到h个输出,其中h指的是注意力的头数。h个输出进行Concat然后过Linear得到最终结果。

图片

那么就得到了多组Q、K、V,每一组就是一个head。


下面引用B站作者霹雳吧啦Wz的内容进行讲解。

先做个铺垫如下图

图片

图片

图片

同理也会得到不同输入的2个head中的head2。如下图

图片

左侧是x1、x2输入的head1,右侧是x1、x2输入的head2,b是偏置。

致此,就得到了每个

图片

对应的

图片

参数。接下来针对每个head使用和Self-Attention中相同的方法即可得到对应的结果。

图片

 接着将每个head得到的结果进行concat拼接,接着将拼接后的结果通过

图片

(可学习的参数)进行融合。

从上可以看出,每个head关注的子空间不一定是一样的,那么这个多头的机制能够联合来自不同head部分学习到的信息,这就使得模型具有更强的认识能力。

更多的头数意味着更强大的模型能力,比如LLM大模型Baichuan-13B中的head数目是40,而Baichuan-7B中的head数目是32。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1163199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

实景三维信创产品与智能硬件重磅发布 | 大势智慧2023秋季新品发布会圆满落幕

10月27日,大势智慧2023秋季新品发布会取得圆满成功。本次发布会以“全国产、真安全”为主题,重磅发布了一系列国产化软硬件产品和新型智能装备,用于满足实景三维全流程的安全生产和应用需求。大会同步在官方微信视频号、bilibili直播间进行线…

如何记录每天的工作日程?电脑手机通用的日程管理软件

在工作时间有限,但工作任务愈加繁多的现在职场中,要求每一个职场人士做好高效日程管理。通过高效管理日程,我们可以更好地组织和安排任务,合理分配时间和优先级,这有助于我们更专注地进行工作,减少时间的浪…

分析报告有样板了-奥威BI数据可视化报表模板

述职报告、月度数据分析报告、季度数据分析报告、区域数据分析报告……人在职场,数据分析报告少不了。那么,怎么才能在极短的时间内做出一张既好看又突出重点、分析逻辑在线的数据可视化分析报表?奥威BI软件的建议是采用BI数据可视化报表模板…

批量调整图片尺寸方案(比例不变)

最近又有一个问题,需要把一堆图片调整成统一的尺寸大小(例如100*100像素)。 网上或者很多工具都是直接把图片尺寸调整到对应尺寸。 这就出现了一个问题—— 整个图片会被压缩拉伸,图片里的物体/人等都变形了。 原图(200*270): 直接调整尺寸后(200*200): 我们需…

Zabbix监控原理 安装

一、监控介绍 1、监控目的 监控是需要站在公司的业务角度去考虑,而不是针对某个监控技术的使用 对系统不间断时实监控 实际上是对系统不间断的时实监控 实时反馈系统当前状态 我们监控某个硬件、或者系统,都是需要能时实看到当前系统的状态&#x…

创作者焦点:MetaLab 和 Hangar Games(第一章)

一起来看看「Dr. Bomkus 的试炼」幕后的创作故事吧~ 「创作者焦点」系列报道将带来六篇关于「Dr. Bomkus 的试炼」游戏的创作过程,以及其独特的游戏玩法和功能。请关注我们,查看更多系列内容的发布。 The Dr. Bomkus MetaLab Dr. Bomkus Meta…

基于Springboot+MYSQL+Maven实现的宠物医院管理系统(源码+数据库+运行指导文档+项目运行指导视频)

一、项目简介 本项目是一套基于springboot框架实现的宠物医院管理系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单…

前端基础之BOM和DOM

目录 一、前戏 window对象 window的子对象 navigator对象(了解即可) screen对象(了解即可) history对象(了解即可) location对象 弹出框 计时相关 二、DOM HTML DOM 树 查找标签 直接查找 间…

使用Qt Installer Framework将自己的程序打包成安装包程序

使用Qt Installer Framework将自己的程序打包成安装包程序 制作安装包程序就是将自己的程序打包成一个可执行的exe,双击之后进行安装。 1. 在制作安装包程序之前需要安装qt官方提供的安装包制作工具Qt Installer Framework 去qt官方网址,下载对应的 Q…

gorm的自动化工具gen

gorm的自动化工具gen 官方 https://gorm.io/zh_CN/gen/假设数据库结构如 这里使用gen-tool 安装 go install gorm.io/gen/tools/gentoollatest用法 gentool -hUsage of gentool:-c string配置文件名、默认值 “”、命令行选项的优先级高于配置文件。 -db string指定Driver…

大语言模型对齐技术 最新论文及源码合集(外部对齐、内部对齐、可解释性)

大语言模型对齐(Large Language Model Alignment)是利用大规模预训练语言模型来理解它们内部的语义表示和计算过程的研究领域。主要目的是避免大语言模型可见的或可预见的风险,比如固有存在的幻觉问题、生成不符合人类期望的文本、容易被用来执行恶意行为等。 从必…

【机器学习】四、计算学习理论

1 基础知识 计算学习理论(computational learning theory):关于通过“计算”来进行“学习”的理论,即关于机器学习的理论基础,其目的是分析学习任务的困难本质,为学习算法体统理论保证,并根据结…

2023年11月2日历史上的今天大事件早读

1082年11月02日宋徽宗出生 1861年11月02日辛酉政变 1910年11月02日中国社会学家和人类学家费孝通诞生 1910年11月02日畜生态学科的创始人汤逸人诞生 1917年11月02日《贝尔福宣言》和犹太复国主义 1917年11月02日美日订立“兰辛—石井协定”损害中国利益 1937年11月02日忻…

数据结构之二叉树(图解➕源代码)

前言 哈喽,大家好,这里是面包园的知识分享,在上一篇文章中我们学习了树的相关概念,了解了树形结构,那今天让我们进一步学习树的特殊结构——二叉树。 一、什么是二叉树? 二叉树的概念:根节点…

优维产品最佳实践第13期:如何避免拨测机自身网络问题?

受限于拨测节点自身的环境,单一节点的拨测结果可能并不能反映出监控实例的真实运行状态 本期EasyOps产品使用最佳实践,我们将为您揭晓: 如何基于多点决策配置拨测监控,以避免拨测机自身网络问题而误告警? 如何对指标…

GDS-enabled BeeGFS 人工智能并行存储解决方案

项目背景 HPC 和 AI 的融合正在颠覆一切。在这样的新时代,企业需要全新的存储解决方案,才能以高效且经济的方式从容应对来势汹汹的数据洪流。独立分析公司 Intersect360 开展的一项研究发现,多达 66% 的 HPC 用户目前已在执行机器学习计划。…

写一个方法实现数组元素每两个元素加一个换行,并进行文件导出

文章目录 需求分析 需求 源数据&#xff1a; 输出的数据如下&#xff1a; 分析 我们可以手写一个方法&#xff0c;方法如下&#xff1a; transformArray(arr) {var result ;for (var i 0; i < arr.length; i 2) {result arr[i] , arr[i 1];if (i 2 < arr.le…

【Kubernetes】初识k8s--扫盲阶段

文章目录 1、k8s概述2、为什么要有k8s2.1 回顾以往的应用部署方式2.2 容器具有的优势 3、k8s能带来什么 1、k8s概述 kubernetes是一个可移植、可扩展的开源平台&#xff0c;用于管理 容器化 的工作负载和服务&#xff0c;可促进申明式配置和自动化。kubernetes拥有一个庞大且快…

AutoSAR的UB位

AutoSAR的UB位 作用 在AUTOSAR&#xff08;汽车开放系统架构&#xff09;中&#xff0c;UB位&#xff08;Update Bit&#xff09;起着非常关键的作用。它主要用于指示某个信号或信号组的数据是否已被更新。以下是UB位的几个主要功能和应用情景&#xff1a; 信号更新指示&…

怎样去除视频中的杂音,保留人声部分?

怎样去除视频中的杂音&#xff0c;保留人声部分&#xff1f;这个简单嘛&#xff01;两种办法可以搞定&#xff1a;一是进行音频降噪&#xff0c;把无用的杂音消除掉&#xff1b;二是提取人声&#xff0c;将要保留的人声片段提取出来。 这就将两种实用的办公都分享出来&#xf…