RNN,LSTM,GRU,Seq2Seq,Seq2Seqwithattention,transformer

回顾并总结一下RNN,LSTM,GRU,Seq2Seq,Seq2Seqwithattention,transformer的关系的差别

1.RNN:

之前的博客专门总结过,这里提一下它的缺点:

梯度消失/爆炸;只有记忆没有遗忘,数据多了之后抓不到重点;必须逐个单词处理,不能并行处理。

2.LSTM:引入了cell state,就是长时记忆

有三个门,forget/input/output(门的结构:sigmoid+对应点积乘法)

引入了长时记忆,缓解了RNN的梯度消失和长期依赖问题

缺点:句子过长时,还是容易遗忘较远的内容;必须逐个单词处理,不能并行

3.GRU

LSTM的简化版,只有两个门,reset和update,reset控制遗忘和记忆的权重,update表示历史信息遗忘程度。输出也取消了长时记忆cell state,只输出ht

最终ht=(1-zt)*ht-1+zt*h^

优点:参数量比LSTM少,计算更快,更容易训练

缺点:同LSTM

以上这些都无法处理输入一段序列产生不一定长度新序列的任务,所以出现了seq2seq:

由encoder和decoder组成,其中encoder和decoder都是RNN/LSTM/GRU

缺点:句子太长就会产生遗忘,精度会下降,因为每个单词都没有考虑语义信息

又出现了seq2seqwithattention:

在生成每个单词时,从原始句子中提取生成该单词时的最重要信息。

也是由encoder和decoder组成,其中encoder和decoder都是RNN/LSTM/GRU。

只不过encoder传给decoder的不只是第T时刻(最后一个时刻)的hidden state,还有前面所有的hidden state,用所有的hidden state * softmax(hidden state) + 第T时刻的hidden state 作为decoder的输入

缺点:不能并行处理

然后最牛的transformer就诞生了:完全没有用RNN/LSTM/GRU,直接进行并行处理,先提取每个单词在句子中的权重softmax(Q*K/根号下dk),再对V进行加权求和,考虑到了每个句子中单词与单词之间的联系。

由于用的不是RNN,不能利用单词之间的顺序关系,所以需要加入position emb,并且position emb维度要和单词本身的emb相同。

其中还有残差块防止网络退化,让网络专注于当前和之前的差异,再加上LayerNormalization加速收敛、缓解梯度饱和。

在decoder的cross attention层保证了每一个产生的单词都能考虑到encoder的所有信息(Q来自decoder,K和V来自encoder)

PS:decoder的自注意力机制层是带mask的,因为后面的单词还没产生所以不考虑后面的

相关推荐
神经美学_茂森1 天前
Jurgen提出的Highway Networks:LSTM时间维方法应用到深度维
人工智能·rnn·lstm
羊小猪~~1 天前
基于RNN模型的心脏病预测,提供tensorflow和pytorch实现
pytorch·python·rnn·深度学习·神经网络·机器学习·tensorflow
Jackilina_Stone1 天前
【HUAWEI】HCIP-AI-MindSpore Developer V1.0 | 第一章 神经网络基础( 3 循环神经网络 ) | 学习笔记
人工智能·笔记·rnn·神经网络·hcip·huawei
羊小猪~~2 天前
基于RNN模型的心脏病预测(tensorflow实现)
人工智能·python·rnn·深度学习·神经网络·机器学习·tensorflow
猫头不能躺2 天前
【pytorch】现代循环神经网络-2
人工智能·pytorch·rnn
跟德姆(dom)一起学AI3 天前
0基础跟德姆(dom)一起学AI 自然语言处理08-认识RNN模型
人工智能·python·rnn·深度学习·神经网络·自然语言处理
【建模先锋】4 天前
涨点创新 | 基于 Informer-LSTM的并行预测模型
人工智能·rnn·深度学习·lstm·informer·风速预测·时间序列预测模型
简简单单做算法5 天前
基于GA遗传优化TCN-LSTM时间卷积神经网络时间序列预测算法matlab仿真
机器学习·matlab·lstm·tcn-lstm·时间卷积神经网络·ga遗传优化
猫头不能躺6 天前
【pytorch】循环神经网络
人工智能·pytorch·rnn
机器学习之心6 天前
CPO-CNN-GRU-Attention、CNN-GRU-Attention、CPO-CNN-GRU、CNN-GRU四模型多变量时序预测对比
人工智能·cnn·gru·cnn-gru·cpo-cnn-gru