本文是对李宏毅老师的课程进行了整理。
视频地址为:
https://www.bilibili.com/video/BV1Wv411h7kN?p=35

1 引入

Transform的应用场景

2 基本原理

Transform机制由编码器(Encoder)和解码器(Decoder)构成。

  • 编码器:输入是一组向量序列,输出为一组向量序列,attention(注意力机制)、CNN、RNN等都可以作为Encoder;
  • 解码器:根据编码器的输出,利用Begin特殊符号、输入向量序列得到后续的输出向量序列(如一段文字)。

上图例子的步骤如下:

  • Encoder的输入为:机器学习;输出为:向量序列;
  • Decoder第一次输入为:Encoder输出的向量序列、Begin特殊符号;第一次输出为文字出现的概率,假设最大的概率为:机;
  • Decoder第二次输入为:Decoder第一次输出的向量序列、器;第二次输出为文字出现的概率,假设最大的概率为:器;
  • 重复直到整个序列处理完成为止。


因为Decoder不知道最后的输出长度是多少,所以必须在输出部分增加一个结束符号,用“END”表示。

Decoder有两种方式:

  • AT(Autoregressive) Decoder:输入一个序列,输出也是一个序列(一个一个单词输出);
  • NAT Decoder:输入一串Begin(PPT是写的START),直接输出一个句子。

问:NAT Decoder方式如何知道结束?
答:有两种方法,(1)用另外的分类器,输入为Encoder的输入,输出为句子的长度;(2)假设句子最长不超过300,直接输入300个Begin,然后得到一个句子,在输出END之后的单词都不考虑。
问:NAT Decoder方式有什么优点?
答:平行,更稳定。


Transform机制(1)相关推荐

  1. Node.js Stream - 实战篇

    前面两篇(基础篇和进阶篇)主要介绍流的基本用法和原理,本篇从应用的角度,介绍如何使用管道进行程序设计,主要内容包括: 管道的概念 Browserify的管道设计 Gulp的管道设计 两种管道设计模式比 ...

  2. Node开发知识概括

    一. javascript高级话题(面向对象,作用域,闭包,设计模式等) 1. 常用js类定义的方法有哪些? 参考答案:主要有构造函数原型和对象创建两种方法.原型法是通用老方法,对象创建是ES5推荐使 ...

  3. Build Your Own Angularjs 读书笔记(AngularJS牛逼的地方在于它内嵌了一个表达式到Function对象的编译器。。。当然还有DI框架)

    Build Your Own Angularjs 读书笔记 目录 [隐藏] 1 项目配置 2 作用域 3 表达式与过滤器 4 模块与依赖注入 5 辅助函数 6 指令 项目配置[编辑] npm pack ...

  4. 前端面试+学习笔记(HTML+CSS+JavaScript+ES6+Vue+NodeJs)

    前端面试+学习笔记(HTML+CSS+JavaScript+ES6+Vue+NodeJs) 一. HTML 1. 盒子模型 是什么:每个元素被表示为一个矩形的盒子,有四个部分组成:内容(content ...

  5. StringFog插件对Dex字符串加密原理解析

    Android应用的加固和逆向一直以来都是大家研究的热点问题之一,加密与破解之间的攻防更是战得如火如荼.虽然其间诞生出了Dex加壳.res混淆等技术,但是实际上应用并不广泛,一是由于大部分防逆向服务都 ...

  6. Quark-Renderer-----第九篇

    2021SC@SDUSC 总述 在上节中,我们对canvasPainter.js中的pathToImage(path, dpr) 方法和getBoundingRect()方法等进行了了解学习,本次学习 ...

  7. html弹出层很字体模糊了,由CSS3 transform 字体模糊问题揭示出浏览器渲染机制

    为了实现垂直.水平居中效果,经常会用到 position: fixed; top: 50%; left: 50%; transform: translate(-50%,-50%); 但是在实际项目中, ...

  8. Transform中的Attention注意力机制

    本文边讲细节边配合代码实战,代码地址为: https://github.com/princewen/tensorflow_practice/tree/master/basic/Basic-Transf ...

  9. Glide的缓存机制

    Glide的缓存分为两个模块,一个是内存缓存,一个是硬盘缓存. 内存缓存的作用是防止应用重复将图片数据读取到内存当中: 硬盘缓存的作用是防止应用重复从网络或其他地方下载和读取数据. Glide的缓存K ...

最新文章

  1. VirtualBox - RTR3InitEx failed with rc=-1912 (rc=-1912)
  2. Android:ViewPager为页卡内视图组件添加事件
  3. Jenkins部署Windows UI自动化的调度权限问题
  4. java 克隆_Java实现对象克隆的方法
  5. access 一亿条数据_循环运算数据溢出
  6. 邮件MIME格式分析
  7. LINUX下如何重启动网络服务
  8. DPDK:不仅是加速
  9. sql中添加唯一索引(非主键)
  10. Django开发密码管理表实例【附源码】
  11. matlab取商,MATLAB-MTSP 遗传算法解决5种多旅行商问题(mtsp)的matlab程序 联合开发网 - pudn.com...
  12. POJ 1392 Ouroboros Snake
  13. 你认为困难的实时光线追踪,NVIDIA却做到了……
  14. restapi是什么意思_简单理解什么是REST和RESTful
  15. smartfusion2芯片的一些特性
  16. wordpress仿站实战教程:wordpress调用函数记录
  17. 九大行星 神话 英文
  18. 2021-2027全球与中国汽车电动四分之一回转执行器市场现状及未来发展趋势
  19. 智慧军营日常办公管理系统软件
  20. 牛逼!36岁阿里 P8宣布退休! 六年实现“财务自由”,裸辞环游世界!

热门文章

  1. 自己动手制作一门语言(1)波罗语
  2. java 时间的相关转换操作
  3. Linux的实际操作:时间日期类的实用指令(date cal)
  4. oracle关闭rs,Oracle 关闭(shutdown immediate)时hang住
  5. 傲梦python笔试题_python笔试题
  6. problem a: 简单的整数排序_python里的排序
  7. 去超市一定要存包吗_去东京一定要去的富士河口湖
  8. ghelper失效_Ghelper账号+网易云音乐领黑胶会员35天
  9. 【学习笔记】MOOC 数学文化赏析 笔记【补档】
  10. 【LeetCode笔记】198. 打家劫舍(Java、动态规划)