当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.raw_ops.BlockLSTMV2用法及代码示例


计算所有时间步的 LSTM 单元前向传播。

用法

tf.raw_ops.BlockLSTMV2(
    seq_len_max, x, cs_prev, h_prev, w, wci, wcf, wco, b, cell_clip=0,
    use_peephole=False, name=None
)

参数

  • seq_len_max Tensor 类型为 int64 。此输入实际使用的最大时间长度。超出此长度的输出用零填充。
  • x 一个Tensor。必须是以下类型之一:half , float32。输入到 LSTM 的序列,形状 (timelen, batch_size, num_inputs)。
  • cs_prev 一个Tensor。必须与 x 具有相同的类型。初始细胞状态的值。
  • h_prev 一个Tensor。必须与 x 具有相同的类型。单元的初始输出(用于窥视孔)。
  • w 一个Tensor。必须与 x 具有相同的类型。权重矩阵。
  • wci 一个Tensor。必须与 x 具有相同的类型。输入门窥孔连接的权重矩阵。
  • wcf 一个Tensor。必须与 x 具有相同的类型。遗忘门窥视孔连接的权重矩阵。
  • wco 一个Tensor。必须与 x 具有相同的类型。输出门窥视孔连接的权重矩阵。
  • b 一个Tensor。必须与 x 具有相同的类型。偏置向量。
  • cell_clip 可选的 float 。默认为 0 。将 'cs' 值剪切到的值。
  • use_peephole 可选的 bool 。默认为 False 。是否使用窥视孔砝码。
  • name 操作的名称(可选)。

返回

  • Tensor 对象的元组(i、cs、f、o、ci、co、h)。
  • i 一个Tensor。具有与 x 相同的类型。
  • cs 一个Tensor。具有与 x 相同的类型。
  • f 一个Tensor。具有与 x 相同的类型。
  • o 一个Tensor。具有与 x 相同的类型。
  • ci 一个Tensor。具有与 x 相同的类型。
  • co 一个Tensor。具有与 x 相同的类型。
  • h 一个Tensor。具有与 x 相同的类型。

这相当于在循环中应用 LSTMBlockCell,如下所示:

for x1 in unpack(x):
  i1, cs1, f1, o1, ci1, co1, h1 = LSTMBlock(
    x1, cs_prev, h_prev, w, wci, wcf, wco, b)
  cs_prev = cs1
  h_prev = h1
  i.append(i1)
  cs.append(cs1)
  f.append(f1)
  o.append(o1)
  ci.append(ci1)
  co.append(co1)
  h.append(h1)
return pack(i), pack(cs), pack(f), pack(o), pack(ci), pack(ch), pack(h)

Note that unlike LSTMBlockCell (and BlockLSTM) which uses ICFO gate layout,
this op uses IFCO. So in order for the following snippet to be equivalent
all gate-related outputs should be reordered.

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.raw_ops.BlockLSTMV2。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。