

bidirectional -- If "True", becomes a bidirectional LSTM.
        Default: "False"

proj_size -- If "> 0", will use LSTM with projections of
    corresponding size. Default: 0



Inputs: input, (h_0, c_0)
      * input: tensor of shape (L, H_{in}) for unbatched input,
        (L, N, H_{in}) when "batch_first=False" or (N, L, H_{in}) when
        "batch_first=True" containing the features of the input
        sequence.  The input can also be a packed variable length
        sequence. See "torch.nn.utils.rnn.pack_padded_sequence()" or
        "torch.nn.utils.rnn.pack_sequence()" for details.
  * **h_0**: tensor of shape (D * \text{num\_layers}, H_{out}) for
    unbatched input or (D * \text{num\_layers}, N, H_{out})
    containing the initial hidden state for each element in the
    input sequence. Defaults to zeros if (h_0, c_0) is not
    provided.

  * **c_0**: tensor of shape (D * \text{num\_layers}, H_{cell})
