class_docstr: Network head that produces a categorical distribution and value.
class_docstr_tok: ["Network","head","that","produces","a","categorical","distribution","and","value","."]
code: def __call__(self, inputs: jnp.ndarray):
      logits = self._logit_layer(inputs)
      value = jnp.squeeze(self._value_layer(inputs), axis=-1)
      return (tfd.Categorical(logits=logits), value)
  
imports: from typing import Any, List, Optional, Sequence, Union, Callable
  import chex
  import haiku
  import jax
  import jax.numpy
  import numpy
  import tensorflow_probability
  import tensorflow_probability.substrates.jax
label_desc: Use image node_id 2 for calling the CategoricalValueHead obj's underlying member method code with example usage: obj.__call__(inputs) and returns: tfd,  value