View source on GitHub |
Long short-term memory unit (LSTM) recurrent network cell.
Inherits From: RNNCell
, Layer
, Layer
, Module
tf.compat.v1.nn.rnn_cell.LSTMCell(
num_units,
use_peepholes=False,
cell_clip=None,
initializer=None,
num_proj=None,
proj_clip=None,
num_unit_shards=None,
num_proj_shards=None,
forget_bias=1.0,
state_is_tuple=True,
activation=None,
reuse=None,
name=None,
dtype=None,
**kwargs
)
The default non-peephole implementation is based on (Gers et al., 1999). The peephole implementation is based on (Sak et al., 2014).
The class uses optional peep-hole connections, optional cell clipping, and an optional projection layer.
Note that this cell is not optimized for performance. Please use
tf.contrib.cudnn_rnn.CudnnLSTM
for better performance on GPU, or
tf.contrib.rnn.LSTMBlockCell
and tf.contrib.rnn.LSTMBlockFusedCell
for
better performance on CPU.
References:
Long short-term memory recurrent neural network architectures for large
scale acoustic modeling:
Sak et al., 2014
(pdf)
Learning to forget:
Gers et al., 1999
(pdf)
Long Short-Term Memory:
Hochreiter et al., 1997
(pdf)
Methods
apply
apply(
*args, **kwargs
)
get_initial_state
get_initial_state(
inputs=None, batch_size=None, dtype=None
)
get_losses_for
get_losses_for(
inputs
)
Retrieves losses relevant to a specific set of inputs.
Args | |
---|---|
inputs
|
Input tensor or list/tuple of input tensors. |
Returns | |
---|---|
List of loss tensors of the layer that depend on inputs .
|
get_updates_for
get_updates_for(
inputs
)
Retrieves updates relevant to a specific set of inputs.
Args | |
---|---|
inputs
|
Input tensor or list/tuple of input tensors. |
Returns | |
---|---|
List of update ops of the layer that depend on inputs .
|
zero_state
zero_state(
batch_size, dtype
)
Return zero-filled state tensor(s).
Args | |
---|---|
batch_size
|
int, float, or unit Tensor representing the batch size. |
dtype
|
the data type to use for the state. |
Returns | |
---|---|
If state_size is an int or TensorShape, then the return value is a
N-D tensor of shape [batch_size, state_size] filled with zeros.
If |