一、RNN原理

RNN的目的使用来处理序列数据。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的。
序列数据往往前后时刻是相关的,因此用RNN。
在这里插入图片描述
RNN特点
1、权值共享,图中的W全是相同的,U和V也一样。
2、每一个输入值都只与它本身的那条路线建立权连接,不会和别的神经元连接。
在这里插入图片描述

  • 前向传播
    s t = t a n h ( W s t − 1 + U x t ) s_t=tanh(Ws_{t-1}+Ux_t) st=tanh(Wst1+Uxt)
    y ^ t = o t = S o f t m a x ( V s t ) \widehat{y}_t=o_t=Softmax(Vs_t) y t=ot=Softmax(Vst)
    交叉熵损失函数:
    在这里插入图片描述

  • 反向传播
    在这里插入图片描述

应用
在这里插入图片描述
多层网络、双向网络结构
在这里插入图片描述
在这里插入图片描述
RNN缺点
容易出现梯度消失或者梯度爆炸的问题(BP算法和长时间依赖造成的). 注意: 这里的梯度消失(U的特征值小于1,反向传播 U n − k U^{n-k} Unk会越来越小)和BP的不一样,这里主要指由于时间过长而造成记忆值较小的现象.
在这里插入图片描述

二、LSTM

LSTM(long short-term memory)。长短期记忆网络是RNN的一种变体,RNN由于梯度消失的原因只能有短期记忆(如下图),LSTM网络通过精妙的门控制将加法运算带入网络中,一定程度上解决了梯度消失的问题。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结
在这里插入图片描述
LSTM变种

  • 1)、Peephole connection
    在这里插入图片描述
  • 2)、耦合忘记门
    在这里插入图片描述
  • 3)、GRU
    它将忘记门和输入门合并成为一个单一的更新门, 同时合并了数据单元状态和隐藏状态, 使得模型结构比之于LSTM更为简单.
    在这里插入图片描述

三、Word2Vec

word2vec也叫word embeddings,中文名“词向量”,作用就是将自然语言中的字词转为计算机可以理解的稠密向量
在这里插入图片描述
总结
在这里插入图片描述
Word2Vec特点
在这里插入图片描述

编辑:从损失函数的角度看word2vec
word2vec模型深度解析

在这里插入图片描述

四、LSTM示例

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐