code: def __init__(
      self,
      agent_parameters: AgentParameters,
      spaces: SpacesDefinition,
      network_name: str,
      head_idx: int = 0,
      loss_weight: float = 1.0,
      is_local: bool = True,
      activation_function: str = "relu",
      dense_layer=Dense,
      output_bias_initializer=None,
  ):
      super().__init__(
          agent_parameters,
          spaces,
          network_name,
          head_idx,
          loss_weight,
          is_local,
          activation_function,
          dense_layer=dense_layer,
      )
      self.name = "q_values_head"
      if isinstance(self.spaces.action, BoxActionSpace):
          self.num_actions = (
              self.spaces.action.shape
          )  # continuous actions
      else:
          raise ValueError(
              "SACQHead does not support action spaces of type: {class_name}".format(
                  class_name=self.spaces.action.__class__.__name__,
              )
          )
      self.return_type = QActionStateValue
      # extract the topology from the SACQHeadParameters
      self.network_layers_sizes = (
          agent_parameters.network_wrappers["q"]
          .heads_parameters[0]
          .network_layers_sizes
      )
      self.output_bias_initializer = output_bias_initializer
  
file_path: coach/rl_coach/architectures/tensorflow_components/heads/sac_q_head.py
imports: import tensorflow
  from rl_coach.architectures.tensorflow_components.layers import Dense
  from rl_coach.architectures.tensorflow_components.heads.head import Head
  from rl_coach.base_parameters import AgentParameters
  from rl_coach.core_types import QActionStateValue
  from rl_coach.spaces import SpacesDefinition, BoxActionSpace
label_desc: Use image node_id 1 to create a new SACQHead object from inherited base classes: Head with example: obj = SACQHead(agent_parameters, spaces, network_name, head_idx, loss_weight, is_local, activation_function, dense_layer, output_bias_initializer)