编码器-解码器

机器翻译中,输入和输出的序列都是可变的。处理这种类型的输入输出,采取编码器-解码器的架构。编码器将输入的可变序列转化为定长的序列,再有解码器转变为可变的序列。该架构如下图所示:

seq2seq

使用两个循环神经网络来作为编码器和解码器,应用于seq2seq模型。为了连续生成输出序列的词元, 独立的循环神经网络解码器是基于输入序列的编码信息和输出序列已经看见的或者生成的词元来预测下一个词元。具体结果如下图所示:

其中特定的“<eos>”表示序列结束词元,一旦输出序列生成此词元,模型就会停止预测。特定的“<bos>”表示序列开始词元,它是解码器的输入序列的第一个词元。解码器的初始隐状态是编码器的最终的隐状态,并且编码器最终的隐状态在每一个时间步都作为解码器的输入序列的一部分。

束搜索

束搜索是介于贪心搜索和穷举法之间的方法,贪心搜索是在每时刻都选择当前概率最大的预测值,穷举是将所有可能的序列都进行查看,最后选择一个概率最大的预测值。束搜索只在第一个时间步,选择K个最大的预测值,之后的时间步里同贪心搜索一样选择概率最大的预测序列,最后将得到的预测序列进行比较,选择其中概率最大的。如下图所示:

设束宽位2,输出长度为2,候选输出序列有A、C、AB、CE、ABD、CED。最后,基于这六个序列(例如,丢弃包括“<eos>”和之后的部分),获得最终候选输出序列集合。 然后选择其中条件概率乘积最高的序列作为输出序列:

其中L是最终候选序列的长度, α通常设置为0.75。 因为一个较长的序列在上式的求和中会有更多的对数项, 因此分母中的用于惩罚长序列。贪心搜索可以看作是一种束宽为1的特殊类型的束搜索。通过灵活地选择束宽,束搜索可以在正确率和计算代价之间进行权衡。

10-编码器-解码器架构相关推荐

  1. 深度学习入门(六十四)循环神经网络——编码器-解码器架构

    深度学习入门(六十四)循环神经网络--编码器-解码器架构 前言 循环神经网络--编码器-解码器架构 课件 重新考察CNN 重新考察RNN 编码器-解码器架构 总结 教材 1 编码器 2 解码器 3 合 ...

  2. 编码器-解码器架构-读书笔记

    文章目录 1. Encoder-Decoder 架构图 2. Encoder_Decoder 代码 3. 小结 1. Encoder-Decoder 架构图 目标:通过编码器与解码器架构,我们可以将不 ...

  3. Encoder-Decoder -编码器解码器架构(RNN循环神经网络)

    文章目录 编码器-解码器架构 编码器 解码器 合并编码器和解码器 小结 编码器-解码器架构 正如我们之前所讨论的,机器翻译是序列转换模型的一个核心问题,其输入和输出都是长度可变的序列. 为了处理这种类 ...

  4. 编码器-解码器(seq2seq)

    文章目录 1.编码器解码器架构 1.1.概念 1.2.代码 1.2.1.编码器(Encoder) 1.2.2.解码器(Decoder) 1.2.3.合并编码器和解码器 2.seq2seq模型 2.1. ...

  5. 使用基于注意力的编码器-解码器实现医学图像描述

    来源:DeepHub IMBA 本文约8000字,建议阅读10+分钟 本文为你介绍使用计算机视觉和自然语言处理来为X 射线的图像生成文本描述. 什么是图像描述 图像描述是生成图像文本描述的过程.它使用 ...

  6. 【神经网络】MLP 编码器-解码器 注意力机制 残差连接

    [1] 多层感知机(MLP)   最典型的MLP包括包括三层:输入层.隐层和输出层,MLP神经网络不同层之间是全连接的(全连接的意思就是:上一层的任何一个神经元与下一层的所有神经元都有连接).   由 ...

  7. 机器翻译 MXNet(使用含注意力机制的编码器—解码器,即 Encoder编码器-Decoder解码器框架 + Attention注意力机制)

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) Encoder编码器-Decoder解码器框架 + Atten ...

  8. 采用编码器-解码器匹配语义分割的图像压缩

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 小白导读 论文是学术研究的精华和未来发展的明灯.小白决心每天为大家 ...

  9. RNN编码器-解码器

    读 Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation 论文的主 ...

  10. C#练习题答案: scytale的编码器/解码器(古斯巴达密码)【难度:3级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战

    scytale的编码器/解码器(古斯巴达密码)[难度:3级]: 答案1: using System; using System.Linq; using System.Text.RegularExpre ...

最新文章

  1. 程序员大厂不一定要进,算法必须要学!收藏89篇精选算法文章
  2. python常用导入函数及其他操作备忘录
  3. Linux -sed
  4. 题目 1885: [蓝桥杯][2017年第八届真题]分巧克力+二分
  5. 关于数据运营的一点小思考
  6. python读json文件太大github_GitHub上最火的开源项目是啥|JSON文件实战处理
  7. SpringCloud Alibaba - Nacos 作为配置中心 读取Properties配置信息
  8. 成都python数据分析师培训_python数据分析师
  9. 25个jQuery的编程小抄
  10. BCD码与十进制数间转换
  11. 箫演奏技巧符号大全图解
  12. 2022年版中国石油焦市场运行现状调研与前景动态分析报告
  13. format的几种用法
  14. python目标函数最大_python运筹优化(三):遗传算法和Geatpy使用实践
  15. echarts柱状图加上数量
  16. 一点思考 less interests more interest 选好一个行业慢慢积淀
  17. Cause: java.sql.SQLException: SQL String cannot be empty 解决方案
  18. onenote使用记录(1):新建与删除笔记本
  19. 体验高空跳伞,3DMark Sky Drive场景测试
  20. 深入分析JavaWeb Item44 -- Struts2开发核心之动作类Action

热门文章

  1. Qt4.8.2 模仿QQ右下角弹窗提示
  2. 35岁以前养成好习惯
  3. Facebook重提“元宇宙”:做游戏,本质还是做社交
  4. python字符串下标从0开始还是1_python字符串下标与切片及使用方法
  5. 打印墨水调钢笔墨水_如何通过更有效地打印节省现金,墨水和纸张
  6. 30岁小学毕业电工转java
  7. IDC预测:2019年全球物联网支出将达到7450亿美元
  8. 通过wine安装qq之后出现了不能输入的问题文件不能用
  9. Day01|Markdown语法学习(Typora软件)
  10. mysql的过程返回执行成功与失败_mysqli_query函数执行成功返回一个结果标识符,失败时返回false...