Attention Is All You Need 论文学习

常学常新:《Attention Is All You Need》万字解读! 阅读详情

该论文为机器翻译方向。是attention机制为基础,以减少顺序计算为目标,将编码器解码器的复杂递归或卷积神经网络改进成本文的Transformer网络架构,避免了递归和卷积的使用。实验中表明,该模型在质量上更优越,同时更具有并行性,并且减少了训练的时间。

网络结构

在这里插入图片描述
上图为Transformer的网络结构,采用堆叠的自注意力(self-attention)和逐点全连接的解码器和编码器。

编码器(Encoder)

编码器结构为上图左边,由N=6个的相同层堆叠而成,每层有两个子层。这两个子层分别由Multi-Head Attention,和简单的、按位置排列的前馈网络组成。并且每个子层周围都使用residual块连接,并且embedding层产生一个维度为512的输出。

解码器(Decoder)

解码器结构为上图右边,也有是N=6个相同层堆叠而成,每层有三个子层。其中有两个层是与编码器相同,但是两层中间多插入了一层Multi-Head Attention层,是用来接收编码器的输出。

位置前馈网络(Position-wise Feed-Forward Networks)

该网络包括两个线性转换和一个在线性转换之间的ReLU激活层
FFN(x)=max(0,xW1+b1)W2+b2 FFN(x) = max(0, xW_1 + b_1)W_2 + b_2 FFN(x)=max(0,xW1​+b1​)W2​+b2​

Embedding and Softmax

Embedding层将输入的标记转换成模型所需要的维度的向量。两个embedding层和softmax线性变换之间共享相同的权重矩阵,并且在embedding层中将权重矩阵乘以dmodel\sqrt{d_{model}}dmodel​​

提出的创新或改进

1.位置编码(Positional Encoding)

因为改模型没有卷积和递归结构,所以为了让模型能够利用序列顺序,增加了位置编码(positional encoding)这个结构,并且使用了正弦和余弦两种算法。
PE(pos,  2i)=  sin⁡(pos/100002i/dmodel)PE(pos,\;2i)=\;\sin\left(pos/10000^{2i/d_{model}}\right)PE(pos,2i)=sin(pos/100002i/dmodel​)PE(pos,  2i+1)=  cos⁡(pos/100002i/dmodel)PE(pos,\;2i+1)=\;\cos\left(pos/10000^{2i/d_{model}}\right)PE(pos,2i+1)=cos(pos/100002i/dmodel​)
经实验得,两个版本得效果相同,但正弦版本可能允许模型外推至比训练期间遇到的序列长度更长得序列长度。

2.多头注意机制(Multi-Head Attention)

scaled Dot-Product Attention
在这里插入图片描述
将输入得查询矩阵和键矩阵进行点积,然后将每个键除以输入维度dk\sqrt{d_k}dk​​进行缩放,再通过softmax计算概率。
Attention(Q,K,V)=softmax(QKTdk)VAttention(Q, K, V) = softmax(\frac{QK^T}{\sqrt{d_k}})VAttention(Q,K,V)=softmax(dk​​QKT​)V当dkd_kdk​较小时,将进行缩放1dk\frac{1}{\sqrt{d_k}}dk​​1​。
Multi-Head Attention
在这里插入图片描述
对查询矩阵,键矩阵和值矩阵使用不同得线性学习,然后通过多重的Scaled Dot-Product Attention的输出堆叠得到Multi-Head Attention的输出,而这些平行的Scaled Dot-Product Attention被称为头部。

3.使用Attention的三个场景

1)在解码编码注意层,查询矩阵来自前一个解码器层,键和值矩阵来自编码器的输出。这允许解码器中的每个位置覆盖输入序列中的所有位置。模仿了序列到序列模型中典型的编码器-解码器注意机制。
2)编码器的self-attention层。在self-attention层中,所有的键、值和查询矩阵都来自同一个地方,在这种情况下,是编码器中前一层的输出。编码器中的每个位置可以关注编码器的前一层中的所有位置。
3)解码器中的self-attention层与编码器相似。我们需要防止解码器中向左的信息流,以保持自回归特性。通过设置屏蔽输出(设置为-∞)softmax输入中与非法连接相对应的所有值,在scaled dot-product attention中实现这一点。

4.选择self-Attention的原因

1)每层的总计算复杂度。
2)可以并行化的计算量。
3)网络中远程依赖项之间的路径长度。
在这里插入图片描述
此表为不同结构的对比。当序列长度n小于维度时,self-attention层要比recurrent层更快。如果涉及非常长的序列,self-attention会被限制为仅考虑以相应输出位置为中心的输入序列中大小为r的邻域。则最大路径长度为O(n/r)。

模型的初始化和训练

数据集的使用
该论文使用了两个数据集,一个是由大约450万对句子组成的标准WMT 2014 English-German数据集,另一个是更大的WMT English-French,大约有3600万个句子组成。
模型的训练
每次训练的批次包含一组句子对,大约25000个源标记和25000个目标标记。
优化函数 使用Adam优化器,
学习率的更新,使用一下公式进行更新:
lrate=dmodel−0.5⋅min(step_num−0.5,step_num⋅warmup_step−1.5)lrate = d_{model}^{-0.5}·min(step\_num^{-0.5}, step\_num·warmup\_step^{-1.5})lrate=dmodel−0.5​⋅min(step_num−0.5,step_num⋅warmup_step−1.5)正则化:使用Residual Dropout和Label Smoothing。Residual Dropout应用于每个子层的输出,以及对embedding层和positional encoding层的和使用。使用Label Smoothing增加了模型学习的不确定性,但是提高了精度和BLEU分数。

实验结果与分析

与不同的模型进行比较,取得了较好的结果。BLEU分数在EN-DE数据集和EN-FR数据集都是当前阶段最优。
在这里插入图片描述

通过控制head的数量,键值的维度,模型的大小等因素来比较各个模块的性能。
在这里插入图片描述
由A可见,head的数量的增多反而会影响模型的性能。在B中,键的维度的增加对模型的性能影响不是很大。在CD中模型可以看出模型越大性能越好,并且dropout对避免模型发生过拟合有很大的帮助。
结论
该论文模型使用了multi-head attention来代替了递归层,减少了计算量,加快了模型的速度。在机器翻译工作中,Transformer模型的训练速度明显快于基于递归或卷积的架构。在该文章中使用的两个数据集中Transformer模型都达到了当时最先进的水平。

【论文阅读】Attention is all you need(Transformer) 文章目录前言1.Abstract2.Introduction3.Background4.Model Architecture4.1. Encoder and Decoder Stacks4.2. Attention4.2.1. Scaled Dot-Product Attention4.2.2.Multi-Head Attention4.2.3. Applications of Attention in our Model4.3. Position-wise Feed-Forward Networks4.4 阅读详情

相关推荐

【大模型系列篇】论文解读:Transformer - Attention Is All You Need

当今大模型初学者必读的一篇论文,已经有不少业内大佬都翻译解读过这篇论文,此处仅作为自己学习的记录。该论文是由谷歌机器翻译团队于2017年发表在NIPS ,提出了一个只基于attention的结构来处理序列模型相关的问题,比如机器翻译。相比传统的CNN与RNN来作为Encoder-Decoder的模型,谷歌这个模型摒弃了固有的方式,并没有使用任何的CNN或者RNN的结构,该模型可以高度并行的工作,相比以前串行并且无法叠加多层、效率低的问题。

木亦汐丫 4643

Attention Is All You Need

Attention Is All You Need 注意力机制是你需要的全部 Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin attention [ə'tenʃ(ə)n]:n. 注意,关注,注意力,关心 int. 注意,立正 attention mechanism:注意力机制 Computer Science,CS:

程永强 4万+

深度学习论文: Attention is All You Need及其PyTorch实现

深度学习论文: Attention is All You Need及其PyTorch实现PyTorch:大多数先进的神经序列转换模型采用编码器-解码器结构,其中编码器将输入符号序列转换为连续表示,解码器则基于这些表示逐个生成输出符号序列。在每个步骤中,模型采用自回归方式,将先前生成的符号作为额外输入来生成下一个符号。

mingo_敏 2167

【翻译】Attention Is All You Need

论文地址:https://proceedings.neurips.cc/paper/2017/file/3f5ee243547dee91fbd053c1c4a845aa-Paper.pdf 项目地址:https://github.com/ tensorflow/tensor2tensor

jokerwu192的博客 3万+

解锁 STP 与 SOLIDWORKS 转换密码:工具及迪威在线转换秘籍

STP 文件能够完整地记录 3D 模型的几何形状、尺寸、公差、材料属性等丰富信息,无论是简单的机械零件,还是复杂的装配体,都能精准呈现。而在线转换以迪威模型为例,凭借便捷性、高效性和安全性,为广大 3D 专业技术人员和学生党在无需安装额外软件的情况下,轻松实现格式转换提供了有力支持。在实际工作和学习中,可根据自身具体情况灵活选择合适的转换方式,以确保 3D 设计工作流程的顺畅进行,让创意在不同格式间自由流动并绽放光彩。在 3D 设计与建模的广袤世界里,不同格式文件间的转换常常是连接创意与实现的关键桥梁。

技术说明博主 3445

别再死记公式了!用TL072运放设计带通滤波器,调出干净正弦波的实战心得与误区盘点

本文分享了使用TL072运放设计带通滤波器的实战经验,重点解决波形失真问题,提供单电源供电优化、动态调谐技巧及仿真与现实的参数修正方法,帮助工程师调出纯净正弦波。内容涵盖模拟电路设计中的常见误区与解决方案,适合电子工程师和爱好者参考。

weixin_29172963的博客 406

《Attention Is All You Need》论文学习记录(transformer)

论文摘要 《Attention Is All You Need》提出了Transformer架构,这是首个完全基于注意力机制的序列转换模型,摒弃了传统的循环和卷积结构。其核心创新在于: 纯注意力设计:通过自注意力机制直接建模全局依赖关系,显著提升并行计算能力,训练时间比RNN/LSTM缩短75%(8 GPU训练12小时达SOTA)。 关键技术: 缩放点积注意力(方差稳定至1) 多头注意力并行处理 位置编码替代序列顺序

broken_utopia的博客 1117

openvpn 安装 (Alibaba Cloud Linux release 3 (Soaring Falcon))

1.错误:configure: error: libnl-genl-3.0 package not found or too old. Is the development package and pkg-config (/usr/bin/pkg-config) installed?# ta.key在/etc/openvpn/server/目录下可以如下配置,否则需要写完整路径。# 配置账号密码登录客户端需要ca证书(可选)# 证书校验算法 配置上面生成的完整路径。# ca证书 配置上面生成的完整路径。

dubhe_zhao的博客 2150

5分钟速览深度学习经典论文 —— attention is all you need

Attention is All You Need 是一篇极其重要的论文,它提出的 Transformer 模型和自注意力机制不仅推动了 NLP 领域的发展,还对整个深度学习领域产生了深远影响。• 提出一种完全基于注意力机制(Attention Mechanism)的模型,摒弃递归和卷积结构,解决上述问题。• 在 2017 年之前,序列建模任务(如机器翻译)主要依赖于递归神经网络(RNN)和卷积神经网络(CNN)。• 自注意力机制的计算复杂度随序列长度平方增长,限制了其在长序列任务中的应用。

硅基创想家的博客 3932

Python+Appium实现泛微OA自动打卡:5分钟搭建移动端自动化脚本

移动端自动化测试是软件测试与办公自动化领域的重要技术方向,其核心原理是通过程序模拟用户对手机应用界面的操作,实现重复性任务的自动执行。Appium作为主流的开源移动端自动化框架,基于WebDriver协议,支持跨平台且无需修改被测应用,为自动化脚本开发提供了标准化接口。在工程实践中,结合Python简洁的语法和丰富的生态,可以快速构建稳定可靠的自动化解决方案。这一技术组合的价值在于能够高效处理“重复性、低价值、高频率”的日常操作,例如考勤打卡、数据填报等办公场景,显著提升工作效率。本文以泛微OA Emobi

weixin_28836875的博客 390

Reality Capture控制点修复/合并模型

通过增加控制点/修改对齐设置参数来修复模型被分为两个部分的解决方法

草履虫建模的博客 5249

《Attention Is All You Need》论文学习

记录了学习论文《Attention is all you need》的主要过程,重点对transformer模型架构进行解读

T940842933的博客 888

第01章 Hermes Agent 是什么

如果读者所在的开发团队已经引入了 Cursor、Claude Code 这类 AI IDE,可能会有一个困惑:写代码已经有 AI 帮忙了,还需要 Hermes Agent 做什么?这一章将给出答案。Hermes Agent 不是另一个写代码的 AI,而是一个常驻在团队里的"AI 协作成员",专门负责写代码之外的协作环节——讨论需求、审查代码、查日志、监控告警、生成报告。学完本章,读者将清楚 Hermes 的定位以及它在团队里的角色。

亢少军的博客 75

论文学习Transformer:Attention Is All You Need

主流的循环或卷积神经网络的序列转换模型,表现最佳的是通过注意力机制连接的编码器和解码器。本文提出一种全新的。

m0_73681699的博客 581

第八章 GPU Scheduler 分析:8.3 drm_sched_entity — 调度实体

本文介绍了DRM GPU调度器中的drm_sched_entity结构,它作为用户提交命令进入调度器的提交通道,解决了归属、排序和公平性问题。文章首先分析了命令提交的归属需求,然后详细阐述了entity的核心模型,包括其职责、进程映射关系和核心字段。接着说明了用户态提交进入内核后的关键节点路径,以及entity内部的FIFO语义和激活机制。entity通过组织同一context的命令提交包为FIFO队列,使调度器能够在多个entity之间进行优先级和公平性调度,同时保证同一提交通道的顺序执行。

图形/计算GPU的驱动与虚拟化技术分享园地 657

【毕业设计】基于雷达与深度学习的摔倒检测——雷达数据集的建立

运动物体的微多普勒效应为人体动作识别提供了可能,基于雷达的居家检测具有良好的隐私保护性,且不易受环境因素影响(如光照、温度等),近年来已受到国内外学者的广泛关注。基于雷达与深度学习的摔倒检测使用自建的雷达数据集进行人体摔倒检测的研究。雷达数据集的建立分为雷达数据采集和雷达数据处理两部分工作。

洋洋Young的博客 3403

Attention is all you need论文学习笔记

Attention is all you need论文学习笔记 看了Bert的论文,由于基础知识薄弱,且bert本质还是transformer,之前没有接触过所以不太懂,于是看了这篇论文了解一下transformer。 参考:https://cloud.tencent.com/developer/article/1377062 1.背景知识: attention transformer完全利用at...

weixin_42164041的博客 384

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

论文 学习 Transformer : Attention Is All You Need

transformer 是一个encoder ——decoder 结构的用于处理序列到序列转换任务的框架,是第一个完全依赖自注意力机制,计算其输入输出表示的转换模型,核心是采用了注意力机制用于捕获输入序列不同位置之间的依赖关系,帮助模型在生成输出时能够关注到与当前任务最相关的信息,优势是能够捕获长距离依赖关系,并且对于输入序列的长度没有固定的限制,在处理长文本和复杂语言结构时表现出色,在编码器解码器框架。

qq_53536373的博客 1226

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Attention is all you need 论文学习

Abstract 目前主流的序列转导模型都是基于复杂的递归或卷积神经网络,包含一个编码器和解码器。表现最佳的模型也是通过一个注意力机制,将编码器和解码器联系起来。本文提出了一个新的网络结构,Transformer,只使用了注意力机制,彻底抛弃了递归和卷积操作。在两个机器翻译任务上,实验结果表明这些模型表现非常优异,可以并行计算,大幅度减少了训练时间。在 WMT 2014 英语-德语翻译任务上,该模型取得了 28.4 BLEU 的成绩,提升了现有的最好成绩将近 2 BLEU。在 WMT 2014 英语-法语翻

calvinpaean的博客 391

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

transformer论文学习:Attention Is All You Need

transformer论文学习:Attention Is All You Need

iam_NaCl的博客 509

【免费下载】 Attention Is All You Need 论文下载

Attention Is All You Need 论文下载 【下载地址】AttentionIsAllYouNeed论文下载 Attention Is All You Need 论文下载 项目地址: https://gitcode...

gitblog_06644的博客 7840

attention is all you need论文学习 transformer

Query和key是等长的,他门做内积作相似度,内积值越大相似度越高,内积值为0 两个相量垂直了没有相似度.Query和每个key作内积后的值除根号keys的维度.然后通过softmax函数得到权重0实际中用两次矩乘法实现。编码器和解码器,编码器输入多个token,输出每个token的编码向量,解码器的输入是token的编码向量,输出是转换的向量,转换的维度不一定和编码器的输入token长度一样,引文如果是翻译,不同语言翻译后是不同的长度。layernorm,是每个数据的特征做均值为零方差为1。

nn的博客 608

《Attention is All You Need》论文学习笔记

目录 Abstract 1. Illustrated Transformer 1.1 A High-level look 1.2 Attention 1.2.1 Scale Dot-Product Attention 1.2.2 Multi-Head Attention 1.3 Positional Encoding - Representing the Order of the Sequence 1.4 Detailed Architecture References 最近在学习Pyt

Raymond_Love的博客 703

【论文学习笔记】《Attention Is All You Need》

《Attention Is All You Need》论文学习 文章目录《Attention Is All You Need》论文学习  摘要  1 介绍  2 背景  3 模型架构    3.1 编码器和解码器堆栈    3.2 注意力      3.2.1 比例点积注意      3.2.2 多头注意      3.2.3 注意力在我们

求求你们别卷了 631

经典论文学习:Attention Is All You Need(Transformer)

Transformer模型通过引入自注意力机制和多头注意力机制来替代传统的循环神经网络和卷积神经网络,从而提高了模型的表现。同时,Transformer模型还采用了分头处理和残差连接等技术,进一步提高了模型的效率和表现。该模型在机器翻译等任务中取得了极高的性能,成为自然语言处理领域的经典模型之一。

3414

论文学习-Attention Is All You Need

Recurrent model 序列化的计算方式,难以并行,随着序列的增长,以前的记忆会逐渐丢失。而Attention机制可以观察到句子中所有的信息,不受距离影响,而且可以并行计算。

繁忙之余别忘了生活 566
上一篇: Single-Shot Refinement Neural Network for Object Detection论文学习
下一篇: End-to-End Object Detection with Transformers 论文阅读
w_study_ty
博客等级 码龄9年 3粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值