当前位置:   article > 正文

【转】RNN、LSTM、Transformer、BERT简介与区别_rnn lstm transformer bert

rnn lstm transformer bert

几者的主要参考文章: https://blog.csdn.net/weixin_41089007/article/details/96474760

RNN与LSTM的区别参考文章: https://blog.csdn.net/hfutdog/article/details/96479716

RNN和LSTM的区别如下:

  • RNN没有细胞状态;LSTM通过细胞状态记忆信息。
  • RNN激活函数只有tanh;LSTM通过输入门、遗忘门、输出门引入sigmoid函数并结合tanh函数,添加求和操作,减少梯度消失和梯度爆炸的可能性
  • RNN只能够处理短期依赖问题;LSTM既能够处理短期依赖问题,又能够处理长期依赖问题
  • 但是LSTM相对的运行时间较长

双向RNN和BERT
双向RNN与self attention layer 的共同点在于: 输入输出都是序列,且输出每个时间节点预测的向量都与输入的所有时间节点相关联;
最大的不同点在于双向RNN输出无法并行(当前时刻的输出与上一时刻的hidden state相关),而attention可以并行

LSTM与BERT

  • LSTM
    概述:
    lstm是代表性的rnn结构,rnn提出是为了解决时序的问题;典型的例子就是NLP中的句子理解,视频的内容理解;模型结构的设计保证输入顺序按照时序顺序对结果产生影响,当前时间步的输入是当前位置和上一个时间步的输出。

  • 优点:
    解决了dnn或者是bow词袋模型的问题,不能区分时序

  • 缺点:
    处理长文本的时候耗时较长,考虑到上下文,一般还采用双向rnn结构;模型效果上,对于长依赖问题效果不好,容易理解 经过很多个step的传递,信息会减弱

  • BERT

  • 概述
    bert通过注意力机制实现时序的理解,我认为精妙之处有两点,一点是位置编码融入向量表达,另外一点是就是注意力机制中的QKV矩阵了;残差网络防止网络过于复杂带来的过拟合。
    优点

  • 注意力机制,也就是每个位置相对另一个位置的权重是可以并行计算的,在计算资源足够的前提下比lstm会快很多;通过设计预训练任务,用海量无监督数据做预训练,模型效果更好

  • 缺点
    由于网络更加复杂,计算量相对lstm更大,训练收敛更慢

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
  

闽ICP备14008679号