LSTM详解

LSTM详解

LSTM(Long Short Term Memory),即一种特殊的RNN形式,主要用来解决长期依赖问题,结构图如下:
在这里插入图片描述
可以看到它主要由三个门和一个细胞单元组成。这些门其实都是一种非线性变换,主要目的就是决定有多少信息能够通过。

遗忘门

决定上一时刻的单元状态Ct-1中有多少信息保留到当前时刻Ct
公式:
在这里插入图片描述
在这里插入图片描述

输入门

决定当前输入有多少信息保存到单元状态Ct
公式:
在这里插入图片描述
在这里插入图片描述
在此处还有一个细胞单元,即当前时刻的新细胞单元
公式:
在这里插入图片描述

最终的当前时刻的细胞单元由输入门和遗忘门共同决定,遗忘门负责决定有多少旧信息要保留下来,输入门决定有多少新信息要保存下来。
公式:
在这里插入图片描述
在这里插入图片描述

输出门:
决定有多少信息可以被输出。
公式:
在这里插入图片描述
在这里插入图片描述
当前时刻的隐层状态,由输出门和当前细胞状态共同决定。
在这里插入图片描述

代码实现

# LSTM
def lstm_cell(embeding_dim,hidden_dim,h_0,c_0,x_0):
    # Weights and Bias for input and hidden tensor
    # input
    Wi = tf.Variable(tf.random_normal(shape=[embeding_dim, hidden_dim], stddev=0.1))
    Ui = tf.Variable(tf.random_norma
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值