学渣适用版——Transformer理论和代码以及注意力机制attention的学习

news2024/9/24 11:31:13

参考一篇玩具级别不错的代码和案例

自注意力机制

注意力机制是为了transform打基础。
参考这个自注意力机制的讲解流程很详细,
但是学渣一般不知道 key,query,value是啥。
结合B站和GPT理解
在这里插入图片描述

注意力机制是一种常见的神经网络结构,用于处理序列数据或者其他类型的数据,其中的关键术语包括 key,query 和 value。

Key(键)是一个向量,用于表示输入数据中的某个特征,通常是通过矩阵乘法和非线性变换得到的结果。
Query(查询)也是一个向量,用于表示注意力机制当前所关注的部分。在每个时间步骤,注意力机制都会根据输入的
query,对输入数据进行加权处理。 Value(值)是一个向量,用于表示输入数据中的具体数值或特征。
具体地说,注意力机制的运作过程是这样的:首先,将输入数据经过线性变换得到 key,query 和 value 向量。然后,针对每个
query 向量,计算它与所有 key 向量之间的相似度得分,并将这些得分进行 softmax 处理,以得到每个 key
向量的权重。最后,将所有 key 向量根据对应的权重加权求和,得到一个加权平均的 value 向量,作为最终的输出。

通过这种方式,注意力机制能够在输入数据中寻找相关的部分,并且根据当前的查询进行自适应的加权处理。这种机制被广泛应用于自然语言处理、语音识别、计算机视觉等领域。

Regenerate response

【大白话浅谈【注意力机制】】 【精准空降到 02:42】 https://www.bilibili.com/video/BV1Ff4y187nr/?p=3&share_source=copy_web&vd_source=dab83d5b330f632d6bccec4d78fd0119&t=162
在这里插入图片描述

transform解读

这块作者解释的 很不错!

也就是说,任意两个相距k个时间步的位置编码向量的内积都是相同的,这就相当于蕴含了两个时间步之间相对位置关系的信息。此外,每个时间步的位置编码又是唯一的,这两个很好的性质使得上面的公式作为位置编码是有理论保障的
在这里插入图片描述
本学渣不是很理解这里的key和value 有什么区别

划重点 key和value的区别

其实就是 键值对,用key和query计算结果,给value加权重!!!
感谢活的明白大哥,他果然活的很明白。
在这里插入图片描述

进阶资源推荐

知乎的哈弗论文解读:
搞懂Transformer结构,看这篇PyTorch实现就够了(上) - 忆臻的文章 - 知乎
另一个知乎文章

https://www.ylkz.life/deeplearning/p10391698/ 还有这位月来客栈写得,把原理和pytorch的源码都讲了遍,就是写得太详细了。可以参考下。

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

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

相关文章

[计算机网络(第八版)]第二章 物理层(复习笔记)

2.1 物理层的概念 物理层是屏蔽掉传输媒体和通信手段的差异,为数据链路层提供一个统一的数据传输服务,将比特流按照传输媒体的需要进行编码,然后将信号通过传输媒体传输到下一个节点的物理层,并不是指具体的传输媒体。用于物理层…

一文带你看懂:如何进行一次高质量CR?

程序员对代码评审(Code Review)不可谓不熟悉,而代码评审也已经是许多组织的标准化实践。结合笔者的五年多的开发经验,既有经历过零CR的小组织,也有接触过完善CR规范的大厂团队。对于“如何进行一次--高质量的组内代码C…

力扣-销售员

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:607. 销售员二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结前言 …

【测试】自动化测试03(JUnit)

努力经营当下,直至未来明朗! 文章目录JUnit一) 注解1. Test2. BeforeEach3. BeforeAll4. AfterEach5. AfterAll二) 断言(Assertions类)三)用例的执行顺序四)参数化五)测试…

Qt windeployqt.exe 打包qml

Qt系列文章目录 文章目录Qt系列文章目录前言一、遇到的坑二、参考前言 我们在QtCreator下面开发程序,一般都会遇到工程发布给客户使用的情况。我们通常会使用Qt自带的打包工具:windeployqt.exe。 windeployqt.exe是Qt自带的工具,用于创建应用…

使用windwow windbg 吃透64位分页内存管理

前言 分页基础概念是操作系统基础知识,网上已经有太多太多了。所以本文记录使用windwow内核调试工具验证理论知识。 具体可以参阅intel volume3的 4.1.1 Four Paging Modes章节。 简而言之:CR0.PG 0表示不开启分页.并且根据CR4各种标志开启不同类别的…

力扣-变更性别

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:627. 变更性别二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结前言…

算法设计与分析期末考试复习(三)

动态规划 动态规划算法与分治法类似,其基本思想也是将待求解问题分成若干个子问题。但是经分解得到的子问题往往不是互相独立的。在用分治法求解时,有些子问题被重复计算机了许多次。 如果能够保存已解决的子问题的答案,而在需要时再找出已求…

Scala-抽象类、匿名子类、伴生对象、单例模式

抽象类 匿名子类 伴生对象(单例对象) 单例设计模式 抽象类 定义抽象类:abstract class Person{} //通过 abstract 关键字标记抽象类定义抽象属性:val|var name:String //一个属性没有初始化,就是抽象属性定义抽象…

应用场景六:同时支持CP343和CP341功能(Modbus连接仪表,以太网连接WINCC)

应用描述: 桥接器同时支持西门子PLC的CP343以太网通讯模块和CP341串口通讯模块的功能。可以同时通过ModbusRTU连接仪表、变频器等串口设备,同时可以通过网口连接组态监控软件WINCC。PLC内部不需要编程,也不需要进行硬件组态配置,…

FME+YOLOV7写DNF自动刷图脚本

目录 前言 一、难点分析 二、实现流程 1.DNF窗口位置获取 2.获取训练数据 3.数据标注 4.数据格式转换 5.数据训练 5.刷图逻辑编写 前言 这是一篇不务正业的研究,首先说明,这不是外挂!这不是外挂!这不是外挂!这只是用a…

【网络原理10】构造HTTP请求、HTTPS加密

目录 一、构造HTTP请求 ①使用form表单构造HTTP请求: form表单是如何提交的 form提交的缺点 ②基于ajax构造http请求 如何使用Jquery框架 二、HTTPS 运营商劫持 HTTP的加密版本:HTTPS ①对称加密:客户端和服务端使用同一把密钥&…

【AcWing】差分及其应用

&#x1f386;音乐分享 光辉岁月 (粤语版)_BEYOND 所谓差分&#xff0c;就是前缀和的逆运算 &#xff08;不懂前缀和的同学可以去C站看一下&#x1f602;&#xff09; 797. 差分 - AcWing题库 代码 #include<iostream> using namespace std; const int N 1e5 10…

怎样选择运动耳机、5款最佳运动蓝牙耳机推荐

你是否在跑步时大幅度抖动让耳机松落&#xff0c;不得不一遍又一遍的塞紧耳机&#xff1f;你是否在游泳时因为耳机进水而懊恼自己大意&#xff1f;没错&#xff0c;在运动过程中这些情况我都有遇到过&#xff01;运动耳机因其使用都是在跑步、游泳、骑行、徒步等场景&#xff0…

Apache Hadoop生态部署-Maxwell(实时数据同步)采集节点安装

目录 Apache Hadoop生态-目录汇总-持续更新 1&#xff1a;安装包准备 2&#xff1a;MySQL 环境准备 2.1&#xff1a;开启MySQL Binlog 2.2&#xff1a;验证mysql配置是否正确 2.3&#xff1a;初始化Maxwell元数据库,分配账号 3&#xff1a;安装 4&#xff1a;测试 Apach…

【开发规范】go项目开发中的[流程,git,代码,目录,微服务仓库管理,静态检查]

文章目录前言一、有哪些规范我们应该遵循二、项目开发流程三、git的代码分支管理1. 分支管理2. commit规范三、go的代码规范四、go项目目录规范五、微服务该采用multi-repo还是mono-repo&#xff1f;1. 引言2. Repos 是什么?3. 什么是 Mono-repo?4. Mono-repo 的劣势5. 什么是…

1、算法导论---时间复杂度、确定性和非确定性图灵机、算法的确定性与非确定性、P问题、NP问题、规约/约化、NPC问题、NP-hard问题

算法导论1、 时间复杂度2、图灵机3、算法的确定性与非确定性4、P问题5、NP问题6、规约/约化7、NPC问题8、NP-Hard问题9、四大问题关系1、 时间复杂度 要想了解算法的问题&#xff0c;首先要知道问题的分类&#xff0c;而要想知道问题的分类&#xff0c;就要先了解时间复杂度。…

_vue-2

v-model实现原理 我们在 vue 项目中主要使用 v-model 指令在表单 input、textarea、select 等元素上创建双向数据绑定&#xff0c;我们知道 v-model 本质上不过是语法糖&#xff08;可以看成是value input方法的语法糖&#xff09;&#xff0c;v-model 在内部为不同的输入元素…

什么是原型、原型链?原型和原型链的作用

1、ES6之前&#xff0c;继承都用构造函数来实现&#xff1b;对象的继承,先申明一个对象&#xff0c;里面添加实例成员<!DOCTYPE html> <html><head><meta charset"utf-8" /><title></title></head><body><script…

Ubuntu(虚拟机)的Anaconda 及使用

安装Anaconda 使用firefox打开Ananconda网址Anaconda | The Worlds Most Popular Data Science Platform 下载后有.sh文件&#xff1a; Anaconda3-2022.10-Linux-x86_64.sh 进入所在目录打开终端并输入 $ bash Anaconda3-2022.10-Linux-x86_64.sh 然后开始安装。 对于给…