code: def _build_module(self, input_layer):
      # mean
      pre_activation_policy_values_mean = self.dense_layer(
          self.num_actions
      )(input_layer, name="fc_mean")
      policy_values_mean = batchnorm_activation_dropout(
          input_layer=pre_activation_policy_values_mean,
          batchnorm=self.batchnorm,
          activation_function=self.activation_function,
          dropout_rate=0,
          is_training=self.is_training,
          name="BatchnormActivationDropout_0",
      )[-1]
      self.policy_mean = tf.multiply(
          policy_values_mean, self.output_scale, name="output_mean"
      )
  
      if self.is_local:
          # add a squared penalty on the squared pre-activation features of the action
          if self.action_penalty and self.action_penalty != 0:
              self.regularizations += [
                  self.action_penalty
                  * tf.reduce_mean(
                      tf.square(pre_activation_policy_values_mean)
                  )
              ]
  
      self.output = [self.policy_mean]
  
file_path: coach/rl_coach/architectures/tensorflow_components/heads/ddpg_actor_head.py
imports: import tensorflow
  from rl_coach.architectures.tensorflow_components.layers import batchnorm_activation_dropout, Dense
  from rl_coach.architectures.tensorflow_components.heads.head import Head
  from rl_coach.base_parameters import AgentParameters
  from rl_coach.core_types import ActionProbabilities
  from rl_coach.spaces import SpacesDefinition
label_desc: Use image node_id 2 for calling the DDPGActor obj's underlying member method code with example usage: obj._build_module(input_layer) without return types