【seq2seq】深入浅出讲解seq2seq神经网络模型
- 本文收录于《深入浅出讲解自然语言处理》专栏,此专栏聚焦于自然语言处理领域的各大经典算法,将持续更新,欢迎大家订阅!
- 个人主页:有梦想的程序星空
- 个人介绍:小编是人工智能领域硕士,全栈工程师,深耕Flask后端开发、数据挖掘、NLP、Android开发、自动化等领域,有较丰富的软件系统、人工智能算法服务的研究和开发经验。
- 如果文章对你有帮助,欢迎
关注
、点赞
、收藏
、订阅。
1.Seq2seq背景:
经典的循环神经网络模型的输入序列以及输出序列要求是等长的,然而在机器翻译中,如输入序列:“机器学习”,输出序列:“Machine Learning”,输入输出序列不等长,循环神经网络就不能满足这样的情况。
Seq2seq可以用来处理输入输出序列不等长的问题,是一种特殊的RNN模型。
2.Seq2seq概述:
Seq2seq是一种编码(Encoder)-解码(Decoder)的结构,输入和输出可以是不等长的序列。
Seq2seq包括三个部分:编码器,解码器,以及连接两者的固定大小的状态向量。Encoder通过学习输入,将其编码成一个固定大小的状态向量,然后将状态向量传给Decoder,Decoder再通过对状态向量的学习来进行输出。
3.Seq2seq 编码器(Encoder):
Encoder是一个RNN,也可以是LSTM、GRU等,接收的是每一个单词的词向量,和上一个时间点的隐藏状态。输出的是这个时间点的隐藏状态。其中激活函数可以是sigmoid、tanh、Relu、softmax等。
读完序列中每个单词后,会得到一个固定长度的语义向量。
4.Seq2seq解码器(Decoder):
Decoder是个RNN,也可以是LSTM、GRU等,将encoder得到的语义向量作为初始状态输入到Decoder的RNN中,得到输出序列。可以看到上一时刻的输出会作为当前时刻的输入,而且其中语义向量只作为初始状态参与运算,后面的运算都与语义向量无关。
decoder处理方式还有另外一种,就是语义向量参与了序列所有时刻的运算,上一时刻的输出仍然作为当前时刻的输入,但语义向量会参与所有时刻的运算。
解码器的输出通常有如下几种方法:
(1)贪婪:输出对应最大概率值的单词,计算代价低。
(2)采样:通过对众多概率值采样输出单词。
(3)集束搜索:是一种启发式的算法,提高多个预测创建一个可能结果的扩展树。
5.seq2seq的相关论文:
(1)原始的模型:https://arxiv.org/pdf/1406.1078.pdf,
题目为:Learning Phrase Representations using RNN Encoder–Decoder for Statistical Machine Translation,由cho在2014年提出。
(2)改进的模型:https://arxiv.org/pdf/1409.3215.pdf,
题目为:Sequence to Sequence Learning with Neural Networks。
(3)融入Attention机制的模型:https://arxiv.org/pdf/1409.0473.pdf,
题目为:NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE。
6.seq2seq的应用场景:
(1)机器翻译
(2)情感对话生成
(3)文本自动摘要
(4)图片自动描述
【seq2seq】深入浅出讲解seq2seq神经网络模型相关推荐
- 电气论文实现:通过电力光伏负荷预测讲解seq2seq翻译模型
通过电力光伏预测讲解seq2seq翻译模型 本文主要讲解seq2seq模型,而不是光伏预测.通过一个光伏预测算例简单感受下seq2seq模型.有代码.主要文字和代码共9页. 专栏解锁,是解锁后 ...
- 【神经网络】MP神经网络模型(附实例代码讲解)
MP神经网络模型 1.MP模型介绍 1.1 生物神经元 1.2 人工神经元 x1,x2,x3是与生物神经元中的树突相对应的输入. w1,w2,w3代表对应于突触的权重. 1.3 MP神经元模型 模型 ...
- 掌握神经网络模型的快捷方式
TensorFlow是Google基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理. Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,T ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- 神经网络模型训练简记(二)
神经网络模型训练简记(二) 内容简述 三.机器视觉网络模型分类及简介 3.2目标检测 3.2.1RCNN 3.2.2SPPNet 3.2.3Fast RCNN 3.2.4Faster RCNN 3.2 ...
- 深入浅出讲解神经网络的种类及举例说明
本文收录于<深入浅出讲解自然语言处理>专栏,此专栏聚焦于自然语言处理领域的各大经典算法,将持续更新,欢迎大家订阅! 个人主页:有梦想的程序星空 个人介绍:小编是人工智能领域硕士,全栈工程师 ...
- PyTorch | (4)神经网络模型搭建和参数优化
PyTorch | (1)初识PyTorch PyTorch | (2)PyTorch 入门-张量 PyTorch | (3)Tensor及其基本操作 PyTorch | (4)神经网络模型搭建和参数 ...
- 基于tensorflow的MNIST手写字识别(一)--白话卷积神经网络模型
一.卷积神经网络模型知识要点卷积卷积 1.卷积 2.池化 3.全连接 4.梯度下降法 5.softmax 本次就是用最简单的方法给大家讲解这些概念,因为具体的各种论文网上都有,连推导都有,所以本文主要 ...
- 深度神经网络模型压缩方法总结
新的卷积计算方法 这种是直接提出新的卷积计算方式,从而减少参数,达到压缩模型的效果,例如SqueezedNet,mobileNet 1. SqueezeNet: AlexNet-level accur ...
最新文章
- HP 服务器 iLO 远程控制软件 介绍
- doc es 中type_ES系列07:match_phrase与match_phrase_prefix query
- 2018-2020年Gartner战略科技发展趋势一览!
- (转载)Nutch 2.0 之 抓取流程简单分析
- 机器学习面试题合集Collection of Machine Learning Interview Questions
- Angular groupBy test
- 用杰克逊流式传输大型JSON文件– RxJava常见问题解答
- 使用Remix编写Solidity语言的小例子
- Js 怎么遍历json对象所有key及根据动态key获取值(根据key值获取相应的value值)...
- c语言机考答案,全国计算机等级考试C语言上机试题题库(内附答案)
- 小团队适合引入 Spring Cloud 微服务吗?
- PID算法原理 一图看懂PID的三个参数
- listview嵌套edittext,决解数据无法保存
- xss.haozi练习通关详解
- 海洋cms(海洋视频内容管理系统) v12.5 bulid220618
- 免费赠送20个帆布包和2个咖啡杯活动规则必看(会搜索+复制粘贴就行)
- 工业机器人 郝卫东_智能保安巡逻机器人论文
- 在安装虚拟机时,”intel vt-x 处于禁用状态“ 如何解决
- TensorFlow搭建CNN实现时间序列预测(风速预测)
- 联想lenovo sl700 240G sata ps3111主控+未知颗粒 掉盘,ps3111写保护开卡量产修复过程