IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> Transformer论文学习 -> 正文阅读

[人工智能]Transformer论文学习

?Transformer论文学习

摘要

*提出了一种新的简单的网络架构,Transformer,完全基于注意力机制,完全取消了递归和卷积。
*具有更强的并行性,并且需要的训练时间明显更少。

?模型架构

Transformer遵循 encoder-decode结构

Encoder-Decoder

Encoder包括:
多头注意力机制->add残差结构-> layer normalization->Feed Forward network->add残差结构-> layer normalization

?layer normalization会将每一层神经元的输入都转成均值方差都一样的,这样可以加快收敛。

Feed Forward 层比较简单,是一个两层的全连接层,第一层的激活函数为 Relu,第二层不使用激活函数,对应的公式如下


重复N次


Decoder比Encoder多了一个Masked多头注意力机制:
Masked多头注意力机制:->头注意力机制->add残差结构-> layer normalization->Feed Forward network->add残差结构-> layer normalization
重复N次

Attention

Scaled Dot-Product Attention比例点积注意力

注意力结构如图所示

数学表达式

#三个向量,由输入input通过线性变换得到的
Q: query
K:key
V:value

#维度为
dk

#计算Q与所有K的点积,每个键除以√dk,并应用softmax函数来获得值的权重


首先由QK矩阵相乘(MatMul)=QK^{T},再除以\sqrt{d_{k}},经过softmax函数softmax(\frac{QK^{T}}{\sqrt{d_{k}}}),与向量V

矩阵相乘后得到最后的结果。?

当dk值较大时,点积会增大,将softmax函数推入梯度极小的区域。我们将点积乘以1√dk抵消梯度消失的风险。

?当Q、K、V为矩阵的时候将体现出点积注意力的优势

?Multi-Head Attention多头注意力机制

?

V、K、Q进行线性变换后得到多维v、k、q,再对各维v、k、q分别进行比例点积。将得到的值再次Concat后进行线性变化得到的最终结果比直接使用V、K、Q效果好。W为矩阵。

Mask?Multi-Head Attention

?

Mask是一个矩阵。Mask存在的意义就是为了防止为出现的词汇对前面的词汇造成信息干扰。

比如当encoder输入0,1,2,3,4的时候,decoder在学习0的时候需要把1234的信息全部遮挡住学习1,的时候,需要把2,3,4的信息全部遮挡住。因为后面的信息是由前面的信息推到出来的,后面的信息不能对前面的信息进行干扰,这就是所谓的防止信息左移

?

Position Embedding?

ransformer 中除了单词的 Embedding,还需要使用位置 Embedding 表示单词出现在句子中的位置。因为 Transformer 不采用 RNN 的结构,而是使用全局信息,不能利用单词的顺序信息,而这部分信息对于 NLP 来说非常重要。所以 Transformer 中使用位置 Embedding 保存单词在序列中的相对或绝对位置。

?

位置编码需要满足以下准则。

  • 每个位置的编码值应该是唯一的。
  • 相邻位置的编码值的差应该是保持不变的,无论句子有多长。
  • 编码方法要能轻松泛化到更长的句子。
  • 编码方式必须是确定的。

?

?参考

李宏毅讲解

Transformer模型详解(图解最完整版)

Transformer:Position Embedding解读

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-05-21 18:58:09  更:2022-05-21 18:58:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:29:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码