class_docstr: Batched entropy model model which implements Universal Quantization.
  
  In contrast to the base class, which uses rounding for quantization, here
  "quantization" is performed additive uniform noise, which is implemented with
  Universal Quantization.
  
  This is described in Sec. 3.2. in the paper
  > "Universally Quantized Neural Compression"<br />
  > Eirikur Agustsson & Lucas Theis<br />
  > https://arxiv.org/abs/2006.09952
class_docstr_tok: ["Batched","entropy","model","model","which","implements","Universal","Quantization",".","In","contrast","to","the","base","class",",","which","uses","rounding","for","quantization",",","here","''","quantization","''","is","performed","additive","uniform","noise",",","which","is","implemented","with","Universal","Quantization",".","This","is","described","in","Sec",".","3.2.","in","the","paper",">","``","Universally","Quantized","Neural","Compression","''","<","br","\/",">",">","Eirikur","Agustsson","&","Lucas","Theis","<","br","\/",">",">","https",":","\/\/arxiv.org\/abs\/2006.09952"]
docstr: Decompresses a tensor.
  
  Reconstructs the quantized tensor from bit strings produced by `compress()`.
  It is necessary to provide a part of the output shape in `broadcast_shape`.
  
  Args:
    strings: `tf.Tensor` containing the compressed bit strings.
    broadcast_shape: Iterable of ints. The part of the output tensor shape
      between the shape of `strings` on the left and `self.prior_shape` on the
      right. This must match the shape of the input to `compress()`.
  
  Returns:
    A `tf.Tensor` of shape `strings.shape + broadcast_shape +
    self.prior_shape`.
docstr_tok: ["Decompresses","a","tensor",".","Reconstructs","the","quantized","tensor","from","bit","strings","produced","by","`","compress","(",")","`",".","It","is","necessary","to","provide","a","part","of","the","output","shape","in","`","broadcast_shape","`",".","Args",":","strings",":","`","tf.Tensor","`","containing","the","compressed","bit","strings",".","broadcast_shape",":","Iterable","of","ints",".","The","part","of","the","output","tensor","shape","between","the","shape","of","`","strings","`","on","the","left","and","`","self.prior_shape","`","on","the","right",".","This","must","match","the","shape","of","the","input","to","`","compress","(",")","`",".","Returns",":","A","`","tf.Tensor","`","of","shape","`","strings.shape","+","broadcast_shape","+","self.prior_shape","`","."]
code: def decompress(self, strings, broadcast_shape):
      """Decompresses a tensor.
  
      Reconstructs the quantized tensor from bit strings produced by `compress()`.
      It is necessary to provide a part of the output shape in `broadcast_shape`.
  
      Args:
        strings: `tf.Tensor` containing the compressed bit strings.
        broadcast_shape: Iterable of ints. The part of the output tensor shape
          between the shape of `strings` on the left and `self.prior_shape` on the
          right. This must match the shape of the input to `compress()`.
  
      Returns:
        A `tf.Tensor` of shape `strings.shape + broadcast_shape +
        self.prior_shape`.
      """
      strings = tf.convert_to_tensor(strings, dtype=tf.string)
      broadcast_shape = tf.convert_to_tensor(
          broadcast_shape, dtype=tf.int32
      )
      decode_shape = tf.concat(
          [broadcast_shape, self.prior_shape_tensor], 0
      )
      output_shape = tf.concat([tf.shape(strings), decode_shape], 0)
      indexes, offset = self._compute_indexes_and_offset(
          broadcast_shape
      )
      handle = gen_ops.create_range_decoder(strings, self.cdf)
      decode_indexes = tf.broadcast_to(indexes, output_shape)
      handle, symbols = gen_ops.entropy_decode_index(
          handle, decode_indexes, decode_shape, self.cdf_offset.dtype
      )
      sanity = gen_ops.entropy_decode_finalize(handle)
      if self.decode_sanity_check:
          with tf.control_dependencies(
              [
                  tf.debugging.assert_equal(
                      sanity, True, message="Sanity check failed."
                  )
              ]
          ):
              symbols = tf.identity(symbols)
      symbols += tf.gather(self.cdf_offset, indexes)
      outputs = tf.cast(symbols, self.bottleneck_dtype)
      return outputs + offset
  
imports: import functools
  import tensorflow
  from tensorflow_compression.python.entropy_models import continuous_base
  from tensorflow_compression.python.ops import gen_ops
  from tensorflow_compression.python.ops import math_ops
label_desc: Use image node_id 7 for calling the UniversalBatchedEntropyModel obj's underlying member method code with example usage: obj.decompress(strings, broadcast_shape) and returns: unknown