class_docstr: Generates a tfp.distribution.Categorical by predicting logits.
code: def _output_distribution_spec(
      self, output_shape, sample_spec, network_name
  ):
      input_param_spec = {
          "logits": tensor_spec.TensorSpec(
              shape=output_shape,
              dtype=tf.float32,
              name=network_name + "_logits",
          )
      }
  
      return distribution_spec.DistributionSpec(
          tfp.distributions.Categorical,
          input_param_spec,
          sample_spec=sample_spec,
          dtype=sample_spec.dtype,
      )
  
file_path: agents/tf_agents/networks/categorical_projection_network.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import gin
  import numpy
  import tensorflow
  import tensorflow_probability
  from tf_agents.networks import network
  from tf_agents.networks import utils
  from tf_agents.specs import distribution_spec
  from tf_agents.specs import tensor_spec
label_desc: Use image node_id 2 for calling the CategoricalProjectionNetwork obj's underlying member method code with example usage: obj._output_distribution_spec(output_shape, sample_spec, network_name) and returns: distribution_spec