# tf.contrib.rnn.TimeReversedFusedRNN

<br />

|---|
| [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/contrib/rnn/python/ops/fused_rnn_cell.py#L133-L184) |

This is an adaptor to time-reverse a FusedRNNCell.

Inherits From: [`FusedRNNCell`](https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/rnn/FusedRNNCell)

    tf.contrib.rnn.TimeReversedFusedRNN(
        cell
    )

For example,

    cell = tf.compat.v1.nn.rnn_cell.BasicRNNCell(10)
    fw_lstm = tf.contrib.rnn.FusedRNNCellAdaptor(cell, use_dynamic_rnn=True)
    bw_lstm = tf.contrib.rnn.TimeReversedFusedRNN(fw_lstm)
    fw_out, fw_state = fw_lstm(inputs)
    bw_out, bw_state = bw_lstm(inputs)

## Methods

### `__call__`

[View source](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/contrib/rnn/python/ops/fused_rnn_cell.py#L170-L184)

    __call__(
        inputs, initial_state=None, dtype=None, sequence_length=None, scope=None
    )

Run this fused RNN on inputs, starting from the given state.

<br />

<br />

<br />

| Args ||
|---|---|
| `inputs` | `3-D` tensor with shape `[time_len x batch_size x input_size]` or a list of `time_len` tensors of shape `[batch_size x input_size]`. |
| `initial_state` | either a tensor with shape `[batch_size x state_size]` or a tuple with shapes `[batch_size x s] for s in state_size`, if the cell takes tuples. If this is not provided, the cell is expected to create a zero initial state of type `dtype`. |
| `dtype` | The data type for the initial state and expected output. Required if `initial_state` is not provided or RNN state has a heterogeneous dtype. |
| `sequence_length` | Specifies the length of each sequence in inputs. An `int32` or `int64` vector (tensor) size `[batch_size]`, values in `[0, time_len)`. Defaults to `time_len` for each element. |
| `scope` | `VariableScope` or `string` for the created subgraph; defaults to class name. |

<br />

<br />

<br />

| Returns ||
|---|---|
| A pair containing: <br /> - Output: A `3-D` tensor of shape `[time_len x batch_size x output_size]` or a list of `time_len` tensors of shape `[batch_size x output_size]`, to match the type of the `inputs`. - Final state: Either a single `2-D` tensor, or a tuple of tensors matching the arity and shapes of `initial_state`. ||

<br />