当前位置: 首页 > news >正文

transformer(下)

接下来是decoder

decoder其实有两种,接下来介绍的是autoregressive的decoder

以语音辨识为例子,机器收到一段声音讯号作为输入到encoder,此时输出就是一排vector,接下来就是decoder的运作,产生语音辨识的结果

首先先给他一段特殊的符号,代表开始,接下来decoder会吐出一个向量,这个向量和我们要识别的单位是一样的,以中文为例子,这个输出向量的size就是我们中文汉字的长度,不同语言输出的单位是不一样的,比如英文可以选择字母的长度(26个),也可以选择用英文单词,这个可能会比较多,每一个中文的字都会对应一个数值,得到向量之前会和做分类一样跑一个softmax,这个向量里面的分数是一个distribution,也就是他们的分数相加的结果是1,分数最高的中文字就是最终的输出,如下图

接下来第一个输出的向量结果这个汉字会当作decoder新的一个输入,表示成一个one-hot vector当作输入,根据两个输入得到一个输出,还是根据这个输出向量对于每一个字的分数,分数最高的那一个输出,接下来继续拿第二个输出当作第三个输入,这样反复下去,因为decoder自己的输出就是自己的输入,所以也可能看到错误的结果也有可能引发后续的一步错步步错,如下图

看一下decoder的内部结构,看一下transformer里面的,如下图

先把encoder和decoder放在一起比较,如下图

把中间的decoder盖起来,会发现encoder和decoder并没有那么大的差别,有一点区别就是这里的multi-head attention里面也加了一个masked,如下图

我们原来的self-attention每一个输出都需要看所有的输入来综合判断,如下图

但是变成masked之后,我们不会再看右边的输入来输出,即b1考虑a1,b2考虑a1,a2, b3考虑a1,a2,a3, b4考虑a1,a2,a3,a4,如下图

更具体一点就是在计算b2的时候,我们只能a2的query和a1以及a2的key去计算,如下图

那么为什么masked呢?

因为我们decoder的输入是一个一个的,输出也是一个一个的都是顺序的,和self-attention一次性输入输出不一样的,如下图

接下来,还有一个关键的问题,decoder必须自己决定自己输出的长度,如何才能正确的知道输出的长度,如下图

推文接龙,一个人说一个字,然后继续接,当有一个人冒险去推一个“断”的时候才会停下来,如下图

decoder要做的事情也是一样,要去推一个“断”,我们也要准备一个特殊的符号去作为一个断的符号,如下图

当decoder产生完机器学习的习之后就会自动产生end来暂停,如下图

接下来说一下non-autoregressive的model即NAT

不一样的是一次产生整个句子,比如一次投入四个begin,然后产生四个output,这四个output就是一个句子,一种可能的做法是告诉机器一个数字,然后机器根据这个数字产生相对应长度的句子,另一个做法是假设我们这次输出的句子不会超过三百个字,那么我们就一次性产生一个三百个字的句子,然后看这个句子里面哪个会产生end,end右侧的句子我们全部都不算输出,全部忽略

NAT的好处第一个是平行化,如果是AT,那么要做好多次的encoder,但是NAT一次就可以,所以时间上更快,另外一个好处就是比较能够控制他的输出的长度,以语音辨识为例子,那么NAT的decoder假设我们要想让model讲话快一点,那么我们可以把长度变成一半,如下图

可以看一下multi-modality

接下来说一下decoder和encoder是如何穿句子的,即我们刚才遮起来的,叫做cross attention,如下图

首先,encoder根据输入得到三个输出,然后decoder根据begin经过masked self-attention得到一个向量,然后把这个输出的向量乘一个矩阵做一个transform得到一个query,encoder都产生key,把query和k1,k2,k3相乘的到向量,a1',a2',a3',接下来,把a1',a2',a3'乘上v1,v2,v3,再相加得到v,这个v接下来会丢到fully-connected network,这个步骤就叫做cross attention,如下图

当然产生第一个中文字之后,接下里的运作是一样的,如下图

下面是一个实际文献的效果图,如下图

这个encoder和decoder都有很多层,原始paper里面无论那一层,都是encoder最后输出才是进入decoder,但其实不一定非要最后一层,这个可以去研究,如下图

最后,讲解训练的事情

http://www.jsqmd.com/news/361305/

相关文章:

  • AI商业化真相:技术的心在哭泣,老百姓在被收割
  • 2026年知名的礼品保温杯/大容量保温杯更新厂家选择指南哪家好 - 品牌宣传支持者
  • 智慧城市交通系统的设计与实现
  • 2026年评价高的co2气表/氩弧焊气表怎么选真实参考销售厂家参考 - 品牌宣传支持者
  • 2026广东最新猴头核雕/橄榄核尖厂商首选推荐弘法缘:深耕核雕十余载,弘法缘以专业与品质铸就信赖 - 品牌推荐2026
  • 2026年口碑好的烘干网/聚酯烘干网畅销厂家采购指南如何选 - 品牌宣传支持者
  • 我用AI一天开发一个App,2026年是“全民开发”元年?
  • 2026年知名的BOO模式智慧空压站/一级能效智慧空压站畅销厂家采购指南如何选 - 品牌宣传支持者
  • 基于PLC的电机伺服随动系统的开发与设计
  • 2026年成都波纹管直销厂家综合实力与联系指南 - 2026年企业推荐榜
  • 2026年2月安徽汽车租赁/长途包车/旅游客运/商务租车/租车企业可靠度竞争格局深度分析报告 - 2026年企业推荐榜
  • 银行柜面业务管理系统源码(Java+SpringBoot+Vue2)含万字详细设计文档与教学PPT
  • 政府项目时间系统选型中的“硬门槛”NTS-H-442002
  • 智慧光能追踪辅助系统
  • 2026年河南靠谱的驾校培训服务商厂家盘点,平舆驾校费用透明 - myqiye
  • 2026年质量好的河南美式变电站/新能源变电站口碑厂家汇总 - 品牌宣传支持者
  • Qlib量化投资实战教程:视频精讲+可运行源码+PDF文档|11章系统进阶课,理论直达实操
  • 2026最新品牌定位服务推荐!全国优质品牌定位机构权威榜单发布,专业助力品牌精准布局 - 品牌推荐2026
  • 2026年全国食品添加剂厂家权威榜单 合规适配多场景 助力食品生产提质增效 - 深度智识库
  • 分析海曙靠谱的名贵奢侈品回收电话,哪个口碑好 - 工业设备
  • 【期货量化策略】期货量化交易策略跨品种套利(Python量化)
  • LLM之RAG实战(五十九)| 基于MCP构建Agentic RAG教程(附代码) - 指南
  • 2026年比较好的特殊气体空气压缩机/低压空气压缩机口碑排行热门品牌推荐(实用) - 品牌宣传支持者
  • 【期货量化策略】期货量化交易策略统计套利(Python量化)
  • 实力强的特氟龙供应商怎么选,这些口碑品牌了解下 - 工业品牌热点
  • 2026年靠谱的隧道炉商用全自动款/隧道炉食品烘焙专用怎么联系供应商推荐 - 品牌宣传支持者
  • 2026年北京靠谱汽修学校推荐,解决附近哪里有汽修学校 - 工业推荐榜
  • 分析AI推广服务,唐山佐途科技推荐的性价比高吗? - 工业设备
  • Ubuntu系统下镜像构建问题
  • 【期货量化策略】期货量化交易策略事件驱动(Python量化)