【机器学习300问】132、自注意力机制(Self-Attention)和传统注意力机制(Attention)的区别?

        最近学习注意力机制的时候,发现相同的概念很多,有必要给这些概念做一下区分,不然后续的学习可能会混成一团。本文先区分一下自注意力机制传统注意力机制。我会先直接给出它们之间有何区别的结论,然后通过一个例子来说明。

一、注意力机制和自注意力机制的区别

(1)关注的对象不同

  • 注意力机制通常设计两个不同的序列
  • 自注意力机制则是在单一序列内部操作

(2)应用场景不同

  • 注意力机制常用在跨序列的信息传输任务中,当我们说“传统注意力机制”的时候,其实是指全局注意力机制(Global Attention),比如机器翻译任务。
  • 自注意力机制则多用在需要理解序列内部结构的任务,比如自然语言处理中的句子表示学习任务,Transformer架构通过自注意力机制直接建模句子中所有单词之间的相互依赖关系,生成高质量的句子表示。

(3)计算方式不同

  • 注意力机制涉及跨序列的匹配和权重分配,通常在编码器和解码器之间构建一个注意力分布,强调输入序列中对生成特定输出最相关的部分。

  • 自注意力机制是计算序列内所有元素两两之间的相似性,然后基于这些相关性重新加权序列中的元素,以增强对序列全局上下文的理解。

二、举例说明两者的区别

(1)传统注意力机制的例子

        假设我们正在处理英译法机器翻译任务,源句为"The movie was boring.",在典型的编码器-解码器架构中,源句经过编码器处理,转化为一系列向量表示,每个向量对应英语句子中的一个单词。

        在生成法语句子的第一个词时,解码器会使用注意力机制“看”英语句子的不同部分。比如,如果第一个法语词应该是“Le”,这很可能对应英语的定冠词“The”。此时,解码器(作为查询)会查看英语序列中的各个单词(作为键),并基于它们与“Le”这个目标词的相关性来分配注意力权重。

        最终,它可能会发现“the”这个英语单词与当前输出最相关,于是给予它更高的权重,而其它单词权重较低。这样,解码器就能更加关注与当前翻译任务最相关的输入部分。

(2)自注意力机制的例子

        假设我们在分析一个句子的情感色彩:“The movie was boring but the acting was superb.” 使用自注意力机制,我们不是在不同序列间寻找关联,而是在这个句子内部探索词语之间的相互关系。

        在自注意力的计算过程中,对于句子中的每个词(比如“boring”),模型会计算这个词与句子中所有其他词(包括它自己)的相关性。这意味着“boring”这个词会基于它与“movie”、“was”、“but”等词的上下文关系来重新加权。在这个例子中,“boring”与“movie”关系紧密,因为它修饰“movie”,所以模型可能会给“movie”较高的权重,而像“superb”这样的词由于情感色彩相反,可能获得较低的权重。通过这样的过程,每个词都被赋予了一个基于其在句子中角色和上下文的新表示,从而帮助模型更好地理解整个句子的含义。

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

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

相关文章

【C++题解】1711. 输出满足条件的整数1

问题:1711. 输出满足条件的整数1 类型:简单循环 题目描述: 有这样的两位数,其十位上的数字比个位上的数字要大,且十位和个位上的数字之和为偶数,请找出所有的满足条件的 2 位数。 输入: 无。…

Spring IOC 控制反转总结

Spring IOC 控制反转总结 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 在现代Java开发中,Spring框架已成为不可或缺的工具,其核心概…

想法是否可行(学习笔记)

切入时机 进入市场的切入时机是否成熟,现有的技术手段和基础设施是否能够满足需求,用户的使用习惯和心理认知是怎么样的? 运营推广 有哪些渠道进行运营推广,产品的本身是否足够好,是否有足够的留存,是否能…

前端算法--括号⽣成

题⽬描述 数字 n 代表⽣成括号的对数,请你设计⼀个函数,⽤于能够⽣成所有可能的并且 有效的 括号组合。 示例: 输⼊: n 3 输出: [ "((()))", "(()())", "(())()", "()(()…

Unity的Excel转表工具

该Excel工具主要由Python语言完成,版本为3.x 主要功能: 1.转换后的数据存储结构为二进制。 2.excel文件可以选择多种数据类型:int、float、string、一维(int、float、string)、二维int、Map(int/int、in…

Hive基础知识(十九):Hive 自定义函数

1. 自定义函数 1)Hive 自带了一些函数,比如:max/min 等,但是数量有限,自己可以通过自定义 UDF 来方便的扩展。 2)当 Hive 提供的内置函数无法满足你的业务处理需要时,此时就可以考虑使用用户自…

xcode15 升级大坑

Q:iOS17 SDK 模拟器 7个多G,一直安装失败,都是网络中断,试了第六次竟然硬生生下载并安装成功。如果实在不成功尝试一下步骤: 1.直接在Apple官网找到你要下载的文件,https://developer.apple.com/download/all/ 2.下…

golang常用库之-godotenv库从.env文件读取配置数据

文章目录 golang常用库之-从.env文件读取配置数据godotenv库使用 golang常用库之-从.env文件读取配置数据 godotenv库从.env文件中读取配置, 然后存储到程序的环境变量中。在代码中可以使用读取非常方便。 godotenv库 官方:https://pkg.go.dev/github…

图的搜索。

用邻接表作为图的存储结构建立一个图&#xff0c;并对此图分别进行深度优先搜索和广度优先搜索遍历。 #include<stdio.h> #include<stdlib.h> #define MAX_VERTEM_NUM 10 #define INFINITY 32768 typedef enum{ DG,DN,UDG,UDN }graghKind; //digraph D…

【AI应用探讨】—小型神经网络应用场景

目录 1. 移动设备 2. 物联网设备 3. 无人驾驶 4. 可穿戴设备 5. 其他领域 1. 移动设备 a. 图像识别 用例&#xff1a;在智能手机和平板电脑上运行的实时图像识别应用&#xff0c;如人脸识别、物体识别等。优势&#xff1a;小型神经网络能够在这些设备上快速运行&#xff…

Visual Studio Code 配置 java/maven 环境(Windows版)

在Windows版Visual Studio Code&#xff08;VS Code&#xff09;中配置Java和Maven环境&#xff0c;可以按照以下步骤进行&#xff1a; 1. 安装JDK 确保已经安装了JDK 8或更高版本。建议访问Oracle官网或OpenJDK官网下载相应版本的JDK。安装JDK后&#xff0c;配置系统环境变量…

OpenFeign 的请求处理流程

流程 1. 定义 Feign 客户端接口 首先&#xff0c;开发者需要定义一个 Feign 客户端接口&#xff0c;并使用 FeignClient 注解进行配置。例如&#xff1a; FeignClient(name "aService", url "http://localhost:8080") public interface ServiceProvid…

Python | Leetcode Python题解之第169题多数元素

题目&#xff1a; 题解&#xff1a; class Solution:def majorityElement(self, nums: List[int]) -> int:count 0candidate Nonefor num in nums:if count 0:candidate numcount (1 if num candidate else -1)return candidate

linux下编译安装python3

目录 一、注意事项 二、安装前依赖安装 三、下载python3 四、编译安装 五、查看是否安装成功 一、注意事项 linux下一般会自带python2&#xff0c;很多程序会依赖python2,所以要在python2基础上安装python3 二、安装前依赖安装 yum -y install zlib* yum install libffi-d…

Jotai-灵活的、细粒度的 React 状态管理库

一、Jotai是什么&#xff1f; Jotai 是一个用于 React 的轻量级状态管理库&#xff0c;名字来源于日语中的 "状態" (Jōtai)&#xff0c;意思是“状态”。它的设计目标是提供一种简单、灵活且强大的方式来管理 React 应用中的状态&#xff0c;特别适合处理复杂的状态…

【漏洞复现】用友 U9 PatchFile.asmx 任意文件上传漏洞

免责声明&#xff1a; 本文内容旨在提供有关特定漏洞或安全漏洞的信息&#xff0c;以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步&#xff0c;并非出于任何恶意目的。阅读者应该明白&#xff0c;在利用本文提到的漏洞信息或进行相关测…

幂等的实现方案

幂等在开发中的概念 对于同一个系统&#xff0c;在同样条件下&#xff0c;一次请求和重复多次请求对资源的影响是一致的&#xff0c;就称该操作为幂等的。 常见的幂等的例子 银行系统中&#xff0c;一笔转账应当只扣一次钱。 商城系统中&#xff0c;一个订单只能提交一次&a…

PostgreSQL逻辑备份-pg_dumpall

pg_dumpall 用于将所有数据库转储到一个文本文件中。该文本文件包含可用作恢复数据 库的 SQL 命令。它通过为集群中的每个数据库调用 pg_dump 来做到这一点。 pg_dumpall 还转储所有数据库共有的全局对象&#xff0c;即数据库角色和表空间&#xff08;pg_dump 不 保存这些对…

LeetCode刷题(739/496/503)/华为od转盘寿司-单调栈

739.每日温度 给定一个整数数组 temperatures &#xff0c;表示每天的温度&#xff0c;返回一个数组 answer &#xff0c;其中 answer[i] 是指对于第 i 天&#xff0c;下一个更高温度出现在几天后。如果气温在这之后都不会升高&#xff0c;请在该位置用 0 来代替。 示例 1: 输…

IDEA引入本地jar包的两种方法(idea程序引入和maven)_idea 引入jar-CSDN博客

IDEA引入本地jar包的两种方法&#xff08;idea程序引入和maven&#xff09;_idea 引入jar-CSDN博客