tf.raw_ops.LSTMBlockCell

Computes the LSTM cell forward propagation for 1 time step.

This implementation uses 1 weight matrix and 1 bias vector, and there's an optional peephole connection.

This kernel op implements the following mathematical equations:

xh = [x, h_prev]
[i, f, ci, o] = xh * w + b
f = f + forget_bias

if not use_peephole:
  wci = wcf = wco = 0

i = sigmoid(cs_prev * wci + i)
f = sigmoid(cs_prev * wcf + f)
ci = tanh(ci)

cs = ci .* i + cs_prev .* f
cs = clip(cs, cell_clip)

o = sigmoid(cs * wco + o)
co = tanh(cs)
h = co .* o

xA Tensor. Must be one of the following types: half, float32. The input to the LSTM cell, shape (batch_size, num_inputs).
cs_prevA Tensor. Must have the same type as x. Value of the cell state at previous time step.
h_prevA Tensor. Must have the same type as x. Output of the previous cell at previous time step.
wA Tensor. Must have the same type as x. The weight matrix.
wciA Tensor. Must have the same type as x. The weight matrix for input gate peephole connection.
wcfA Tensor. Must have the same type as x. The weight matrix for forget gate peephole connection.
wcoA Tensor. Must have the same type as x. The weight matrix for output gate peephole connection.
bA Tensor. Must have the same type as x. The bias vector.
forget_biasAn optional float. Defaults to 1. The forget gate bias.
cell_clipAn optional float. Defaults to 3. Value to clip the 'cs' value to.
use_peepholeAn optional bool. Defaults to False. Whether to use peephole weights.
nameA name for the operation (optional).

A tuple of Tensor objects (i, cs, f, o, ci, co, h).
iA Tensor. Has the same type as x.
csA Tensor. Has the same type as x.
fA Tensor. Has the same type as x.
oA Tensor. Has the same type as x.
ciA Tensor. Has the same type as x.
coA Tensor. Has the same type as x.
hA Tensor. Has the same type as x.