一文彻底搞懂Transformer - 注意力机制

news2024/9/20 8:57:31

Transformer

一、注意力机制

在这里插入图片描述

Seq2Seq

在这里插入图片描述

注意力机制目标

在这里插入图片描述

Attention模块的主要作用是确定在给定上下文中哪些嵌入向量与当前任务最相关,并据此更新或调整这些嵌入向量的表示。

Transformer注意力机制

******注意力机制案例:在处理包含“model”一词的句子时,它通过分析句子中的其他单词(如“machine learning”或“fashion”),************计算这些单词与“model”之间的语义关系权重,并据此更新“model”的嵌入向量,以更准确地反映其在当前上下文中的含义。******

注意力机制案例

在这里插入图片描述

在这里插入图片描述

注意力机制计算公式

在这里插入图片描述

  • 生成Q、K、V向量:对于输入序列中的每个单词,都会生成对应的Query(查询)、Key(键)和Value(值)向量。这些向量通常是通过将单词的嵌入向量(Embedding Vector)输入到一个线性变换层得到的。

  • 计算Q、K的点积(注意力分数):计算Query向量与序列中所有单词的Key向量之间的点积,得到一个分数。这个分数反映了Query向量与每个Key向量之间的相似度,即每个单词与当前位置单词的关联程度。

  • Softmax函数归一化(注意力权重):这些分数会经过一个Softmax函数进行归一化,得到每个单词的注意力权重。这些权重表示了在理解当前单词时,应该给予序列中其他单词多大的关注。

  • 注意力权重加权求和(加权和向量):这些注意力权重与对应的Value向量进行加权求和,得到一个加权和向量。这个加权和向量会被用作当前单词的新表示,包含了更丰富的上下文信息。

注意力机制计算Q、K、V

_三、3种注意力机制_

在这里插入图片描述

Transformer注意力层

在这里插入图片描述

编码器输入序列通过Multi-Head Self Attention(多头自注意力)计算注意力权重。

编码器的Self Attention

解码器中的交叉注意力层:查询来自前一层解码器,而记忆键和值则来自编码器的输出。这使得解码器中的每个位置都能关注输入序列中的所有位置。

编码器-解码器两个序列通过Multi-Head Cross Attention(多头交叉注意力)进行注意力转移。

编码器-解码器的Cross Attention

在这里插入图片描述

解码器的单个序列通过Multi-Head Causal Self Attention(多头因果自注意力)进行注意力计算。

解码器的Causal Attention

神经网络算法 - 一文搞懂Transformer中的三种注意力机制

如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉[CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)]()👈

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

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

相关文章

智能升降晾衣架:NRK3301语音识别模块ic让家务变得更轻松

对于经常做家务的人来说,洗衣服和晾衣服是一件非常耗费体力和时间的任务。传统的晾衣架安装在了一个固定的高度,挂衣服和取衣服需要通过撑衣杆来晾取衣物,即便是电动升降的晾衣架,也需要人手动去操作,增加了工作量。然…

Vue 项目中导入文件时如何默认找寻该文件夹下的 index.vue 文件

文章目录 需求分析 需求 如下图,在Vue 项目中导入 frequencyChange 文件夹时如何默认找寻该文件夹下的 index.vue 文件 分析 确保项目结构和命名约定 首先,确保你的 Vue 单文件组件按照约定命名,例如: components/Example/inde…

Python酷库之旅-第三方库Pandas(080)

目录 一、用法精讲 331、pandas.Series.str.repeat方法 331-1、语法 331-2、参数 331-3、功能 331-4、返回值 331-5、说明 331-6、用法 331-6-1、数据准备 331-6-2、代码示例 331-6-3、结果输出 332、pandas.Series.str.replace方法 332-1、语法 332-2、参数 33…

【QT常用技术讲解】QTableView添加QCheckBox、QPushButton

前言 QT展示列表信息的时候通常用到列表(比如用户信息、机构信息、设备信息等菜单),当需要对某列进行修改、删除操作时,就需要加入按钮(QPushButton),当需要对多列进行右键菜单操作时&#xff0…

DjangoRF-15-分布式celery应用

前面我们同步实现了测试任务的执行,但是它有一个致命的问题。 实际项目测试任务耗时会非常长,而django框架的请求是有超时的,哪怕没有超时,这么做显然不妥。所以需要使 用异步任务的方式来执行测试任务。 发送一个执行任务的请求&…

沐风老师3DMAX纹理工具箱TexTools使用方法详解

DMAX纹理工具箱TexTools是一组工具,可帮助任何纹理艺术家完成UV和纹理相关任务。主要理念是将典型步骤简化为简单的上下文相关单击。 大多数功能仅在3dMax中处于editUVW模式时才起作用(展开UVW修改器,然后单击编辑按钮)。 【版本要求】 3dMax9及更高版本 【安装方法】 将…

EmbeddedBuilder_v1.4.1.23782 - 在工程中添加自己的C实现文件

文章目录 EmbeddedBuilder_v1.4.1.23782 - 在工程中添加自己的C实现文件概述笔记添加自己的文件夹在文件夹中建立新文件在文件夹中载入已经存在的文件修改工程编译时的包含路径和库路径添加包含路径添加实现路径 在main.c或其他实现中添加自己的头文件引用和自己的函数调用保存…

Seaborn库

目录 主要功能和特点 使用方法 实例应用 Seaborn库的最新版本有哪些新功能和改进? 如何在Seaborn中实现复杂的数据预处理步骤,例如数据清洗和转换? Seaborn与其他数据可视化库(如Matplotlib、Plotly)相比有哪些优…

【图像去雾系列】使用暗通道先验去雾算法对图像进行去雾处理

目录 一 暗通道先验去雾算法 1 雾形成机理-大气散射模型 2 暗通道先验的整体思想 二 实践 一 暗通道先验去雾算法 论文名称:Single Image Haze Removal Using Dark Channel Prior 论文地址:Single Image Haze Removal Using Dark Channel Prior | IEEE Journals & …

合合信息的OCR技术在智能文档处理方面有哪些具体的应用案例?

智能文档处理(IDP)是利用人工智能技术,自动从复杂的非结构化和半结构化文档中抽取关键数据,并将其转换成结构化数据的技术。能够自动识别、提取并结构化处理文档中的关键信息。这种技术通常基于自然语言处理(NLP)和计算机视觉等先进技术,可以…

【连续4届EI检索,SPIE 出版】第五届信号处理与计算机科学国际学术会议(SPCS 2024,8月23-25)

第五届信号处理与计算机科学国际学术会议(SPCS 2024) 将于2024年8月23-25日在中国哈尔滨举行。会议主要围绕信号处理与计算机科学等研究领域展开讨论。 会议旨在为从事信号处理与计算机科学研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技…

如何使用Wireshake解密Wi-Fi QoS Data报文?

1. 使用Wireshake解密Wi-Fi数据报文 通常当Wi-Fi发生某些问题时,我们都会抓取Wi-Fi sniffer log,用以协助分析问题,但是如果Wi-Fi使用了加密,则我们无法从sniffer log中获取到IP数据的层级,因为在Wi-Fi报文中&#xf…

非专业人士的编程梦:低代码开发平台的崛起与挑战

文章目录 每日一句正能量前言技术概览基本概念主要特点市场现状适用性分析结论 效率与质量的权衡效率提升质量与安全的挑战企业应用开发中的利弊应对策略结论 挑战与机遇挑战机遇应对策略结论 后记 每日一句正能量 书读的越多而不加思考,你就会觉得你知道得很多&…

24/8/14算法笔记 复习_逻辑回归sigmoid

import numpy as np import matplotlib.pyplot as pltdef sigmoid(x):return 1/(1np.exp(-x))x np.linspace(-5,5,100) y sigmoid(x)plt.plot(x,y,colorgreen) #损失函数 from sklearn import datasets from sklearn.linear_model import LogisticRegression from mpl_toolki…

SpringBoot教程(二十一) | SpringBoot实现定时任务

SpringBoot教程(二十一) | SpringBoot实现定时任务 单点定时任务方式一:使用ScheduledEnableScheduling注解巨坑(Scheduled任务都用了同一个线程去执行,导致定时任务存在堵塞)解决办法一:添加自…

linux监控命令

在 Linux 中,有许多命令可以用于监控系统的性能和状态。以下是一些常用的监控命令及其用途: 1. top​ 和 htop​ top ​top​ 命令显示当前系统中运行的进程列表及其资源使用情况。 top​​ ‍ htop ​htop​ 是 top​ 命令的增强版,提…

使用 Spring Event 解耦代码

​ 博客主页: 南来_北往 系列专栏:Spring Boot实战 前言 在Spring框架中,事件机制扮演着至关重要的角色,它不仅促进了组件间的互动,还在提高系统灵活性方面迈出了重要步伐。相较于常规的方法调用,这种机制显著提…

前端组件库汇总

文章目录 一、前端组件库1. ElementUI(基于 Vue 2.0 的桌面端组件库)2. Element Plus(基于 Vue 3,面向设计师和开发者的组件库)3. Vue DevUI(一个基于 DevUI Design 的 Vue3 组件库)4. vant(轻量、可定制的移动端 Vue 组件库)5. Ant Design(助力设计开发者「更灵活」…

使用Spring Boot整合ip2region获取客户端IP地理位置信息

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~ 🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志 🎐 个人CSND主页——Mi…

Spring之@Import注解

1. 前言 Import 注解 在 Spring 中占据重要地位,是 Spring 的一个重要扩展点。这篇博文我们以案例、源码、应用相结合,来系统的学习一下这个注解 2. 案例演示 2.1 代码准备 2.1.1 创建配置类 AppConfig ComponentScan("com.ys") public c…