RNN架构解析

  1. RNN 的作用:
    因为RNN结构能够很好利用序列之间的关系, 因此针对自然界具有连续性的输入序列, 如人类的语言, 语音等进行很好的处理, 广泛应用于NLP领域的各项任务, 如文本分类, 情感分析, 意图识别, 机器翻译等.
  2. RNN的分类
    按照输入和输出:
    N vs N - RNN
    N vs 1 - RNN
    1 vs N - RNN
    N vs M - RNN(它由编码器和解码器两部分组成, 两者的内部结构都是某类RNN, 它也被称为seq2seq架构)

按照内部构造进行分类:
传统RNN
LSTM
Bi-LSTM
GRU
Bi-GRU
3. LSTM模型
(1)内部结构和公式
RNN架构解析_第1张图片
双向LSTM
RNN架构解析_第2张图片

(2)pythorch中LSTM的使用

RNN架构解析_第3张图片

(3)优缺点
优点:
LSTM的门结构能够有效减缓长序列问题中可能出现的梯度消失或爆炸, 虽 然并不能杜绝这种现象, 但在更长的序列问题上表现优于传统RNN.
缺点:
由于内部结构相对较复杂, 因此训练效率在同等算力下较传统RNN低很多.

  1. GRU模型
    (1)内部结构和公式
    是在LSTM中将遗忘门和输入们进行了合并RNN架构解析_第4张图片(2)pytorch中的GRU的使用
    RNN架构解析_第5张图片
    (3)优缺点
    RNN架构解析_第6张图片
  2. 注意力机制
    (1)什么是注意力机制
    1)注意力:
    我们观察事物时,之所以能够快速判断一种事物(当然允许判断是错误的), 是因为我们大脑能够很快把注意力放在事物最具有辨识度的部分从而作出判断,而并非是从头到尾的观察一遍事物后,才能有判断结果. 正是基于这样的理论,就产生了注意力机制.
    2)注意力机制:
    注意力机制是注意力计算规则能够应用的深度学习网络的载体, 同时包括一些必要的全连接层以及相关张量处理, 使其与应用网络融为一体. 使用自注意力计算规则的注意力机制称为自注意力机制.
    (2)注意力机制的作用
    在解码器端的注意力机制: 能够根据模型目标有效的聚焦编码器的输出结果, 当其作为解码器的输入时提升效果. 改善以往编码器输出是单一定长张量, 无法存储过多信息的情况.
    在编码器端的注意力机制: 主要解决表征问题, 相当于特征提取过程, 得到输入的注意力表示. 一般使用自注意力(self-attention).

参考文档:http://121.199.45.168:8002/1/#_10

你可能感兴趣的:(神经网络)