LSTM cell结构的理解和计算
来源:互联网 发布:网络安全员 编辑:程序博客网 时间:2024/06/08 05:31
LSTM是传统RNN网络的扩展,其核心结构是其cell单元,网上LSTM的相关资料繁多,质量参差不齐,下面主要结合LSTM神经网络的详细推导和 Christopher Olah的blog两篇文章中的内容进行说明。主要介绍网络如何计算,为何这么算先不展开:)。前者一副图加上29个公式,简洁明了;后者娓娓道来,适合初学者。
首先是LSTM cell最常见的结构图:
这是变形的版本(找不到更清晰的版本了),其中输入门控制输入(新记忆)的输入幅度;遗忘门控制之前记忆状态的输入幅度;输出门控制最终记忆的输出幅度。图中的三角形其实就是乘法符号。
t时刻cell的Input:1.由当前输入Xt2.前一时刻cell的输出ht-13.前一时刻cell的状态ct-1(可以理解为计算ht-1过程中的中间值)t时刻cell的3个控制门Gate,值域[0,1](改进的GRU的cell将输入门和遗忘门合并为Update门):1.输入门it2.遗忘门ft3.输出门ot计算过程如下(请对照上面第二个结构图):step 1.1 输入门it step 1.2 及其控制的新记忆Ct波浪线:)(如下图)W是其对应的权重矩阵,b为偏置。黄色的框内是不同的激活函数。其实这两个运算可以等效为两层并行的神经网络。
step 1.3 遗忘门ft (控制对于之前输入记忆ct-1的遗忘程度)(如下图)其中,step1.1、1.2和1.3是可以并行计算的,输入都是当前输入Xt 和 前一时刻cell的输出ht-1
step 2 当前t时刻cell的状态Ct(由step 1计算的三个结果得到)
step 3 输出门Ot及其控制的t时刻cell的输出ht
step 4 信号xt通过ht的输出:
以上其实是lstm的前向传播过程,反向传播求解梯度及参数更新具体参考LSTM神经网络的详细推导
5 0
- LSTM cell结构的理解和计算
- LSTM cell结构的理解和计算
- LSTM的理解
- LSTM结构理解与python实现
- LSTM结构理解与python实现
- 计算cell的高度
- cell的高度计算
- lstm-结构
- 理解LSTM的资料Materials to understand LSTM — Medium
- tensorflow中对lstm及双向lstm的理解
- 理解LSTM
- 理解LSTM
- 理解LSTM
- LSTM理解
- LSTM理解
- LSTM理解
- 理解LSTM'
- LSTM梳理,理解,和keras实现
- Android 找不到拍照后图片文件
- liinux中压缩与解压命令
- 插入排序算法
- 前端基本技能——作图
- 根据EditText输入数据,下方TextView时时更新数据状态
- LSTM cell结构的理解和计算
- Go1.8从文件结尾读取文件
- 漫步数理统计二十五——正态分布
- stm32 SysTick定时器常见问题和实现延时
- malloc()与 alloc()区别
- 1056. 组合数的和
- 2.6 interface
- GPUImageForAndroid
- 一些前端小工具