序列模型基础学习

序列模型简介

常见有很多序列问题,如语音识别,金融上的,机器翻译,情感识别,计算机视觉,自然与然处理NLP等等很多。其中自然语言处理的输入输出基本上都是序列,序列问题是自然语言处理最本质的问题。

1. 序列模型类型

序列模型:就是输入输出均为序列数据的模型,序列模型将输入序列数据转换为目标序列数据。
一对多,多对一,部分多对多,完全多对多
在这里插入图片描述
在片描述
在这里插入图片描述

1. 经典的seq2seq模型

seq2seq是序列问题中一个非常重要的模型,很多的序列问题都可以用seq2seq来解决,比如说机器翻译、语音转文字、图像标注、文本总结等等。seq2seq基本框架还适用于图像压缩,超分辨率等计算机视觉的问题。

该模型就是多对多类型的(编码-解码模型)
在这里插入图片描述
通过encoder对源语言(输入)进行编码得到fixed length的上下文向量(content vector)c,然后在从c恢复出要翻译的目标语言(输出)。
基于CNN的seq2seq:
在这里插入图片描述
基于LSTM:
在这里插入图片描述

RNN优点:

  1. Model of choice for learning variable-length representations(可处理变长句子)
  2. Natural fit for sentences of pixels(可按单词为单位进行处理)

RNN缺点:

  1. Sequential computationsinhibits parallelization(无法并行计算)
  2. No explicit modeling of long and short range dependencies(对于长短期的记忆没有明显的表征建模,我理解应该是有定性无定量的意思吧)
  3. We want to model hierarchy(我理解:模型不是层次的,而是摊开的)
  4. Transmitting local and global information through one bottleneck[hidden state](所有的输入信息都是压缩在了上下文向量c中)

CNN优点:

  1. Trivial to parallelize(per layer)(非常适合并行化处理)
  2. Exploits local dependencies(很好的捕捉到局部依赖,我理解:卷积操作就是一个个step挪动的,每个细节都会cover到)
  3. interaction distance’between positions linear or logarithmic Long-distance dependencies require many layers(例如下图中的例子,每个卷积只会捕捉到3个词的信息,如果词相隔较远,则需要在后面的conv层才能捕捉到它们的相关信息)

常见的基于CNN的机器翻译模型:
在这里插入图片描述

2.注意力机制Attention

带有注意力的循环神经网络 RNNs With Attention
Removes bottleneck of Encoder-Decoder Model
Provides context for given decoder step
在这里插入图片描述

在这里插入图片描述

总结:

  • 如何实现并行计算同时缩短依赖距离:采用自注意力机制
  • 如何像CNN一样考虑到多通道信息:采用多头注意力
  • 自注意力机制损失了位置信息,如何补偿:位置嵌入
  • 后面的层中位置信息消散:残差连接
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值