一文极速了解【自注意力机制】

news2024/11/23 23:44:22

当下如火如荼的大模型,其中的关键技术就是注意力机制(Attention),于2015年提出。2017年的“Attention is all you need”一文提出了Transformer模型,去掉RNN,只保留注意力,性能吊打所有机器翻译模型,是NLP发展的一个里程碑。
Attention的最主要的用途是自然语言处理,比如机器翻译、情感分析;也有学者将其用于图像处理,比如Vision Transformer(ViT),用了自注意力机制进一步提高了模型在ImageNet的分类性能。

目录

  • 含义
  • 计算步骤
    • 输入x映射到三元组(q,k,v)
    • 计算权重向量 α
    • 计算输出向量 c
    • 注意力的意义
    • 公式总结
  • 多头自注意力
    • 多头的意义

含义

注意力机制(Attention)最初用于改进循环神经网络(RNN),提高Sequence-to-Sequence (Seq2Seq) 模型的表现,主要是为了缓解模型对于长序列的遗忘问题。注意力机制允许模型在处理数据时,动态地关注数据的某些部分,而非静态地处理整个输入。

自注意力机制 (Self-Attention) 是注意力机制的一种扩展,不局限于 Seq2Seq 模型,可以用于任意的 RNN。它允许模型在处理一个序列时,计算序列内各个元素之间的相互关系。
后来 Transformer 模型将 RNN 剥离,只保留注意力机制。 与 RNN + 注意力机制相比,只用注意力机制居然表现更好,在机器翻译等任务上的效果有大幅提升。

自注意力层的输入是序列(x1,…,xm),其中向量的大小都是din * 1。
其有两个显著优点,
第一,序列的长度 m 可以是不确定的,可以动态变化。但是神经网络的参数数量保持不变。
第二,输出的向量 ci 不是仅仅依赖于向量 xi,而是依赖于所有的输入向量 (x1, …, xm)。

自注意力层有三个参数矩阵,分别表示query、key、value:

在这里插入图片描述

 

计算步骤

输入x映射到三元组(q,k,v)

首先,对于所有的 i = 1, · · · , m,把输入的 xi 映射到三元组 (qi, ki, vi):

在这里插入图片描述
在这里插入图片描述
 

计算权重向量 α

在这里插入图片描述

在这里插入图片描述

 

计算输出向量 c

在这里插入图片描述

 

注意力的意义

在这里插入图片描述
 

公式总结

在这里插入图片描述
dk是K的维度,用来缩放点积,避免得到太大的数值。

非常推荐大家去阅读一个白话解释这个公式的博客,讲得非常好,包括为什么要有Q、K、V三个矩阵,为什么Transformer能做到并行数据处理等。《Self-attention 公式解释》

 

多头自注意力

上面介绍的是单头自注意力层,实践中更常用的是多头自注意力层,它是多个单头的组合。
设多头由 l 个单头组成。每个单头有自己的 3 个参数矩阵,所以多头一共有 3l 个参数矩阵。它们的输入都是序列 (x1, · · · , xm),它们的输出都是长度为 m 的向量序列。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
 

多头的意义

1、并行学习多种关系:

多头自注意力通过 并行地运行多个自注意力“头” 来实现。每个“头”学习序列中不同的特征或关系。这允许模型在不同的表示子空间同时捕获序列的多种方面,学习更多样化的特征,如不同类型的语义和句法信息。

2、提高模型的表达能力:

多头机制增加了模型的表达能力。不同的注意力头可以关注序列的不同部分,使模型能够更全面地理解和表示数据。

总的来做,与单头相比,多头能提供更丰富的信息捕获能力和更好的泛化能力,提高了模型在处理复杂序列数据时的表达能力和性能。

 
本文内容为看完王树森和张志华老师的《深度强化学习》一书的学习笔记,十分推荐大家去看原书!

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

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

相关文章

Android Studi安卓读写NDEF智能海报源码

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?id615391857885&spma1z10.5-c.w4002-21818769070.11.1f60789ey1EsPH <?xml version"1.0" encoding"utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmln…

Intel杀回车载计算领域,极氪首发其第一代AI SoC

作者 |德新 编辑 |王博 Intel低调地重新杀回车载计算领域。 在两个月前&#xff0c;在上海举办的进博会上&#xff0c;Intel对外展示了基于新一代酷睿核心打造的智能座舱平台。 在此之前&#xff0c;这家芯片巨头任命了服役公司20多年的老将Jack Weast作为汽车业务的全球负责…

Zookeeper启动报错常见问题以及常用zk命令

Zk常规启动的命令如下 sh bin/zkServer.sh start 启动过程如果存在失败&#xff0c;是没办法直接看出什么问题&#xff0c;只会报出来 Starting zookeeper … FAILED TO START 可以用如下命令启动&#xff0c;便于查看zk启动过程中的详细错误 sh bin/zkServer.sh start-for…

深度学习中Numpy的一些注意点(多维数组;数据类型转换、数组扁平化、np.where()、np.argmax()、图像拼接、生成同shape的图片)

文章目录 1多维数组压缩维度扩充维度 2numpy类型转换深度学习常见的float32类型。 3数组扁平化4np.where()的用法5np.argmax()6图像拼接7生成同shape的图片&#xff0c;指定数据类型 1多维数组 a.shape(3,2);既数组h3&#xff0c;w2 a.shape(2,3,2);这里第一个2表示axis0维度上…

《30天自制操作系统》学习笔记(七)

先体验一下编译仿真方法&#xff1a; 30天自制操作系统光盘代码在下面链接&#xff0c;但是没有编译仿真工具&#xff1a; https://gitee.com/zhanfei3000/30dayMakeOS 仿真工具在下面链接&#xff1a; https://gitee.com/909854136/nask-code-ide 这是一个集成的编译仿真工…

综述:自动驾驶中的 4D 毫米波雷达

论文链接&#xff1a;《4D Millimeter-Wave Radar in Autonomous Driving: A Survey》 摘要 4D 毫米波 (mmWave) 雷达能够测量目标的距离、方位角、仰角和速度&#xff0c;引起了自动驾驶领域的极大兴趣。这归因于其在极端环境下的稳健性以及出色的速度和高度测量能力。 然而…

Xshell无法ssh连接虚拟机问题或主机无法ping通虚拟机。

常见报错如下&#xff1a; 1&#xff0c;Could not connect to ‘&#xff1f;&#xff1f;&#xff1f;’ (port 22): Connection failed. 2&#xff0c;卡在To escape to local shell, press ‘CtrlAlt]’. 3&#xff0c;Connection closing…Socket close. Connection clos…

Apache安全及优化

配置第一台虚拟机 VM1网卡 yum仓库 挂载磁盘 上传3个软件包到/目录 到/目录下进行解压缩 tar xf apr-1.6.2.tar.gz tar xf apr-util-1.6.0.tar.gz tar -xjf httpd-2.4.29.tar.bz2 mv apr-1.6.2 httpd-2.4.29/srclib/apr mv apr-util-1.6…

jetson-inference入门

jetson-inference 文章目录 jetson-inference前言一、jetson-inference二、 下载传输三、 docker的安装使用总结 前言 jetson 部署相关内容 一、jetson-inference 官方推出的体验套餐&#xff0c;提供了三种最常见的AI应用与计算机视觉的类型 图像辨识&#xff08;Image Rec…

纯CSS3的单选框、复选框、开关按钮UI库-自由分享jQuery、html5、css3的插件库

纯CSS3的单选框、复选框、开关按钮UI库-自由分享jQuery、html5、css3的插件库-遇见你与你分享

陪玩系统:最新商业版游戏陪玩语音聊天系统3.0商业升级独立版本源码

首发价值29800元的最新商业版游戏陪玩语音聊天系统3.0商业升级独立版本源码 &#xff08;价值29800&#xff09;最新陪玩3.0独立版本 &#xff0c;文件截图 结尾将会附上此系统源码以及详细搭建教程包含素材图仅用于学习使用 陪玩系统3.0独立升级版正式发布&#xff0c;此版本…

Elasticsearch各种高级文档操作2

本文来记录下Elasticsearch各种文档操作 文章目录 初始化文档数据 初始化文档数据 在进行各种文档操作之前&#xff0c;我们先进行初始化文档数据的工作

Pixels:重新定义游戏体验的区块链农场游戏

数据源&#xff1a;Pixels Dashboard 作者&#xff1a;lesleyfootprint.network 最近&#xff0c;Pixels 通过从 Polygon 转移到 Sky Mavis 旗下的 Ronin 网络&#xff0c;完成了一次战略性的转变。 Pixels 每日交易量 Pixels 在 Ronin 网络上的受欢迎程度急剧上升&#xf…

Linux的权限(2)

目录 Linux的&#xff08;事物属性&#xff09;文件权限 文件权限值得表示方法 字符表示方法 8进制表示方法 文件访问权限得相关设置方法 chmod修改权限法1 chmod修改权限法2 文件的角色&#xff08;拥有者/所属者&#xff09;修改 chown拥有者 chgrp所属者 &…

贵阳贵安推进“数字活市”战略成效明显

作者&#xff1a;黄玉叶 近年来&#xff0c;贵阳贵安将数字经济确立为高质量发展的主路径之一&#xff0c;把推进“数字活市”作为实施主战略、实现主定位&#xff0c;特别是建设“数字经济发展创新区核心区”的重要抓手&#xff0c;从改革、发展、民生三个维度纵深推进“数字活…

享元模式介绍

目录 一、享元模式介绍 1.1 享元模式定义 1.2 享元模式原理 1.2.1 享元模式类图 1.2.2 模式角色说明 1.2.3 示例代码 二、享元模式的应用 2.1 需求说明 2.2 需求实现 2.2.1 类图 2.2.2 具体实现 2.2.2.1 抽象享元类 2.2.2.2 共享享元类-白色棋子 2.2.2.3 共享享元…

2018年认证杯SPSSPRO杯数学建模A题(第一阶段)海豚与沙丁鱼全过程文档及程序

2018年认证杯SPSSPRO杯数学建模 探究海豚猎捕时沙丁鱼群的躲避运动模型 A题 海豚与沙丁鱼 原题再现&#xff1a; 沙丁鱼以聚成大群的方式来对抗海豚的捕食。由于水下光线很暗&#xff0c;所以在距离较远时&#xff0c;海豚只能使用回声定位方法来判断鱼群的整体位置&#xf…

策略模式在工作中的运用

前言 在不同的场景下&#xff0c;执行不同的业务逻辑&#xff0c;在日常工作中是很寻常的事情。比如&#xff0c;订阅系统。在收到阿里云的回调事件、与收到AWS的回调事件&#xff0c;无论是收到的参数&#xff0c;还是执行的逻辑都可能是不同的。为了避免&#xff0c;每次新增…

老师布置作业的技巧有哪些

布置作业可不只是简单地给学生分配任务&#xff0c;而是需要运用一些技巧&#xff0c;以达到更好的教学效果。那么&#xff0c;老师应该如何布置作业呢&#xff1f; 一、作业要有针对性 布置作业时&#xff0c;老师应该根据学生的实际情况和课程要求&#xff0c;有针对性地设…

数字创意市场:Web3时代创作者的新机遇

随着Web3时代的崭露头角&#xff0c;数字创意市场正迎来全新的变革和机遇。在这个数字化的时代&#xff0c;创作者们将面对更加开放、去中心化的创作和交易环境。本文将深入探讨Web3时代数字创意市场为创作者带来的新机遇&#xff0c;以及这个时代为创意产业带来的变革。 创作者…