递归神经网络_RNN、LSTM、Word2Vec
一、RNN原理
RNN的目的使用来处理序列数据。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的。
序列数据往往前后时刻是相关的,因此用RNN。
RNN特点
1、权值共享,图中的W全是相同的,U和V也一样。
2、每一个输入值都只与它本身的那条路线建立权连接,不会和别的神经元连接。
-
前向传播
交叉熵损失函数: -
反向传播
应用
多层网络、双向网络结构
RNN缺点
容易出现梯度消失或者梯度爆炸的问题(BP算法和长时间依赖造成的). 注意: 这里的梯度消失(U的特征值小于1,反向传播会越来越小)和BP的不一样,这里主要指由于时间过长而造成记忆值较小的现象.
二、LSTM
LSTM(long short-term memory)。长短期记忆网络是RNN的一种变体,RNN由于梯度消失的原因只能有短期记忆(如下图),LSTM网络通过精妙的门控制将加法运算带入网络中,一定程度上解决了梯度消失的问题。
总结
LSTM变种
- 1)、Peephole connection
- 2)、耦合忘记门
- 3)、GRU
它将忘记门和输入门合并成为一个单一的更新门, 同时合并了数据单元状态和隐藏状态, 使得模型结构比之于LSTM更为简单.
三、Word2Vec
word2vec也叫word embeddings,中文名“词向量”,作用就是将自然语言中的字词转为计算机可以理解的稠密向量
总结
Word2Vec特点