深度学习09 -Transformer - 理论篇

参考链接:李宏毅-Transformer

1、Transformer简介

在这里插入图片描述
Transformer与RNN输入输出一样,但是RNN后面的运算依赖于前面的输出,所以不能并行运算,但是使用Transformer是可以并行的,所以其b1-b4是同时被计算出来的

2、计算过程

在这里插入图片描述
1、与attention机制一样,在这个模型中,我们会从输入的x线通过乘一个矩阵变换为a,然后再通过query(q)、key(k)、value(v)进行运算
在这里插入图片描述
attention公式(根号d可有可无):
在这里插入图片描述

2、self-attention:通过计算出来的q与每一个k进行相似性运算(可能是内积,也可能是其他方法,只要是吃进两个向量输出一个相似性分值即可),得到a1,1到a1,4然后经过一个softmax计算出来其占比

在这里插入图片描述
3、通过各个value与计算出来的a分别相乘,然后相加,得到了最终的b1,同理b2-b4是相同的方法得到,因为在计算过程中并没有使用到其他的的输出,所以完全可以同时计算b2-b4,所以可以并行

在这里插入图片描述
4、得到q、k、v的计算过程,都是a通过乘一个W矩阵进行变换的

上述过程使用矩阵表示:

在这里插入图片描述
注意,过soft-max的时候,是按列过的
在这里插入图片描述
在这里插入图片描述

multi-head Self-attention

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

q可以通过乘两个不相关的矩阵变成两个,然后q1,k1,v1为一组,每组相乘变成b1,1
按照这样设计,qkv计算是没有顺序的,因此,这样的设计方式是不考虑sequence的顺序的
我们分析语言等东西的时候是一定会有顺序影响的,因此这样是显然不行的

因此需要加入一个向量,来保证其是和位置有关联的,所以,在这里加了一个one-hot编码的位置向量
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值