class_docstr: Input feeding based decoder.
  
  See :class:`~onmt.decoders.decoder.RNNDecoderBase` for options.
  
  Based around the input feeding approach from
  "Effective Approaches to Attention-based Neural Machine Translation"
  :cite:`Luong2015`
class_docstr_tok: ["Input","feeding","based","decoder",".","See",":","class",":","`","~onmt.decoders.decoder.RNNDecoderBase","`","for","options",".","Based","around","the","input","feeding","approach","from","''","Effective","Approaches","to","Attention-based","Neural","Machine","Translation","''",":","cite",":","`","Luong2015","`"]
code: def _build_rnn(
      self, rnn_type, input_size, hidden_size, num_layers, dropout
  ):
      assert rnn_type != "SRU", (
          "SRU doesn't support input feed! " "Please set -input_feed 0!"
      )
      stacked_cell = StackedLSTM if rnn_type == "LSTM" else StackedGRU
      return stacked_cell(num_layers, input_size, hidden_size, dropout)
  
imports: import torch
  import torch.nn
  from onmt.modules.stacked_rnn import StackedLSTM, StackedGRU
  from onmt.modules import context_gate_factory, GlobalAttention
  from onmt.utils.rnn_factory import rnn_factory
label_desc: Use image node_id 2 for calling the InputFeedRNNDecoder obj's underlying member method code with example usage: obj._build_rnn(rnn_type, input_size, hidden_size, num_layers, dropout) and returns: stacked_cell