创建由 RNNCell cell
指定的循环神经网络。 (已弃用)
用法
tf.compat.v1.nn.static_rnn(
cell, inputs, initial_state=None, dtype=None, sequence_length=None, scope=None
)
参数
-
cell
RNNCell 的一个实例。 -
inputs
一个长度为 T 的输入列表,每个输入都是一个形状为[batch_size, input_size]
的Tensor
或此类元素的嵌套元组。 -
initial_state
(可选)RNN 的初始状态。如果cell.state_size
是整数,则它必须是具有适当类型和形状的Tensor
[batch_size, cell.state_size]
。如果cell.state_size
是一个元组,这应该是一个具有形状[batch_size, s] for s in cell.state_size
的张量的元组。 -
dtype
(可选)初始状态和预期输出的数据类型。如果未提供 initial_state 或 RNN 状态具有异构 dtype,则为必需。 -
sequence_length
指定输入中每个序列的长度。一个 int32 或 int64 向量(张量)大小[batch_size]
,值在[0, T)
。 -
scope
创建的子图的变量范围;默认为"rnn"。
返回
-
一对(输出,状态),其中:
输出是一个长度为 T 的输出列表(每个输入一个),或这些元素的嵌套元组。
state 是最终状态
抛出
-
TypeError
如果cell
不是 RNNCell 的实例。 -
ValueError
如果inputs
是None
或空列表,或者无法通过形状推断从输入推断输入深度(列大小)。
警告:此函数已弃用。它将在未来的版本中删除。更新说明:请使用keras.layers.RNN(cell, unroll=True)
,相当于这个API
生成的最简单的 RNN 网络形式是:
state = cell.zero_state(...)
outputs = []
for input_ in inputs:
output, state = cell(input_, state)
outputs.append(output)
return (outputs, state)
但是,还有一些其他选项可用:
可以提供初始状态。如果提供了sequence_length向量,则进行动态计算。这种计算方法不会计算超过 minibatch 的最大序列长度的 RNN 步长(从而节省计算时间),并以示例的序列长度正确地将状态传播到最终状态输出。
执行的动态计算是,在时间 t
为批次行 b
,
(output, state)(b, t) =
(t >= sequence_length(b))
? (zeros(cell.output_size), states(b, sequence_length(b) - 1))
:cell(input(b, t), state(b, t - 1))
相关用法
- Python tf.compat.v1.nn.sufficient_statistics用法及代码示例
- Python tf.compat.v1.nn.separable_conv2d用法及代码示例
- Python tf.compat.v1.nn.safe_embedding_lookup_sparse用法及代码示例
- Python tf.compat.v1.nn.sampled_softmax_loss用法及代码示例
- Python tf.compat.v1.nn.sigmoid_cross_entropy_with_logits用法及代码示例
- Python tf.compat.v1.nn.dynamic_rnn用法及代码示例
- Python tf.compat.v1.nn.embedding_lookup_sparse用法及代码示例
- Python tf.compat.v1.nn.depthwise_conv2d_native用法及代码示例
- Python tf.compat.v1.nn.weighted_cross_entropy_with_logits用法及代码示例
- Python tf.compat.v1.nn.depthwise_conv2d用法及代码示例
- Python tf.compat.v1.nn.convolution用法及代码示例
- Python tf.compat.v1.nn.conv2d用法及代码示例
- Python tf.compat.v1.nn.nce_loss用法及代码示例
- Python tf.compat.v1.nn.pool用法及代码示例
- Python tf.compat.v1.nn.ctc_loss用法及代码示例
- Python tf.compat.v1.nn.rnn_cell.MultiRNNCell用法及代码示例
- Python tf.compat.v1.nn.erosion2d用法及代码示例
- Python tf.compat.v1.nn.raw_rnn用法及代码示例
- Python tf.compat.v1.nn.dilation2d用法及代码示例
- Python tf.compat.v1.distributions.Multinomial.stddev用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.nn.static_rnn。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。