lstm
API属性:声明式编程(静态图)专用API
( input, init_h, init_c, max_len, hidden_size, num_layers, dropout_prob=0.0, is_bidirec=False, is_test=False, name=None, default_initializer=None, seed=-1 ) [源代码]
注解
该OP仅支持 GPU 设备运行
该OP实现了 LSTM,即 Long-Short Term Memory(长短期记忆)运算 - 。
该OP的实现不包括 diagonal/peephole 连接,参见 Gers, F. A., & Schmidhuber, J. (2000)。 如果需要使用 peephole 连接方法,请使用 。
该OP对于序列中每一个时间步的计算公式如下:
公式中的概念信息如下:
-
表示时间步
的输入
-
表示时间步
的 hidden 状态
-
分别表示前一个时间步的 hidden 和 cell 状态
-
表示候选的 cell 状态
表示 weight (例如,
是在计算 input gate
时,对输入
做线性变换的 weight)
表示 bias (例如,
是 input gate 的 bias)
表示 gate 的非线性激活函数,默认为 sigmoid
-
表示矩阵的 Hadamard product,即对两个维度相同的矩阵,将相同位置的元素相乘,得到另一个维度相同的矩阵
rnn_out:LSTM hidden的输出结果的Tensor,数据类型与input一致,维度为
。如果 设置为True,则维度为
last_c:LSTM最后一步的cell状态的Tensor,数据类型与input一致,维度为
。如果 设置为True,则维度为