1 提出背景


针对attention model不能平行化,且忽略了输入句中文字间和目标句中文字间的关系,google在2017年《Attention is all you need》一文提出了Transformer模型。Transformer最大的特点就是完全抛弃了RNN、CNN架构。模型中主要的概念有2项:1. Self attention(代替RNN) :解决输入句中文字间和目标句中文字间的关系被忽略的问题
2. Multi-head:解決平行化和计算复杂度过高的问题

2 模型架构

transformer和Seq2seq模型皆包含2部分:Encoder和Decoder。不同的是,transformer中的Encoder是由6个Encoder堆积而成,Deocder亦然。

3 Attention model中的Decoder公式改写

用Query, Key, Value解释如何计算attention model中的语义向量

  • 输入句中的每个文字是由一系列成对的 <地址Key, 元素Value>所构成,即word embedding vector
  • 输出句中的每个文字是Query

4 Scaled Dot-Product Attention

transformer计算 attention score的方法和attention model如出一辙,但 transformer还要除上分母dk\sqrt{d_k}dk

,目的是避免内积过大造成softmax的结果非0即1。

5 transformer计算attention的3种方式

  • Encoder中的self attention在计算时,key, value, query都是来自encoder前一层的输出,Decoder亦然。
  • 为了避免在解码的时候,还在翻译前半段时,就突然翻译到后半段的句子,在计算decode self attention的softmax前先mask掉未来的位置(设定成-∞),确保在预测位置i的时候只能根据i之前位置的输出
  • Encoder-Decoder Attention和Encoder/Decoder self attention不一样,它的Query来自于decoder self-attention,而Key、Value则是encoder的output。
  • 从输入文字的序列给Encoder开始,Encoder的output会变成attention vectors的Key、Value,接着传送到encoder-decoder attention layer,帮助Decoder该将注意力摆在输入文字序列的哪个位置进行解码。

6 Multi-head attention

有趣的是,如果我们只计算一个attention,很难捕捉输入句中所有空间的讯息,为了优化模型,提出了Multi-head attention,概念是不要只用d_{model}维度的key, value, query计算一个attention,而是把key, value, query们线性投射到不同空间h次,分別变成维度d_{q}, d_{k} and d_{v},再各自做attention,其中,d_{k}=d_{v}=d_{model}/h=64,概念就是投射到h个head上。

参考教程

  • Seq2seq pay Attention to Self Attention: Part 2(中文版)
    https://medium.com/@bgg/seq2seq-pay-attention-to-self-attention-part-2-中文版-ef2ddf8597a4

【DL小结5】Transformer模型与self attention相关推荐

  1. transformer 模型(self-attention自注意力)

    transformer模型在<Attention is all you need>论文中提出 这篇论文主要亮点在于:1)不同于以往主流机器翻译使用基于RNN的seq2seq模型框架,该论文 ...

  2. 谷歌NIPS论文Transformer模型解读:只要Attention就够了

    作者 | Sherwin Chen 译者 | Major,编辑 | 夕颜 出品 | AI科技大本营(ID:rgznai100) 导读:在 NIPS 2017 上,谷歌的 Vaswani 等人提出了 T ...

  3. 论文《Attention Is All You Need》及Transformer模型

    目录 1. Introduction 2. 模型结构                        ​ 2.1 Transformer模型 2.2 输入层 2.3 位置向量:给单词赋予上下文语境 2. ...

  4. 图解Transformer模型(Multi-Head Attention)

    本文内容主要源于Attention is all you need: https://arxiv.org/abs/1706.03762 由于本人最近在研究文本的判别式模型,如文本分类任务,所以学习了T ...

  5. Paper:Transformer模型起源—2017年的Google机器翻译团队—《Transformer:Attention Is All You Need》翻译并解读

    Paper:Transformer模型起源-2017年的Google机器翻译团队-<Transformer:Attention Is All You Need>翻译并解读 目录 <T ...

  6. 我们可以无损放大一个Transformer模型吗?

    ©PaperWeekly 原创 · 作者 | 苏剑林 单位 | 追一科技 研究方向 | NLP.神经网络 看了标题,可能读者会有疑惑,大家不都想着将大模型缩小吗?怎么你想着将小模型放大了?其实背景是这 ...

  7. 可以这样理解视觉Transformer模型中patch交互的关系

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 01 研究问题 随着计算机视觉领域的不断发展,基础视觉任务研究中受自然语言处理(NLP)的模型结构设计(Tr ...

  8. 深度学习原理学习小结 - Self-Attention/Transformer

    文章目录 深度学习原理学习小结 - Self-Attention/Transformer Self-Attention基本原理 引入 核心概念 计算方法 Transformer基本原理 知识补充 编码 ...

  9. 熬了一晚上,我从零实现了Transformer模型,把代码讲给你听

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨伟大是熬出来的@知乎(已授权) 来源丨https://zhua ...

  10. Transformer模型有多少种变体?复旦邱锡鹏教授团队做了全面综述

    视学算法报道 转载自:机器之心 编辑:Liyuan.杜伟 自提出至今,Transformer 模型已经在自然语言处理.计算机视觉以及其他更多领域「大展拳脚」,学界也提出了各种各样基于原始模型的变体.但 ...

最新文章

  1. spring-cloud-ribbon负载均衡
  2. 中级职称计算机网络安全论文,中级职称答辩论文的计算机络综合布线系统设计.doc...
  3. 6.1 无监督学习-机器学习笔记-斯坦福吴恩达教授
  4. 【CyberSecurityLearning 17】三层交换技术及实验演示、内部网络规划、HSRP
  5. JAVA里16进制和字节数组互转
  6. 2600: [Ioi2011]ricehubh
  7. android listview ontouchlistener,Android ListView监听滑动事件的方法(详解)
  8. wamp的mysql触发器教程_wamp里的mysql怎么做出这个
  9. mysql创建用户和远程登录授权
  10. 现代计算机是以多用户,计算机操作系统 第7章 设备管理 练习题
  11. 科研_今天,我们怎么做科研?
  12. “仁、义、礼、智、信、恕、忠、孝、悌、、节、恕、勇、让”
  13. Listen1 - 让你畅享全网音乐!你值得拥有!
  14. typecho图片插件_typecho插件:HighSlide文章弹窗相册插件
  15. github建立自己的个人网站
  16. docker mysql 高可用_docker搭建数据库高可用方案PXC
  17. SQL Server AVG函数取整问题
  18. mysql 实现lead_MYSQL 代替lead()的寫法?
  19. ArcBlock ② 月报 | 埋头苦干 Forge + ABT 链+钱包 呼之欲出
  20. Linux中级实战专题篇:LVS负载均衡集群部署

热门文章

  1. PowerShell 使用当前日期创建文件夹
  2. maven项目的构建
  3. 重命名DC 以及 域
  4. api 微信小程序组件库colorui_微信小程序入门ColorUI组件库使用方法
  5. PyTorch(CNN+MNIST测试)
  6. Eclipse+OpenCV3.1.0 的环境搭建
  7. 【web前端】table的border属性解析(内联样式表和内部样式表中的区别)
  8. html中无序列表做成链接,Beautifulsoup从无序列表中提取文本和链接divulli(斯堪的纳维亚字符)...
  9. 射极跟随器实验报告数据处理_电压跟随器秘笈:运放构成电压跟随器的稳定性问题探讨...
  10. php合成图片系统,php图片合成