transformer论文笔记

transformer论文笔记

batchnorm和layernorm区别

参考大佬BatchNorm和LayerNorm——通俗易懂的理解文章
在这里插入图片描述

上图描述的是batch_norm操作

batch_norm将一个batch内的所有图片的同一通道视作一个分布,并进行标准化:

  • 不同图片同一通道可以相互比较
  • 同一图片不同通道不能相互比较
    在这里插入图片描述

上图描述的是layer_norm操作

layer_norm将一个句子中的所有词义向量视作一个分布,并进行标准化:

  • 同一个句子之间可以比较
  • 不同句子之间不能比较

总而言之,layer_norm的操作更符合我们机器翻译等任务的需求,因此采用layer_norm进行标准化

点积为什么要缩放

由于transfomer的超参数中d_model的参数大小为512,因此,在querykey进行注意力点积操作的时候,得到的数据可能会很大。

这样就会导致在经过softmax归一化时,更倾向于得到0.990.01这样的权重分布,而不是0.90.1这样的权重分布,而后者我们更喜欢。因此模型通过除以 d m o d e l \sqrt{d_{model}} dmodel 缩放点积结果,以达到期望的目的。

掩码注意力机制如何实现

自回归(AR Model):自回归模型是用自身做回归变量的过程,即利用前期若干时刻的随机变量的线性组合来描述以后某时刻随机变量的线性回归模型,它是时间序列中的一种常见形式。

在这里插入图片描述

在解码器decoder中,为了保证本次query的预测仅与之前的序列信息有关,因此采用掩码mask来处理生成的注意力分数结果,将本次query之后的所有query的注意力分数设置为负无穷。这样在经过softmax归一化后,这部分的结果就会被置为0,从而保证了自回归。

transformer和rnn在学习长序列上的不同

transformer首先先将qeury经过注意力层,得到的输出是一个已经包含了所有key信息聚合的输出,由于得到的输出已经是所有key的聚合,前馈神经网络MLP的变换可以照顾到全体key值并学习最佳的语义变换。

rnn是将前一层的输出作为下一层的输入,以递归的方式来确保照顾到所有key的信息

  • 并行性
    • Transformer:由于自注意力机制的并行计算性质,Transformer可以高效地并行计算整个序列,从而加速训练和推断过程。这使得Transformer在处理长序列时更具优势。
    • RNN:由于RNN的顺序处理特性,无法进行有效的并行计算,必须按照序列的顺序逐步进行计算。这导致RNN在处理长序列时计算效率较低。
  • 长距离依赖
    • Transformer:Transformer通过自注意力机制能够同时关注输入序列中的不同位置,使得它能够有效地捕捉长距离的依赖关系。这使得Transformer在处理长距离依赖关系的任务时更为有效。
    • RNN:RNN通过隐藏状态的传递来捕捉序列中的依赖关系,但在处理长距离依赖时会面临梯度消失或爆炸的问题。这使得RNN在处理长距离依赖关系时相对困难。

嵌入层为什么要缩放

在嵌入层学习的过程中,不可避免地会将输出学习成一个二阶范数为1的向量。此时,为了方便和position_encoding相加,将他乘以 d m o d e l \sqrt{d_{model}} dmodel 来增大他的值,使得他的数量级与position_encoding相似。

为什么要用多头注意力机制

假设模型共有 h h h个注意力头,输入的向量维度为 d m o d e l d_{model} dmodel,多头注意力是指将输入维度通过不同的线性层映射到 d m o d e h \frac{d_{mode}}{h} hdmode,然后分别通过不同的注意力机制得到 d m o d e h \frac{d_{mode}}{h} hdmode的输出,最后将这些输出并在一起得到 d m o d e l d_{model} dmodel维度的输出并投影得到最终输出。
在这里插入图片描述

观察左图不难发现,单注意力头的缺陷是没有什么可以学习的参数,为了弥补这样的缺点,右图为模型提供了 h h h次学习机会,用来学习的投影方式,从而使用不同的模式,从而得到不同的计算相似度的方法,尽可能提高模型的学习能力。

  • 22
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值