【深度学习 自然语言处理】10分钟读懂 NLP模型框架 Encoder-Decoder 和 Seq2Seq

无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。人工智能教程

本篇文章将会带领大家了解什么是NLP模型当中的encoder-decoder和seq2seq。

一、什么是 Encoder-Decoder ?
在这里插入图片描述
1、Encoder-Decoder 模型主要是 NLP 领域里的概念。它并不特指某种具体的算法,而是一类算法的统称。Encoder-Decoder 算是一个通用的框架,在这个框架下可以使用不同的算法来解决不同的任务。

Encoder-Decoder 这个框架很好的诠释了机器学习的核心思路:将现实问题转化为数学问题,通过求解数学问题,从而解决现实问题。Encoder 又称作编码器。它的作用就是将现实问题转化为数学问题。
在这里插入图片描述

Decoder 又称作解码器,他的作用是:求解数学问题,并转化为现实世界的解决方案。

在这里插入图片描述

把 2 个环节连接起来,用通用的图来表达则是下面的样子:
在这里插入图片描述

值得注意的是:
1、缺点:不论输入和输出的长度是什么,中间的「向量 c」 长度都是固定的
2、根据不同的任务可以选择不同的编码器和解码器,可以是RNN,或者变体LSTM,GRU

只要是符合上面的框架,都可以统称为 Encoder-Decoder 模型。说到 Encoder-Decoder 模型就经常提到一个名词—— Seq2Seq。

二、什么是Seq2Seq?

Seq2Seq(是 Sequence-to-sequence 的缩写),就如字面意思,输入一个序列,输出另一个序列。这种结构最重要的地方在于输入序列和输出序列的长度是可变的。Seq2Seq 属于 Encoder-Decoder 的大范畴。

三、Encoder-Decoder 有哪些应用?

1、文字到文字,如机器翻译,对话机器人,文章摘要,代码补全。
2、音频到文字,如语音识别。
3、图片到文字,图像描述生成。

四、Encoder-Decoder 缺点解决方式

最大的缺点是:当输入信息太长时,会丢失掉一些信息。就好比将一张 800X800 像素的图片压缩成 100KB,看上去还比较清晰。再将一张 3000X3000 像素的图片也压缩到 100KB,看上去就模糊了。
那么如何解决这种信息丢失的问题呢。
Attention 便是最佳利器。

Attention 机制就是为了解决「信息过长,信息丢失」的问题。

Attention 模型的特点是 Eecoder 不再将整个输入序列编码为固定长度的中间向量 C ,而是编码成一个向量的序列。引入了 Attention 的 Encoder-Decoder 模型如下图:

在这里插入图片描述
这样,在产生每一个输出的时候,都能够做到充分利用输入序列携带的信息。而且这种方法在翻译任务中取得了非常不错的成果。

举个简单的例子,假设解码器的输出与编码器的输入、的关系较大,那么编码得到的向量就会更多的保存和的信息,同理得到其它的编码向量。因此,Attention机制的核心就是编码向量的计算,假设我们的编码器和解码器均使用的是循环神经网络,计算过程如图8所示。

在这里插入图片描述

我们以第一个编码向量的计算为例,首先用解码器的初始状态分别和编码器中每个时间步的输出计算相似度,得到输出,再通过一个softmax运算将转换成概率值,最后由公式计算得到编码向量。接下来再利用解码器中神经网络的输出计算编码向量,以此类推,直到解码过程结束。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东华果汁哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值