class_docstr: Class for composing individual encoding stages.
  
  This class provides functionality for arbitrarily composing individual
  encoding stages (implementations of `EncodingStageInterface` or
  `AdaptiveEncodingStageInterface`) into a tree, where an output `Tensor` of an
  encoding stage can be further encoded by another encoding stage.
  
  The interface is similar to that of `AdaptiveEncodingStageInterface`, with the
  additional methods `decode_before_sum` and `decode_after_sum`. These methods
  split the decoding functionality to two parts, based on commutativity with
  summation.
  
  Similar to the `AdaptiveEncodingStageInterface`, the methods are designed to
  be functional transformations. That means, for instance, that the
  `initial_state` and `update_state` methods do not modify any underlying state.
  Rather, the user of the `Encoder` class is responsible for storing any values
  if necessary, and providing them back to appropriate methods of this class.
docstr: Decodes the encoded representation.
  
  Args:
    encoded_tensors: A dictionary representing the encoded value. The
      structure needs to be the corresponding return structure of the `encode`
      method.
    decode_params: A dictionary containing the parameters needed for the
      decoding. The structure needs to be the corresponding return structure
      of the `get_params` method.
    shape: A dictionary with the input shapes provided to the `encode` methods
      of individual encoding stages. The structure needs to be the
      corresponding return structure of the `encode` method.
    name: `string`, name of the operation.
  
  Returns:
    A single decoded `Tensor`.
docstr_tok: ["Decodes","the","encoded","representation",".","Args",":","encoded_tensors",":","A","dictionary","representing","the","encoded","value",".","The","structure","needs","to","be","the","corresponding","return","structure","of","the","`","encode","`","method",".","decode_params",":","A","dictionary","containing","the","parameters","needed","for","the","decoding",".","The","structure","needs","to","be","the","corresponding","return","structure","of","the","`","get_params","`","method",".","shape",":","A","dictionary","with","the","input","shapes","provided","to","the","`","encode","`","methods","of","individual","encoding","stages",".","The","structure","needs","to","be","the","corresponding","return","structure","of","the","`","encode","`","method",".","name",":","`","string","`",",","name","of","the","operation",".","Returns",":","A","single","decoded","`","Tensor","`","."]
code: def decode(self, encoded_tensors, decode_params, shape, name=None):
      """Decodes the encoded representation.
  
      Args:
        encoded_tensors: A dictionary representing the encoded value. The
          structure needs to be the corresponding return structure of the `encode`
          method.
        decode_params: A dictionary containing the parameters needed for the
          decoding. The structure needs to be the corresponding return structure
          of the `get_params` method.
        shape: A dictionary with the input shapes provided to the `encode` methods
          of individual encoding stages. The structure needs to be the
          corresponding return structure of the `encode` method.
        name: `string`, name of the operation.
  
      Returns:
        A single decoded `Tensor`.
      """
      values = (
          tf.nest.flatten(shape)
          + tf.nest.flatten(decode_params)
          + tf.nest.flatten(encoded_tensors)
      )
      with tf.compat.v1.name_scope(name, "encoder_decode", values):
          # Calling _decode_before_sum_impl with force_decode=True will decode the
          # entire tree, regardless of potential commutativity with sum.
          return self._decode_before_sum_impl(
              encoded_tensors, decode_params, shape, force_decode=True
          )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import six
  import tensorflow
  from tensorflow_model_optimization.python.core.internal.tensor_encoding.core import encoding_stage
  from tensorflow_model_optimization.python.core.internal.tensor_encoding.utils import py_utils
label_desc: Use image node_id 14 for calling the Encoder obj's underlying member method code with example usage: obj.decode(encoded_tensors, decode_params, shape, name) and returns: self