当前位置: 首页 > news >正文

【深度学习】Transformer,Self-Attention,Multi-Head Attention

必读文章: https://blog.csdn.net/qq_37541097/article/details/117691873

论文名:Attention Is All You Need

文章目录

  • 1、Self-Attention 自注意力机制
  • 2、Multi-Head Attention

1、Self-Attention 自注意力机制

在这里插入图片描述

Query(Q)表示当前时间步的输入信息,它与Key(K)进行点积操作,用于计算注意力权重。
Key(K)表示序列中所有时间步的信息,与Query(Q)进行点积操作,用于计算注意力权重。
Value(V)包含了序列中每个时间步的隐藏状态或特征表示,根据注意力权重对其进行加权求和,得到最终的上下文向量。

注意力机制计算过程:

  1. 计算注意力分数(Attention Scores)

    注意力分数表示查询Q与键K之间的相关性,计算公式为:

A t t e n t i o n S c o r e ( Q , K ) = Q ⋅ K ⊤ d k Attention Score(Q, K) = \frac{Q \cdot K^\top}{\sqrt{d_k}} AttentionScore(Q,K)=dk QK

其中,(d_k) 是查询和键的维度。

  1. 计算注意力权重(Attention Weights)

    通过对注意力分数应用softmax函数,将分数转换为注意力权重,使它们归一化并总和为1:

A t t e n t i o n W e i g h t ( Q , K ) = softmax ( A t t e n t i o n S c o r e ( Q , K ) ) Attention Weight(Q, K) = \text{softmax}(Attention Score(Q, K)) AttentionWeight(Q,K)=softmax(AttentionScore(Q,K))

  1. 计算加权值(Weighted Values)

    使用注意力权重对值V进行加权,得到加权值,计算公式如下:

W e i g h t e d V a l u e s ( Q , K , V ) = Attention Weight ( Q , K ) ⋅ V Weighted Values(Q, K, V) = \text{Attention Weight}(Q, K) \cdot V WeightedValues(Q,K,V)=Attention Weight(Q,K)V

在Transformer的编码器和解码器中,Q、K、V的定义稍有不同:

在编码器(Encoder)中:

  • 查询(Q):来自上一层编码器的输出。
  • 键(K):来自上一层编码器的输出。
  • 值(V):来自上一层编码器的输出。

在解码器(Decoder)中,与编码器不同的是,还会使用编码器的输出作为额外的键(K)和值(V):

  • 查询(Q):来自上一层解码器的输出。
  • 键(K):来自编码器的输出。
  • 值(V):来自编码器的输出。

2、Multi-Head Attention

Multi-Head Attention 是 Transformer 模型中的一种注意力机制,它扩展了普通的自注意力机制(Self-Attention)以捕获更丰富的上下文信息。

在 Multi-Head Attention 中,通过使用多组独立的注意力头(attention heads),可以从不同的表示子空间中学习到更多的关系。每个注意力头都有自己对应的 Q、K、V 矩阵,通过独立的线性映射将输入进行转换得到。然后对每个注意力头进行注意力计算,并将它们的输出进行拼接,最后再经过一个线性映射得到最终的输出。

具体而言,Multi-Head Attention 的计算过程如下:

在这里插入图片描述

使用多个注意力头可以让模型同时关注不同位置和表示子空间的信息,从而提升模型的表达能力和泛化性能。

相关文章:

【深度学习】Transformer,Self-Attention,Multi-Head Attention

必读文章: https://blog.csdn.net/qq_37541097/article/details/117691873 论文名:Attention Is All You Need 文章目录 1、Self-Attention 自注意力机制2、Multi-Head Attention 1、Self-Attention 自注意力机制 Query(Q)表示当…...

CADintosh X for mac CAD绘图软件2D CAD 程序 兼容 M1

CADintosh X for Mac是一个功能强大的2D CAD绘图程序,专为Mac用户设计。它由Lemke Software开发,提供了一套丰富的工具和功能,使用户能够轻松创建高质量的技术图纸,平面图和设计。 CADintosh X for Mac具有直观的用户界面&#x…...

【读书笔记】《厌女》- [日]上野千鹤子 - 2010年出版

不停的阅读,然后形成自己的知识体系。 2023.08. 读 《厌女》- [日]上野千鹤子 - 2010年出版 - 豆瓣读书 文章目录 2023年中文版作者序2015年中文版作者序第一章 喜欢女人的男人的厌女症 2023年中文版作者序 ‘厌女症’的现象本来如‘房间里的大象’,因为…...

Android 从其他xml文件中获取View组件数据

问题 Android Studio 我想在 trace.java 从setting.java绑定的页面activity_setting.xml中 的editview中获取数据 解决方案 仅适用于 在同一应用的不同组件之间共享数据 在 SettingActivity.java 中,当用户准备离开当前活动时,可以将 EditText 中的数…...

java 数组的使用

数组 基本介绍 数组可以存放多个同一类型的数据,数组也是一种数据类型,是引用类型。 即:数组就是一组数据。 数组的使用 1、数组的定义 方法一 -> 单独声明 数据类型[] 数组名 new 数据类型[大小] 说明:int[] a new int…...

Jmeter(一) - 从入门到精通 - 环境搭建(详解教程)

1.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器…...

外贸企业选择CRM的三大特点

外贸营销管理CRM云平台可以帮助外贸企业实现更高质量的营销管理和客户管理。无论是销售、市场营销或客户服务团队的成员,CRM都可以帮助企业更好地理解客户需求,并提供更好的服务。 1.便捷轻量级 云平台的一大优势是用户可以随时随地访问数据&#xff0…...

软件测试与游戏测试的区别

软件测试和游戏测试是两种不同领域的测试活动,它们之间存在一些区别,包括以下几个方面: 1. 测试目标 软件测试主要是验证和确认软件功能是否符合预期,通常关注软件的正确性、稳定性和兼容性等方面;而游戏测试则更关注游…...

Programming Abstractions in C阅读笔记:p72-p75

《Programming Abstractions In C》阅读P72-p75,每次阅读其实都有很多内容需要总结,这里摘抄其中一部分。 一、技术总结 1.字符串数组 学习《Programming Abstractions in C》第75页的时候,遇到一段代码: static string bigCitie…...

bash测试test详解

bash测试test详解 概述 任何相对完整的计算机语言都能够测试某个条件,然后根据测试的结果采取不同的动作。对于测试条件, Bash使用test命令、各种方括号和圆括号、if/then结构等来测试条件。 7.1. Test Constructs 一个if/then语句结构测试一个或多个命…...

你来问我来答,ChatGPT对话软件测试!主题互动

你来问我来答,ChatGPT对话软件测试! 大家好,我是聪明而有趣的ChatGPT。作为IT专家,我将竭尽全力为你解答技术问题,并提供适合各个级别人群理解的解决方案。无论你是初学者还是专业人士,我都会用智能、简单…...

无人机巢的作用及应用领域解析

无人机巢作为无人机领域的创新设备,不仅可以实现无人机的自主充电和电池交换,还为无人机提供安全便捷的存放空间。为了帮助大家更好地了解无人机巢,本文将着重解析无人机巢的作用和应用领域。 一、无人机巢的作用 无人机巢作为无人机技术的重…...

面试热题(环形链表II)

给定一个链表,返回链表开始入环的第一个节点。 从链表的头节点开始沿着 next 指针进入环的第一个节点为环的入口节点。如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引…...

策略模式:优雅地实现可扩展的设计

策略模式:优雅地实现可扩展的设计 摘要: 策略模式是一种常用的设计模式,它可以帮助我们实现可扩展的、灵活的代码结构。本文将通过一个计算器案例来介绍策略模式的概念、使用场景以及如何在实际项目中应用策略模式来提高代码的可维护性和可扩…...

从8个新 NFT AMM,聊聊能如何为 NFT 提供流动性

DeFi 的出现,开启了数字金融民主化的革命。其中,通过 AMM 自由创建流动性池极大地增加了 ERC-20 Token 的流动性,并为一些长尾 Token 解锁了价值的发现,因而今天在链上可以看到各种丰富的交易、借贷和杠杆等活动。 而另一方面&am…...

习题1.27

先写代码 (defn square [x] (* x x)) (defn expmod[base exp m](cond ( exp 0) 1(even? exp) (mod (square (expmod base (/ exp 2) m)) m):else (mod (* base (expmod base (- exp 1) m)) m)))(defn fermat-test[n](defn try-it [a](cond ( a n) (println "test end&qu…...

简单游戏截图_可控截取内容2

一个需求 我需要在场景中截取不同层级的截图(如只截模型或只截UI或只截外部相加看到的画面 或全都截或和Shader配合呈现人眼夜视仪热成像的画面切换) 将截图排到列表中,在场景UI中展示出来 如何做 相机要能够看到不同的画面 将当前帧画面存储下来 将存储的画面展示出…...

跨域+四种解决方法

文章目录 一、跨域二、JSONP实现跨域请求三、前端代理实现跨域请求四、后端设置请求头实现跨域请求五、Nginx代理实现跨域请求5.1 安装Nginx软件5.2 使用Ubuntu安装nginx 本文是在学习课程满神yyds后记录的笔记,强烈推荐读者去看此课程。 一、跨域 出于浏览器的同…...

RW-Everything的RwDrv.sys驱动调用

RW-Everything的RwDrv.sys驱动调用 一、RwDrv.sys二、示例代码三、总结 一、RwDrv.sys RW-Everything是一个硬件底层的工具,可用于物理内存、BIOS、PCI和IO端口的查看和修改,其基于驱动RwDrv.sys来实现,利用这个驱动可以实现系统的侵入。 二…...

0101docker mysql8镜像主从复制-运维-mysql

1 概述 主从复制是指将主数据库的DDL和DML操作通过二进制日志传到从库服务器,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。 Mysql支持一台主库同时向多台从库进行复制,从库同时可以…...

OpenHarmony 实战——从零构建本地开发环境与SDK深度定制

1. 为什么需要定制OpenHarmony开发环境? 第一次接触OpenHarmony的开发者经常会问:为什么不能直接用官方提供的开发环境?这个问题我也曾经困惑过。经过多个项目的实战,我发现标准环境存在三个明显短板: 首先&#xff…...

别再折腾内网穿透了!用EC600N 4G模块+华为云IoTDA,5分钟搞定远程宠物定位数据上传

5分钟实现宠物定位数据上云:EC600N 4G模块与华为云IoTDA实战指南 当你的宠物突然从视线中消失时,那种焦虑感是任何宠物主人都深有体会的。传统的蓝牙防丢器仅有几十米的有效范围,而GPS定位器又常受限于复杂的网络配置。现在,通过…...

JetBrains IDE试用期重置终极指南:如何免费延长30天评估期

JetBrains IDE试用期重置终极指南:如何免费延长30天评估期 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter JetBrains IDE试用期重置工具(ide-eval-resetter)是一款专业的开源解…...

3步解放设计师双手:Layerdivider如何将单张插画智能分层为可编辑PSD

3步解放设计师双手:Layerdivider如何将单张插画智能分层为可编辑PSD 【免费下载链接】layerdivider A tool to divide a single illustration into a layered structure. 项目地址: https://gitcode.com/gh_mirrors/la/layerdivider 想象一下,当你…...

【亲测免费】 TSK UF系列Prober操作手册下载

TSK UF系列Prober操作手册下载 【下载地址】TSKUF系列Prober操作手册下载 本仓库提供TSK UF系列Prober的操作手册下载,具体为UF190/UF200系列的manual。TSK UF系列Prober是半导体厂针测的重要设备,该手册详细介绍了设备的各项功能、操作步骤以及维护保养…...

词达人自动化助手:终极指南让英语词汇学习效率提升10倍

词达人自动化助手:终极指南让英语词汇学习效率提升10倍 【免费下载链接】cdr 微信词达人,高正确率,高效简洁。支持班级任务及自选任务 项目地址: https://gitcode.com/gh_mirrors/cd/cdr 厌倦了在词达人平台上花费数小时完成重复的词汇…...

自动同步总失败?NotebookLM本地缓存+云端快照双轨备份,手把手配置到上线仅需7分钟

更多请点击: https://intelliparadigm.com 第一章:NotebookLM数据备份方案 NotebookLM 是 Google 推出的基于用户上传文档进行 AI 助理问答的工具,但其本身不提供原生数据导出或持久化存储功能。为防止项目上下文丢失、模型重置或账户异常导…...

KeyboardChatterBlocker:拯救老旧机械键盘的终极免费防连击方案

KeyboardChatterBlocker:拯救老旧机械键盘的终极免费防连击方案 【免费下载链接】KeyboardChatterBlocker A handy quick tool for blocking mechanical keyboard chatter. 项目地址: https://gitcode.com/gh_mirrors/ke/KeyboardChatterBlocker 你是否曾经在…...

2026年企业做GEO推广找哪家?推荐几家源头厂家

2026年,GEO赛道正在经历一场剧烈的洗牌。根据界面新闻、极客公园、IT之家及多家第三方机构近期密集发布的行业评测,头部服务商格局已初步成型,但大量贴牌套壳的“伪源头”仍在搅浑市场。企业在选型时最焦虑的问题已经从“要不要做GEO”变成了…...

Cortex-M中断优先级配置与优化实践

1. 中断处理机制基础解析在嵌入式系统开发中,中断处理是最核心的机制之一。Cortex-M系列处理器采用嵌套向量中断控制器(NVIC)来管理中断优先级,其设计哲学是允许高优先级中断打断低优先级中断的执行,形成中断嵌套。这种机制确保了关键任务能够…...