深度学习(BOT方向) 学习笔记(1) Sequence To Sequence 学习

本文介绍了Seq2Seq模型,一种用于处理序列到序列任务的方法,例如机器翻译和对话系统。该模型采用RNNEncoder-Decoder框架,通过编码器将输入序列转换为固定长度的向量,然后解码器根据该向量生成输出序列。实验结果表明,该模型在英语到法语的翻译任务上取得了接近最佳水平的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、 Seq 2 Seq是什么

从一个Sequence做某些工作映射到(to)另外一个Sequence的任务 
具体结合实际应用来说,如下的连个任务都可以看做是Seq2Seq的任务“ 
1、SMT翻译任务(源语言的语句 -> 目标语言的语句) 
2、对话任务(上下文语句->应答语句) 
这里写图片描述 
诸如上图,其实也就是一个示例(从ABC 这个Sequence 映射到 WXYZ)

2、RNN Encoder-Decoder 框架

通常来说,在深度学习中,应对这个类型的问题,有一个经典的框架被称为Encoder-Decoder: 
所谓的Encoder,是将输入的Sequence编码成为一个固定长度的向量 。
所谓的Decoder,是根据背景Vector(即Encoder最后输出的向量)生成一个Token序列,作为输出的Sequence 
这两部分Sequence的长度可以不一致。

这里写图片描述

最经典的Encoder-Decoder框架,用的就是RNN,即Encoder是一个RNN,而Decoder也是一个RNN。 
这里面才有极大似然去估计,让输入的Seq经过Encoder得到中间向量v,再映射到Decoder的概率最大。

这个Encoder-Decoder的框架很经典,里面用的RNN(LSTM)也是很经典的。关于Encoder-Decoder的详细解释可以阅读这里:http://blog.youkuaiyun.com/malefactor/article/details/51124732

而本篇文章的Sequence2Sequence的模型就是这个RNN Encoder-Decoder了,关于他的公式,其实都是基本的RNN公式,文章里讲的也不多,有需要的可以直接去阅读原文。


实验

实验部分,其采用了WMT14提供的评测任务,任务要求是英语到法语的翻译任务 
1. 训练的数据集有12M的句子,包含348M法语词,和304英语词 
2. 作者选择了最常用的160000个英文词和80000个法语词构造词典,初次以外的词语,都表示为UNK 
3. 训练目标如下,S是原语言序列,T是目标语言序列,使得如下式子的概率最大化。并且训练后的翻译过程也是如第二个式子所示 
这里写图片描述

评测的标准是一个叫做BLEU的成绩,越高越好的道理就好了。 
而结论就是,这个模型能够十分接近WMT14的最高分(36.5 37)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值