Transformer的Decoder的输入输出都是什么

目录

1 疑问:Transformer的Decoder的输入输出都是什么

2 推理时Transformer的Decoder的输入输出

2.1 推理过程中的Decoder输入输出

2.2 整体右移一位

3 训练时Decoder的输入

参考文献:


1 疑问:Transformer的Decoder的输入输出都是什么

几乎所有介绍transformer的文章中都有下面这个图

但是,右下角这里为什么把outputs给输入进去了,还有为什么有个shifted right,在网上看了下一些资料,简单整理一下,以后自己忘了就翻一下这篇博客笔记。

2 推理时Transformer的Decoder的输入输出

2.1 推理过程中的Decoder输入输出

假如是一个翻译过程,要将我爱你中国翻译成I love China.

  • 输入:我爱中国
  • 输出: I Love China

具体decoder的执行步骤是:

Time Step 1

    • 初始输入: 起始符</s> + Positional Encoding(位置编码)
    • 中间输入:(我爱中国)Encoder Embedding
    • 最终输出:产生预测“I”

Time Step 2

    • 初始输入:起始符</s> + “I”+ Positonal Encoding
    • 中间输入:(我爱中国)Encoder Embedding
    • 最终输出:产生预测“Love”

Time Step 3

    • 初始输入:起始符</s> + “I”+ “Love”+ Positonal Encoding
    • 中间输入:(我爱中国)Encoder Embedding
    • 最终输出:产生预测“China”

 

2.2 整体右移一位

在图片的右下角可以看到有个shitfed right,对Outputs有Shifted Right操作。

Shifted Right 实质上是给输出添加起始符/结束符,方便预测第一个Token/结束预测过程。

正常的输出序列位置关系如下:

  • 0-"I"
  • 1-"Love"
  • 2-"China"

但在执行的过程中,我们在初始输出中添加了起始符</s>,相当于将输出整体右移一位(Shifted Right),所以输出序列变成如下情况:

  • 0-</s>【起始符】
  • 1-“I”
  • 2-“Love”
  • 3-“China”

这样我们就可以通过起始符</s>预测“I”,也就是通过起始符预测实际的第一个输出。

3 训练时Decoder的输入

训练时由于知道所有的输出,所以不需要等t-1个单词预测完了之后才去预测t个单词,训练时候是并行的,

训练时,decoder的并行计算是指 翻译第i+1个单词无需等待第i个单词的输出,因为训练时知道所有训练数输入数据的真实标签值,无需等待,可并行运算。
比如,翻译: 我有一只猫 ==> I have a cat
decoder input: Encoder input(我有一只猫) + start [---I have a cat /end--- masked]
output ==> I
decoder input: Encoder input(我有一只猫) + start I [---have a cat /end--- masked]
output ==> have
decoder input: Encoder input(我有一只猫) + start I have[---a cat /end--- masked]
output ==> a
decoder input: Encoder input(我有一只猫) + start I have a[---cat /end--- masked]
output ==> cat
decoder input: Encoder input(我有一只猫) + start I have a cat[---/end--- masked]
output ==> end
上述训练数据的decoder过程 可并行计算

参考文献:

哪位大神讲解一下Transformer的Decoder的输入输出都是什么?能解释一下每个部分都是什么? - 知乎

NLP Transformer的Decoder的输入输出都是什么?每个部分都是什么? NLP中的encoder和decoder的输入是什么?_transformer decoder的输入-CSDN博客

自然语言处理Transformer模型最详细讲解(图解版)-阿里云开发者社区

简单之美 | Transformer 模型架构详解 

GPT中的Transformer架构以及Transformer 中的注意力机制-CSDN博客

The Illustrated Transformer【译】-CSDN博客

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

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/820692.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小型燃气站3D可视化:打造安全高效的燃气新时代

随着科技的不断进步&#xff0c;越来越多的行业开始融入3D可视化技术&#xff0c;燃气行业也不例外。 小型燃气站作为城市燃气供应的重要节点&#xff0c;其安全性和运行效率至关重要。传统的燃气站管理方式往往依赖于人工巡检和纸质记录&#xff0c;这种方式不仅效率低下&…

【数据结构】树与二叉树、树与森林部分习题以及算法设计例题 2

目录 【数据结构】树与二叉树、树与森林部分习题以及算法设计例题一、交换二叉树每个结点的左右孩子Swap 函数&#xff08;先序遍历&#xff09;&#xff1a;Swap 函数&#xff08;中序遍历&#xff09; 不可行&#xff1a;Swap 函数&#xff08;后序遍历&#xff09;&#xff…

授权协议OAuth 2.0之JWT

写在前面 本文看下JWT相关内容。 1&#xff1a;为什么需要JWT OAuth2.0规范中并没有规定access_token使用什么样的格式&#xff0c;只要求满足&#xff0c;不连续性&#xff0c;不可猜测性&#xff0c;不可重复性就可以了&#xff0c;所以我们在生成accest_token的时候就比较…

格雷希尔G80L-T系列大口径快速连接器,在汽车膨胀水箱的气密性测试密封方案

副水箱也有人称作膨胀水箱&#xff0c;是汽车散热系统的一个重要组成部分&#xff0c;当水箱里面的温度过高的时候就会产生一定的压力&#xff0c;而副水箱可以根据热胀冷缩来帮助水箱和发动机排出去多余的水&#xff0c;起到一个调节的作用&#xff0c;副水箱由PP/PE塑料注塑而…

spring高级篇(一)

1、ApplicationContext与BeanFactory BeanFactory是ApplicationContext的父级接口&#xff1a;&#xff08;citlaltu查看类关系图&#xff09; 在springboot的启动类中&#xff0c;我们通过SpringApplication.run方法拿到的是继承了ApplicationContext的ConfigurableApplicatio…

Qt使用miniblink第三方浏览器模块

文章目录 一、前言二、miniblink简介三、miniblink使用四、运行效果五、工程结构 一、前言 本文取自刘典武大师&#xff1a;Qt编写地图综合应用58-兼容多浏览器内核 用Qt做项目过程中&#xff0c;遇到需要用到浏览器控件的项目&#xff0c;可能都会绕不开一个问题&#xff0c;那…

【Web】VS Code 插件

专栏文章索引&#xff1a;Web 有问题可私聊&#xff1a;QQ&#xff1a;3375119339 目录 一、安装步骤 二、插件 1.Chinese (Simplified) (简体中文) 2.open in browser 3.vscode-icons 4.Live Server 5.Live Server Preview 6.翻译(英汉词典) 一、安装步骤 点击 “扩…

创纪录的里程碑!光镊阵列捕获逾6,000中性原子,量子计算再达新高

论文链接&#xff1a; https://arxiv.org/abs/2403.12021 2024年3月18日&#xff0c;研究人员成功开发出一种大规模光镊阵列&#xff0c;能够在12,000个位点上捕获超过6,100个中性原子&#xff0c;同时在几个关键性能指标上达到新的高度&#xff1a; 1&#xff09;相干时间达到…

新零售门店、商品、会员管理指标体系总览

新零售&#xff0c;旨在打破传统零售业的边界&#xff0c;引入先进科技和数字化手段&#xff0c;通过整合线上线下渠道&#xff0c;全面提升用户体验&#xff0c;并实现更智能、高效、个性化的零售运营模式。这一模式不仅仅关注销售产品&#xff0c;更注重构建全方位的购物生态…

《中医临床诊疗术语》数据库

最新版的《中医临床诊疗术语》于2023年3月17日由国家中医药管理局提出的&#xff0c;由国家市场监督管理总局和国家标准化管理委员会共同发布。新版的修订是为落实相关政策文件要求&#xff0c;推进中医医疗服务规范化、标准化管理&#xff0c;提高中医医疗服务标准化水平和管理…

asyncio异步编程

参考视频&#xff1a;02 协程_哔哩哔哩_bilibili 1.协程&#xff1a;&#xff08;不是计算机中真实存在的&#xff0c;人为创造出的概念&#xff09;&#xff0c;也可称为微线程。 本质是用一个线程在一段代码中来会切换游走的线程&#xff0c;是一种用户态内的上下文切换技术…

中科驭数:DPU是构建高效智算中心基础设施的必选项

4 月 15 日&#xff0c;在江苏省未来网络创新研究院、网络通信与安全紫金山实验室举办的“2024智算网络技术与应用创新峰会”上&#xff0c;中科驭数作为DPU算力基础设施领军企业&#xff0c;受邀出席本次峰会。中科驭数产品运营部副总经理曹辉先生在《基于DPU的高效智算中心算…

OpenCV与AI深度学习 | 2024年AI初学者需要掌握的热门技能有哪些?

本文来源公众号“OpenCV与AI深度学习”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;2024年AI初学者需要掌握的热门技能有哪些&#xff1f; 0 导 读 本文主要介绍2024年AI初学者需要掌握的热门技能。 1 前 言 人工智能无疑是技…

基于java+springboot+vue实现的智慧党建系统(文末源码+Lw+ppt)23-58

摘 要 当今社会进入了科技进步、经济社会快速发展的新时代。国际信息和学术交流也不断加强&#xff0c;计算机技术对经济社会发展和人民生活改善的影响也日益突出&#xff0c;人类的生存和思考方式也产生了变化。传统智慧党建管理采取了人工的管理方法&#xff0c;但这种管…

openGauss学习笔记-264 openGauss性能调优-TPCC性能调优测试指导-BIOS配置

文章目录 openGauss学习笔记-264 openGauss性能调优-TPCC性能调优测试指导-BIOS配置264.1 恢复BIOS出厂设置264.2 修改相关BIOS设置264.3 重启操作系统 openGauss学习笔记-264 openGauss性能调优-TPCC性能调优测试指导-BIOS配置 本章节主要介绍openGauss数据库内核基于鲲鹏服务…

BTI功能验证与异常解析

BTI分支目标识别精讲与实践系列 思考 1、什么是代码重用攻击&#xff1f;什么是ROP攻击&#xff1f;区别与联系&#xff1f; 2、什么是JOP攻击&#xff1f;间接分支跳转指令&#xff1f; 3、JOP攻击的缓解技术&#xff1f;控制流完整性保护&#xff1f; 4、BTI下的JOP如何…

【MATLAB源码-第53期】m代码基于粒子群算法(PSO)的三维路径规划,显示最优路径和适应度曲线。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 粒子群算法&#xff08;Particle Swarm Optimization&#xff0c;简称PSO&#xff09;是一种模拟鸟群觅食行为的启发式优化方法。以下是其详细描述&#xff1a; 基本思想&#xff1a; 鸟群在寻找食物时&#xff0c;每只鸟都…

【开发篇】十三、JVM基础参数设置与垃圾回收器的选择

文章目录 1、-Xmx 和 –Xms2、-XX:MaxMetaspaceSize 和 –XX:MetaspaceSize3、-Xss4、不建议改的参数5、其他参数6、选择GC回收器的调试思路7、CMS的并发模式失败现象的解决8、调优案例 GC问题解决方式&#xff1a; 优化JVM基础参数&#xff0c;避免频繁Full GC减少对象的产生…

ADB的基本语法及常用命令

学习网址 ADB命令的基本语法如下&#xff1a; adb [-d|-e|-s <serialNumber>] <command> 如果有多个设备/模拟器连接&#xff0c;则需要为命令指定目标设备。 参数及含义如下&#xff1a; 常用命令如下&#xff1a; 1. 启动ADB服务 adb start-server 2. 停止…

JavaScript入门--数组

JavaScript入门--数组 前言数组的操作1、在数组的尾部添加元素2、删除数组尾部的元素&#xff0c;也就是最后一个元素3、删除头部第一个元素4、在数组的前面添加元素 小案例5、数组的翻转6、数组的排序7、数组的合并8、数组的切片 前言 JS中的数组类似于python中的列表&#x…