class_docstr: Defines the SVGDecoder model.
code: def lstm_cell(self, hparams, train):
      keep_prob = 1.0 - hparams.rec_dropout * tf.to_float(train)
  
      recurrent_dropout_cell = contrib_rnn.LayerNormBasicLSTMCell(
          hparams.hidden_size,
          layer_norm=hparams.layer_norm,
          dropout_keep_prob=keep_prob,
      )
  
      if hparams.ff_dropout:
          return rnn.DropoutWrapper(
              recurrent_dropout_cell, input_keep_prob=keep_prob
          )
      return recurrent_dropout_cell
  
imports: import copy
  from magenta.contrib import rnn
  from magenta.models.svg_vae import image_vae
  from magenta.models.svg_vae import svg_decoder_loss
  from tensor2tensor.layers import common_hparams
  from tensor2tensor.layers import common_layers
  from tensor2tensor.utils import registry
  from tensor2tensor.utils import t2t_model
  from tensor2tensor.utils import trainer_lib
  import tensorflow.compat.v1
  from tensorflow.compat.v1 import estimator
label_desc: Use image node_id 6 for calling the SVGDecoder obj's underlying member method code with example usage: obj.lstm_cell(hparams, train) and returns: recurrent_dropout_cell, rnn