本文适合有一定基础的同学翻阅,内容比较精炼,主要是用于复习。新手推荐:https://www.youtube.com/user/wsszju/videos
最简单的RNN
结构还是很简单的,左边是真实的RNN模型,右边是根据时序展开后的,便于理解,A是tanh函数:


simple RNN 与LSTM的对比:

LSTM最重要的设计是传输带,将过去的信息直接传入下一时刻,以避免梯度消失。
同时含有很多Gate:Forget Gate,Input Gate,Output Gate。
下图中,四个红框分别是Forget Gate,Input Gate,New values, Output Gate,其中New Values是tanh函数激活,其他为Sigmoid函数激活,所以一共有四个参数矩阵:

下面是使用keras实现一个简单的电影评论分类器,其中的LSTM也可换作RNN。设置LSTM只输出最后一个状态向量H,所以return_sequences=False,

关于参数量,四组参数,每组参数量相同,以New values为例,其w的size=shape(h) * [shape(h) + shape(x)] + shape(bias), 该例子中则是32 * [32+32]+32 = 2080:




本文深入解析简单RNN与LSTM的区别,重点在于LSTM的传输带和门控机制,以防止梯度消失。通过实例展示了如何使用Keras构建一个基于LSTM的电影评论分类器,并探讨了模型参数量的计算。适合有基础的学习者进行复习。

被折叠的 条评论
为什么被折叠?



