赞
踩
几者的主要参考文章: https://blog.csdn.net/weixin_41089007/article/details/96474760
RNN与LSTM的区别参考文章: https://blog.csdn.net/hfutdog/article/details/96479716
RNN和LSTM的区别如下:
双向RNN和BERT:
双向RNN与self attention layer 的共同点在于: 输入输出都是序列,且输出每个时间节点预测的向量都与输入的所有时间节点相关联;
最大的不同点在于双向RNN输出无法并行(当前时刻的输出与上一时刻的hidden state相关),而attention可以并行
LSTM与BERT:
LSTM
概述:
lstm是代表性的rnn结构,rnn提出是为了解决时序的问题;典型的例子就是NLP中的句子理解,视频的内容理解;模型结构的设计保证输入顺序按照时序顺序对结果产生影响,当前时间步的输入是当前位置和上一个时间步的输出。
优点:
解决了dnn或者是bow词袋模型的问题,不能区分时序
缺点:
处理长文本的时候耗时较长,考虑到上下文,一般还采用双向rnn结构;模型效果上,对于长依赖问题效果不好,容易理解 经过很多个step的传递,信息会减弱
概述
bert通过注意力机制实现时序的理解,我认为精妙之处有两点,一点是位置编码融入向量表达,另外一点是就是注意力机制中的QKV矩阵了;残差网络防止网络过于复杂带来的过拟合。
优点
注意力机制,也就是每个位置相对另一个位置的权重是可以并行计算的,在计算资源足够的前提下比lstm会快很多;通过设计预训练任务,用海量无监督数据做预训练,模型效果更好
缺点
由于网络更加复杂,计算量相对lstm更大,训练收敛更慢
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。