Transformer的position embedding
1. position embedding 位置编码
我们为什么要引入位置编呢?主要有以下几个原因:
- 文本是时序型数据,词与词之间的顺序关系往往影响整个句子的含义。
- transformer模型的self-attention层并没有包含位置信息,即一句话中词语在不同的位置时在transformer中是没有区别的。
我们要想让位置信息参与训练,就要构造一个跟输入embedding维度一样的矩阵,然后跟输入embedding相加得到multi-head attention (这个会在后面的部分讲解到)的输入。position encoding说白了就是一个矩阵,那么这个矩阵如何生成,生成
其中,PE为二维矩阵,维度跟输入embedding的维度一样,行表示词语,列表示词向量;pos 表示词语在句子中的位置;i表示在该词语中,词向量所在的位置(在哪一个dimension)。因此,上述公式表示在每个词语的词向量的偶数位置添加sin变量,奇数位置添加cos变量,以此来填满整个PE矩阵,然后加到input embedding中去,这样便完成位置编码的引入了。
为什么要用三角函数来表示位置信息呢? 其实也用其他的表示方式,对于transformer模型的positional encoding有两种主流方式:
绝对位置编码
相对位置编码
Transformer的position embedding相关推荐
- position embedding
[转载] 关于Transformer中的position embedding 一文教你彻底理解Transformer中的positional encoding Transformer中position ...
- 1.Transformer的word embedding、position embedding、编码器子注意力的掩码
来源 B站up:deep_thoughts https://www.bilibili.com/video/BV1cP4y1V7GF/?spm_id_from=333.1007.top_right_ba ...
- Roformer:Enhanced Transformer with rotary position embedding
Roformer:Enhanced Transformer with rotary position embedding Intorduction Method Experiment 代码实现 Con ...
- 文献阅读:RoFormer: Enhanced Transformer with Rotary Position Embedding
文献阅读:RoFormer: Enhanced Transformer with Rotary Position Embedding 1. 工作简介 2. 常见位置编码方式 1. 绝对位置编码 1. ...
- 深度学习笔记--Transformer中position encoding的源码理解与实现
1--源码 import torch import math import numpy as np import torch.nn as nnclass Pos_Embed(nn.Module):de ...
- transformer中pos embedding原理
TensorFlow代码如下 def get_position_encoding(length, hidden_size, min_timescale=1.0, max_timescale=1.0e4 ...
- TRS 中的position embedding
- Rotary Position Embedding (RoPE, 旋转式位置编码) | 原理讲解+torch代码实现
- 深度学习进阶篇-预训练模型[3]:XLNet、BERT、GPT,ELMO的区别优缺点,模型框架、一些Trick、Transformer Encoder等原理详细讲解
[深度学习入门到进阶]必看系列,含激活函数.优化策略.损失函数.模型调优.归一化算法.卷积模型.序列模型.预训练模型.对抗神经网络等 专栏详细介绍:[深度学习入门到进阶]必看系列,含激活函数.优化策略 ...
最新文章
- php 二叉树判断节点的位置,PHP实现判断二叉树是否对称的方法
- 【转】HTML5第一人称射击游戏发布
- 女神节爆猛料!. NET程序员男女比例公布!
- cdn节点人少延迟高_如何正确配置CDN高速缓存,避免越用越慢的尴尬
- 如何用 JavaScript+Canvas 开发一款超级烧脑小游戏?
- 人人商城源码怎么安装MySQL_人人商城插件开发手记
- 什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!
- 怎样给WordPress友情链接添加nofollow
- CANoe从入门到精通“保姆级”教程(三)- 经典范例解读
- 你有没有感觉现在4G的速度越来越慢了?为什么?
- linux对nohup日志进行定时拆分并且删除~持续补充
- 不用的MacBook这样处理比较好
- azure云上 在线将oracle单实例扩展成oracle dataguard高可用集群的详细过程
- 计算机底层:CPU结构与组成原理、工作原理
- 【转】XenServer错误恢复:断电网卡丢失.虚拟机(VPS)不见
- 29.顺时针打印矩阵
- WIN10只剩飞行模式的一种解决方法
- 2018年浙江检察机关办理公益诉讼案件5551件
- 请求响应结果和预期结果做对比
- 学生报名太火热,黑马大门要被挤掉了?
热门文章
- 抖音视频怎样伪原创 视频剪辑md5值
- 基于Oracle的SQL编程
- mysql 添加字段并设置为自增长
- TortoiseSVN (Subversion客户端) 使用手册(中文) (五)
- 微信小程序生成清晰海报并保存到本地
- 麻省理工计算机专业毕业就业,中国版的麻省理工大学,工科实力与清华比肩,备受业界认可...
- 189邮箱收发件服务器,189邮箱怎么发短信(189免费发短信的方法)
- 邮箱申请免费注册163,企业免费邮箱域名注册
- A1489. 抽奖(乔明达)
- 关于SN74HC14PW